lofreq2_call_pparallel.pyuses multiprocessing.cpu_count() to ge the number of cpus.
multiprocessing.cpu_count() return the number of cpu in the machine, But this is not the same as the number of cpu availabl" to the process. For example, you can run in a taskset context or a batch scheduler like slurm.
thus lofreq2_call_pparallel.py may launch more parallel jobs via multiprocessing.Pool than available cores.
each one competing with the others on the same core.
Hello,
lofreq2_call_pparallel.py
usesmultiprocessing.cpu_count()
to ge the number of cpus.multiprocessing.cpu_count()
return the number of cpu in the machine, But this is not the same as the number of cpu availabl" to the process. For example, you can run in a taskset context or a batch scheduler like slurm.see:
I would suggest to use len(os.sched_getaffinity(0)) instead of multiprocessing.cpu_count()
NB Mac OSX python does not have os.sched_getaffinity so a portable way to code it would be
thus
lofreq2_call_pparallel.py
may launch more parallel jobs viamultiprocessing.Pool
than available cores. each one competing with the others on the same core.regards
Eric