2016-10-26 6 views
8

저는 Dell Latitude E7440 랩탑을 Windows 7 Enterprise OS, 8GB RAM, 64 비트 OS, Intel (R) Core i7-4600U CPU @ 2.10GHz 프로세서, 2701MHz, 2 코어, 4 개의 논리 프로세서 (4 코어).내 (약한) 노트북보다 R이 느린 이유는 무엇입니까?

나는, 64 비트 OS, 인텔 (R) 제온 (R) CPU 윈도우 7 엔터프라이즈 OS, 32기가바이트 RAM과 델 정밀 타워 7810 데스크톱를 사용하고 2.40GHz 2 @ E5-2620 V3 프로세서, 2401MHz, 6 코어, 12 개의 논리 프로세서 (24 코어)

R을 잘 사용하면 Rstudio에서 ~ 300 개의 기능을 가진 100K 크기의 데이터에서 gbm을 사용하여 이진 분류가 실행됩니다. 그러나 랩톱 R 버전 (다른 모든 소프트웨어는 병렬 처리를 사용하지 않음)에서 수행 한 작업은 내 데스크톱 R 버전보다 훨씬 더 입니다. 어떻게 그렇게 될수 있니? 알아 내기 위해 무엇을해야합니까?

노트북 :

> sum <- 0; system.time(for (i in 1:1000000) sum <- sum + i) 
    user system elapsed 
    0.36 0.00 0.36 
> memory.limit() 
[1] 8097 
> sessionInfo() 
R version 3.3.1 (2016-06-21) 
Platform: x86_64-w64-mingw32/x64 (64-bit) 
Running under: Windows 7 x64 (build 7601) Service Pack 1 

locale: 
[1] LC_COLLATE=English_United States.1252 LC_CTYPE=English_United States.1252 LC_MONETARY=English_United States.1252 
[4] LC_NUMERIC=C       LC_TIME=English_United States.1252  

attached base packages: 
[1] stats  graphics grDevices utils  datasets methods base  

loaded via a namespace (and not attached): 
[1] tools_3.3.1 

데스크톱 :

> sum <- 0; system.time(for (i in 1:1000000) sum <- sum + i) 
    user system elapsed 
    0.52 0.00 0.52 
> memory.limit() 
[1] 32684 
> sessionInfo() 
R version 3.3.1 (2016-06-21) 
Platform: x86_64-w64-mingw32/x64 (64-bit) 
Running under: Windows 7 x64 (build 7601) Service Pack 1 

locale: 
[1] LC_COLLATE=English_United States.1252 LC_CTYPE=English_United States.1252 LC_MONETARY=English_United States.1252 
[4] LC_NUMERIC=C       LC_TIME=English_United States.1252  

attached base packages: 
[1] stats  graphics grDevices utils  datasets methods base  

loaded via a namespace (and not attached): 
[1] tools_3.3.1 
+0

일회성 또는 반복적으로 발생합니까? 반복 테스트를 실행하려면'microbenchmark '를 사용해보십시오. (이것은 여러 번 실행되며 요약 통계를 제공합니다.) –

답변

6

델 래티튜드 E7440 노트북 ... i7-4600U의 CPU @의 2.10GHz 프로세서, 2701 MHz의

델 정밀 타워 7810 데스크탑 ... E5-2620 v3 @ 2.40GHz 프로세서 2 개, 2401 Mhz

그 이유가됩니다. 랩톱의 CPU가 데스크톱보다 빠른 실제 클럭 속도로 실행되므로 R도 빠르게 실행됩니다.

다중 스레드 BLAS 또는 다른 병렬 처리 트릭이 없으면 여러 코어가있을 경우 문제에 영향을 미치지 않습니다. 마찬가지로 데이터를 저장할 수있는 메모리가 충분하면 더 많은 기가 바이트가 속도를 향상시키지 않습니다 (캐싱 문제는 제외하고 100K는 두 시스템의 캐시에 쉽게 맞아야합니다).

+0

필자는 얼마간의 실제 시간을 읽어야한다고 생각합니다. 감사. –