libera/#clasp - IRC Chatlog
Search
20:40:30
Bike
and when i say "the filenames" i mean the tmp ones, not the hardcoded references to build/
20:41:01
yitzi
I had it generate a script to call the serial analyzer versus calling the stuff in `run-XXXX` so I wouldn't walk on waf's feet.
20:42:46
yitzi
Since we don't have waf anymore, I think the correct answer to fix the various paths is to make proper entry point functions in the clasp-analyzer asdf system that accept compile-commands, log file locations, etc.
20:43:27
Bike
oh yeah and i did alter the koga script so it generates code to use the parallel analyzer instead
21:01:39
Bike
the hash table problem is specifically in memoized-probe-file in clang-tool, and that uses a global hash table
21:06:22
Bike
and both of those look like they lock correctly... maybe the read/write lock implementation itself is busted? man, i hope not
21:15:46
drmeister
Also, setf gethash and gethash don't just setf gethash and gethash - they rehash and that's where things get compilicated.
21:16:33
drmeister
The other thing would be to put a mutex in the code that accesses that hash table to test if that code is responsible.
21:17:29
Bike
i thought we did that by default, but i guess not, and the table in clang tool is NOT thread safe
21:39:13
Bike
there are a couple other non thread safe tables in clang-tool, but they look like they're not altered during use
23:44:16
drmeister
::notify Bike Good going - yes - I think we don't make them thread safe by default because that slows them down.
0:34:17
yitzi
I had to make the jupyter installer and snapshot scripts use the fasl output translation folder inside the build directory like the analyzer does. Now I can build cando in one build folder and clasp in a different one both in the same git repo.
0:46:24
Bike
if the problem is just contention i don't know if lock free tables would improve things much
0:46:24
Colleen
Bike: drmeister said 1 hour, 2 minutes ago: Good going - yes - I think we don't make them thread safe by default because that slows them down.
1:20:39
Bike
you still get contention if you just have multiple threads accessing memory with the same cache lines, right?
1:24:13
Bike
well, hopefully. it's still going. seems very slow, like slower than the serial version
1:31:04
Bike
i mean, this one is just a cache, and it's for different filenames, which might not be shared between threads either
2:19:43
Bike
memoized-probe-file is the one i just put the lock on, that i think could probably be thread local given that it's just a cache, but there are several more throughout clasp analyzer that i do not understand