Static Multi-Processing
April 3, 2024 ยท View on GitHub
SMP module allows to set static affinity mask for each process inside process pool to limit total number of threads running in application:
python -m smp [-f <oversubscription_factor>] [-p <number_of_outermost_processes>] script.py
The module supports two types of process pool: multiprocessing.pool.Pool and concurrent.futures.ProcessPoolExecutor, as well as one thread pool: multiprocessing.pool.ThreadPool. Can be run with TBB module as well:
python -m smp [-f <oversubscription_factor>] [-p <number_of_outermost_processes>] -m tbb script.py