-
-
Notifications
You must be signed in to change notification settings - Fork 27
Open
Labels
performanceMust go fasterMust go faster
Description
In the docs:
When you start Julia in multithreaded mode, i.e. julia -tX or JULIA_NUM_THREADS=X, it is generally recommended to set OPENBLAS_NUM_THREADS=1 or, equivalently, BLAS.set_num_threads(1).
That's a heuristic, likely not always right, but I suggest either:
- If this is true, then do it automatically for the user, and have a way to get the old number of threads that the current implementation would have given.
- It's plausible it works better, because the other threads are simply busy doing other non-BLAS work. Is there a good middle-ground then, use half as many threads?
- It's also plausible that the recommendation simply makes things slower, the other threads could be doing no work even, then we have a dilemma. I'm not sure but are calls to OpenBLAS serialized? It seems they should be and would that also help, and then not have to change any settings, or adjust less, for multi-threaded?
mzy2240
Metadata
Metadata
Assignees
Labels
performanceMust go fasterMust go faster