tech-pkg archive

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]

Re: Adding threading support to lang/sbcl



> Diffing:
>
>   --- A	2025-02-01 09:34:58.855746745 -0500
>   +++ B	2025-02-01 09:35:10.699120864 -0500
>   @@ -1,23 +1,23 @@
>    Finished running tests.
>    Status:
>   - Expected failure:   compiler-2.pure.lisp / (MAP-ALLOCATED-OBJECTS NO-CONSING)
>     Skipped (broken):   compiler.pure.lisp / FULL-WARNING-FOR-UNDEFINED-TYPE-IN-CL
>     Skipped (broken):   compiler.pure.lisp / SINGLE-WARNING-FOR-SINGLE-UNDEFINED-TYPE
>     Failure:            compiler.pure.lisp / REDUCING-CONSTANTS
>     Skipped (broken):   dynamic-extent.pure.lisp / STACK-ALLOCATED-VECTOR-CHECKS-OVERFLOW
>     Failure:            float.pure.lisp / (SCALE-FLOAT-OVERFLOW BUG-372)
>     Failure:            float.pure.lisp / (ADDITION-OVERFLOW BUG-372)
>     Failure:            float.pure.lisp / (ADDITION-OVERFLOW BUG-372 TAKE-2)
>     Expected failure:   hash.pure.lisp / SXHASH-ON-DISPLACED-STRING
>     Expected failure:   block-compile.impure.lisp / BLOCK-COMPILE-TOP-LEVEL-CLOSURES.SAME-ENVIRONMENT.LOCAL-CALLS
>   + Invalid exit status: compare-and-swap.impure.lisp
>     Expected failure:   compiler-2.impure.lisp / TOP-LEVEL-CLOSURE-SEPARATE-COMPONENT
>     Expected failure:   compiler-2.impure.lisp / TOP-LEVEL-CLOSURE-SEPARATE-COMPONENT.2
>   + Failure:            concurrent-syscalls.impure.lisp / (EXERCISING-CONCURRENT-SYSCALLS)
>     Expected failure:   full-eval.impure.lisp / INLINE-FUN-CAPTURES-DECL
>   + Invalid exit status: gc-threads.impure.lisp
>     Skipped (broken):   run-program.impure.lisp / (RUN-PROGRAM AUTOCLOSE-STREAMS)
>     Failure:            run-program.impure.lisp / (RUN-PROGRAM CLEAN-EXIT-AFTER-ENCODING-ERROR)
>     Failure:            run-program.impure.lisp / (RUN-PROGRAM STOP+CONTINUE)
>   - Failure:            run-program.impure.lisp / (RUN-PROGRAM STOP+CONTINUE POSIX-KILL)
>     Failure:            run-program.impure.lisp / (RUN-PROGRAM CHILD-FD-LEAK)
>   - Unexpected success: x86-64-codegen.impure.lisp / DISASSEMBLE-ALIEN-LINKAGE-TABLE-REF
>   - (103 tests skipped for this combination of platform and features)
>   + (31 tests skipped for this combination of platform and features)
>    test failed, expected 104 return code, got 1
>
>
> It seems like there are some issues either way.
>
> By moving to threads, 2 failures are resolved and 1 unexpected-success
> is withdrawn.  Plus there are three new failures.  But, there are 72 new
> tests run, which more or less implies 69 passing tests.
>
> I don't see this result as arguing that threading should not be turned
> on.  Only that sbcl isn't 100% right, either way, but not so badly that
> I'd expect it to be unusable.

It seems to be usable under my "normal" conditions. I haven't tried
a heavy load for the web server that I've tested it with but it seems
stable enough.


Home | Main Index | Thread Index | Old Index