I would like to understand, from the user point of view, the differences in multithreading programming models between Julia >= 1.3 and Python 3.
Is there one that is more efficient than the other (in the sense that rising the thread numbers reduces more the computational time) ? In which situations (e.g. one model may have an edge, but only on computational or memory intensive tasks) ?
Is one that is more practical/provide higher level functions than the other ?
Is one that is more flexible than the other (e.g. it can be applied to a wider set of cases) ?
threading
library, which largely has the same interface as itsmultiprocessing
library), and you might want to do so for I/O bound tasks. And then another caveat: those threads can do useful CPU bound work if they primarily call out to an external library, like NumPy, that releases the GIL. (Not all external libraries release the GIL, but many do.) – Julieannjulien