How about the attached patch?  Should detection of number of cores
fail it sets the number of cores to be one.  With this patch
r-cran-nmf builds successfully on Alpha.

Cheers
Michael.
Index: r-cran-nmf-0.21.0/R/options.R
===================================================================
--- r-cran-nmf-0.21.0.orig/R/options.R	2018-02-07 02:45:56.000000000 +1300
+++ r-cran-nmf-0.21.0/R/options.R	2018-03-12 19:42:26.704548354 +1300
@@ -78,7 +78,7 @@
 	, gc=50
 	# define default parallel backend 
 	, parallel.backend= option_symlink('pbackend') # for backward compatibility
-	, pbackend= if( parallel::detectCores() > 1 ) 'par' else 'seq'
+	, pbackend= if( parallel::detectCores() > 1 && !is.na(parallel::detectCores()) ) 'par' else 'seq'
 	# toogle verbosity
 	, verbose=FALSE
 	# toogle debug mode
Index: r-cran-nmf-0.21.0/R/parallel.R
===================================================================
--- r-cran-nmf-0.21.0.orig/R/parallel.R	2018-02-19 06:39:59.000000000 +1300
+++ r-cran-nmf-0.21.0/R/parallel.R	2018-03-12 19:35:55.337916554 +1300
@@ -17,6 +17,7 @@
 getMaxCores <- function(limit=TRUE){
 	#ceiling(parallel::detectCores()/2)
 	nt <- n <- parallel::detectCores()
+	if( is.na(n) ) n <- 1L
 	# limit to number of cores specified in options if asked for
 	if( limit ){
 		if( !is.null(nc <- getOption('cores')) ) n <- nc # global option

Reply via email to