On Aug 7, 2024, at 6:00?AM, r-devel-request at r-project.org wrote:
Would it make sense to add a parameter somewhere, to mclapply(), say,
telling R to not use multiprocessing libraries?
It would be great if we had a way to limit all kinds of multiprocessing
(child processes, OpenMP threads, pthreads, forks, MPI, PVM, 'parallel'
clusters, <insert many more methods here>) in a single setting, but
there is currently no such setting, and it may be impossible to
implement. Particularly problematic may be nested parallellism:
sometimes desirable (e.g. 4-machine cluster, each machine in it using
OpenMP threads), sometimes undesired (e.g. your case). A single setting
is probably far from enough.
Does R even know whether a linked library is doing multi-processing?
Unfortunately, no, there is no standard interface for that. Best I can
recommend is to link your R installation with FlexiBLAS and then use the
'flexiblas' CRAN package to talk to it.