According to What threads do Dask Workers have active?, a dask worker has
A pool of threads in which to run tasks.
The documentation says
If your computations are mostly numeric in nature (for example NumPy and Pandas computations) and release the GIL entirely then it is advisable to run dask-worker processes with many threads and one process. This reduces communication costs and generally simplifies deployment.
The internals of NumPy use MKL or OpenBLAS, with a number of threads equal to the env variables OPENBLAS_NUM_THREADS
or MKL_NUM_THREADS
when the code is normally executed.
How do those parameters and dask's computation threads work together?