freenode/#clasp - IRC Chatlog
Search
19:12:59
copec
Do you use a package with similar abilities as this drmeister: https://github.com/JuliaPlots/Makie.jl
19:15:47
shiho
got the error "Cannot find the external symbol *READ-CODE-HOOK* in #<PACKAGE CL-JUPYTER>"
22:13:16
drmeister
Do I need to write some tricky code with a thread queue or can I just start one thread for each toplevel form and wait for them to all join?
22:28:55
Shinmera
depends on what you're doing? Threads can be an expensive resource, and pooling is often a good idea.
22:32:09
drmeister
"sldb-quit called outside of sldb buffer" . I get that when I have an error in a thread.
22:45:24
drmeister
Special variable bindings and threads - do threads not inherit bindings from the current thread?
23:00:59
drmeister
bordeaux-threads:*default-special-bindings* - it's an alist of (symbol . value) that is bound at the start of the thread - I'll use that.
23:29:50
drmeister
The *default-special-bindings* won't work - because it evaluates in the thread - and the special variables will revert to their global values.
23:35:53
drmeister
Got it - global and lexical bindings are passed - but not locally bound special variable bindings.
2:57:32
drmeister
Bike: The parallel compile-file works. I have a little problem with asdf - it wants to generate object files in some cases. So multiple object files go to what? I'm trying a static archive.
2:58:02
Bike
what does parallel compilation have to do with it? doesn't the parallel compile file look the same from outside?
2:59:24
drmeister
Not quite. compile-file-parallel generates an object file for each top-level form. Then it links them together into a single entity.
3:00:33
drmeister
compile-file-parallel generates AST's for each top-level form in serial and then generates a thread for each AST to take it to either an object file or a bitcode file (currently just object files).
3:01:36
drmeister
Well, compile-file-serial will generate a single object file. I'm not yet sure what to generate from compile-file-parallel.
3:02:31
Bike
it's just a change to the internal operations. it shouldn't change how it looks to users.
3:02:46
drmeister
I would like it to be. I find it a bit disturbing to generate something different in the two cases when :output-type :object
3:03:24
drmeister
post: https://stackoverflow.com/questions/2980102/combine-two-gcc-compiled-o-object-files-into-a-third-o-file
3:04:01
drmeister
I have seen multiple object-files -> static archive that works like an object file.
3:04:27
Bike
uh, wait, how are there multiple object files coming out. i thought it put a bunch in /tmp and then linked them together into one.
3:05:22
drmeister
compile-file-parallel generates multiple .o files as an intermediate step - one for each top level form.
3:08:16
drmeister
But besides that - how does it perform? I can compile-file-parallel asdf.lisp in 120 seconds while compile-file-serial is 195 seconds.
3:08:35
Bike
it produces multiple .o as an INTERMEDIATE step. the final step is still the one object file
3:09:04
drmeister
I've never linked multiple object files into a single object file - have you done that before?
3:10:42
drmeister
Oh - yes - I'm trying some experiments. Mostly I'm waiting for things to build while I trawl the interwebs for ideas.
3:40:36
drmeister
ld -r -o test.o test_0.o test_1.o test_2.o works on macOS and where I found it they said it works on linux.