2016-07-31 14 views
0

Ich verwende R randomForestSRC Bibliothek Version: 2.2.0 Date: 2016-05-17, die ausdrücklich The package runs in both serial and parallel (OpenMP) in ihrer Beschreibung sagt, und ich bin sicher, es ist geladen, wie sessionInfo() sagt: randomForestSRC_2.2.0. Ich habe die Anweisungen zur Installation der OpenMP-fähigen Version befolgt und sie von Ishwaran's site heruntergeladen.Wieso beschleunigt openmp nicht parallel mein randomForestSRC?

Doch ich versuche, den Bau eines kümmerlichen Wald von 8 Bäume zu beschleunigen, und es ist nicht gar zu beschleunigen :(

Serien:

options(rf.cores=1, mc.cores=1) 
system.time(my.rfsrc <- rfsrc(Surv(score_years_before_label, status) ~ ., data = m, nsplit=10, ntree = 8, na.action = "na.impute", tree.err=TRUE, importance = TRUE)) 
user system elapsed 
359.42 0.06 359.58 

Parallel:

print(detectCores()) 
[1] 8 
options(rf.cores=8, mc.cores=8) 
system.time(my.rfsrc <- rfsrc(Surv(score_years_before_label, status) ~ ., data = m, nsplit=10, ntree = 8, na.action = "na.impute", tree.err=TRUE, importance = TRUE)) 
user system elapsed 
378.07 0.05 314.67 

Ich verwende Windows 10 Pro, 64-Bit und mein Computer hat 4 Kerne und 8 logische Prozessoren, und meine Daten sind nicht so groß:

print(nrow(m)) 
23070 
print(ncol(m)) 
67 

Was mache ich falsch? Danke!

+0

Können Sie mithilfe der Überwachungstools Ihres Betriebssystems überprüfen, wie viele Kerne tatsächlich in diesen beiden Beispielen verwendet werden? – Spacedman

+0

@Spacedman - Ich habe den Taskmanager überprüft und in beiden Fällen sieht es so aus, als ob alle 8 Prozessoren etwas tun, was ~ 15% ihrer Zeit beansprucht - keiner von ihnen arbeitet sehr hart und keiner von ihnen ist völlig frei – ihadanny

Antwort

2

Tatsächlich unterstützt das Paket serielle und OpenMP parallele Verarbeitung. Das standardmäßige CRAN-Build-Protokoll und die Binärdateien aktivieren diese Funktionalität jedoch nicht standardmäßig. Weitere Informationen zu Ihrer Plattform finden Sie auf Seite 2 der Dokumentation, Abschnitt "OpenMP Parallel Processing - Installation".

+0

Danke, aber Ich bin mir ziemlich sicher, dass ich die Anweisungen befolgt habe - das Paket, das ich verwende, ist das von http://www.ccs.miami.edu/~hishwaran/rfsrc.html - es ist randomForestSRC_2.2.0.zip mit der Größe 1.30 MB (1.365.819 Bytes). Habe ich noch etwas vermisst ?? (und danke für die schnelle Unterstützung! :) – ihadanny

+1

Die Binärdatei, die für Windows veröffentlicht wurde, wurde mit Windows 8.1 Pro erstellt. Leider haben wir es noch nicht getestet oder das Paket mit Windows 10 erstellt. Der bessere Weg (immer) auf jeder Plattform ist das Kompilieren des Pakets von der Quelle unter Verwendung der geposteten Richtungen. Voraussetzung ist, dass das R-Toolset auf Ihrem System verfügbar ist. Das Kompilieren von CRAN-Paketen von der Quelle unter Windows ist etwas komplizierter als bei anderen Plattformen. Ich würde https://cran.r-project.org/bin/windows/Rtools/ nachsehen, um mehr darüber zu erfahren. –

Verwandte Themen