It seems that NumberOfParallelWorkerThreads is per call and not global.
If i set NumberOfParallelWorkerThreads=4 and start my algorithm on two threads MathNet.Numerics is using 8 worker threads instead of 4.
So more worker threads are created than available CPU cores.
The question is what is the better approach:
If i set NumberOfParallelWorkerThreads=4 and start my algorithm on two threads MathNet.Numerics is using 8 worker threads instead of 4.
So more worker threads are created than available CPU cores.
The question is what is the better approach:
- limit the number of parallel algorithms (user code)
-
use process wide NumberOfParallelWorkerThreads independent of how many algorithms are running in parallel (MathNet code)