크로스 플랫폼이되고 싶은 R 용 패키지를 빌드 중입니다. 리눅스에서 개발 중이며, parallel
패키지에서 mclapply
함수를 사용합니다. 이 패키지는 Windows (doParallel
을 사용)에서 지원되지 않습니다. 나는 parallel
패키지가 단순함과 속도면에서 정말 마음에 들지만, 이것이 분리 된 OS를위한 두 가지 다른 버전의 패키지를 사용할 수있는 이유인지는 모르겠다. 그것이 허용되는 경우에도 언급 할 수 있습니다.병렬 또는 doParallel을 사용하여 여러 OS에 CRAN 패키지로 사용하는 사용자 정의 패키지
생각하십니까? '
mclapply(ldata, function(x), mc.cores=cores)
의 doParallel
의 상당 수'지금 내가 관한하고 또한
parallel
의
cl <- makeCluster(cores)
parLapply(cl, ldata, function(x))
것이 맞습니까?
이것이'cross' 플랫폼이라고 생각되면 왜'parallel' 패키지의'parLapply'도 사용하지 않겠습니까 (아니면 제 패키지 중 하나에서 사용하고 있기를 바랍니다). 'if() {else {}'를'Sys.info() [ "sysname"]'와 함께 사용하여 올바른 설정을 사용할 수도 있습니다. –
@Tyler Rinker, parLapply가 새로운 스크립트마다 .Rprofile로드를 표시합니까? 그렇다면 포크가 아니기 때문에 좋다고 생각합니다. – PascalVKooten
'parallel' **은 윈도우에서 ** 지원되며,'mclapply'가 사용될 수 있습니다. 그것은 단순한'lapply'처럼 직렬 평가로 되돌아갑니다. –