On 09.02.2020 09:56, Murray Efford wrote:
The CRAN Repository Policy (revision 4170) states "If running a package uses multiple 
threads/cores it must never use more than two simultaneously: the check farm is a shared 
resource and will typically be running many checks simultaneously" and I try to respect 
this limit in package example code. However I was recently warned that package functions 
must not default to >2 cores, even if checks are limited to 2 cores. I see the sense in 
this, to not hog resources on multi-user systems, but I cannot find it in the documentation. 
My package 'secr' has unintentionally violated such a policy since October (multithreading 
with RcppParallel in function 'secr.fit'). No complaints so far, but I'd like to dodge the 
pain of rejection at my next revision.

Further, "not all CRAN machines use _R_CHECK_LIMIT_CORES_", so that environment 
variable cannot be relied upon to apply a 2-core limit during checking.


You found it: The cited CRAN policies say that you must not use more than 2 by default.


I would appreciate pointers to the relevant documentation and guidance on how 
others handle this. Is it unavoidable that for users to exploit multiple cores 
they must specify a non-default function argument, or similar?

Exactly.

Best,
Uwe Ligges



______________________________________________
R-package-devel@r-project.org mailing list
https://stat.ethz.ch/mailman/listinfo/r-package-devel


______________________________________________
R-package-devel@r-project.org mailing list
https://stat.ethz.ch/mailman/listinfo/r-package-devel

Reply via email to