31.12.2013 Aufrufe

PDF-Version - freiesMagazin

PDF-Version - freiesMagazin

PDF-Version - freiesMagazin

MEHR ANZEIGEN
WENIGER ANZEIGEN

Erfolgreiche ePaper selbst erstellen

Machen Sie aus Ihren PDF Publikationen ein blätterbares Flipbook mit unserer einzigartigen Google optimierten e-Paper Software.

PROGRAMMIERUNG<br />

Dennoch machen diese Ergebnisse mit Nachdruck<br />

deutlich, dass Matrixmultiplikationen durch<br />

entsprechende Hardware und gputools extrem beschleunigt<br />

werden können und man somit in der<br />

Lage ist, stunden- oder tagelange Rechenprozeduren<br />

deutlich zu verkürzen. Nun muss nur noch<br />

abgewogen werden, ob dieser Geschwindigkeitsvorteil<br />

die monetären Kosten ausgleicht.<br />

Hier schließt sich dann der Kreis zu der Empfehlung,<br />

die CUDA-basierte Entwicklung, wenn möglich,<br />

lokal durchzuführen. Unter Minderung der<br />

Dimensionen kann bei einer Vielzahl von Aufgabenstellungen<br />

ohne den Kostendruck, der durch<br />

die Anmietung eines Hochleistungssystems entstehen<br />

würde, ausgiebig getestet werden.<br />

Fazit<br />

Die Nutzung von GPUs für statistische Berechnungen<br />

in R ist eine interessante Option. Da auf<br />

den meisten Desktop-Rechnern Grafikkarten installiert<br />

sind, benötigt man für den Einstieg oft<br />

nicht einmal neue Hardware. Wem die Heim-<br />

Grafikkarte nicht ausreicht, dem werden Cloud-<br />

Angebote für Gelegenheitsprojekte empfohlen.<br />

Die Einrichtung ist allgemein recht unproblematisch.<br />

In R selbst kann man entweder auf einige<br />

bereits existierende Pakete zurückgreifen oder<br />

auch eigene Bibliotheken schreiben. Da der Funktionsumfang<br />

der verfügbaren Pakete leider noch<br />

sehr übersichtlich ist, wird man schnell das Bedürfnis<br />

entwickeln, letztere Option auszuprobieren.<br />

Dennoch können allein die verfügbaren Pakete<br />

beachtliche Geschwindigkeitsvorteile mit sich<br />

bringen. Die Beschleunigungsfaktoren bei speziellen<br />

Operationen liegen im dreistelligen Bereich.<br />

Ein paar Mankos sollten allerdings nicht unerwähnt<br />

bleiben:<br />

NVIDIAs CUDA-Plattform ist momentan dominierend.<br />

Wünschenswert wäre eine stärkere<br />

Öffnung hin zu offenen Plattformen (OpenCL).<br />

GPU-Einsatz lohnt sich nur dann, wenn die Fixkosten<br />

durch die Übertragung zwischen dem<br />

Arbeitsspeicher der GPU und der CPU im Vergleich<br />

zum Gesamtzeitverbrauch der Berechnung<br />

klein ist. Der Einsatz lohnt sich also nur<br />

bei rechenintensiven Aufgaben.<br />

Da der Arbeitsspeicher einer GPU recht knapp<br />

bemessen ist, passen sehr große Daten nur<br />

scheibchenweise dort hinein. Die Programmierung<br />

wird dann zusätzlich aufwändig.<br />

Wünschenswert wäre ein noch stärkeres Engagement<br />

der R-Entwicklergemeinschaft, entsprechende<br />

Funktionalitäten über fertige Pakete auch<br />

Laien verfügbar zu machen. Dies wäre für viele<br />

R-Nutzer eine große Bereicherung.<br />

LINKS<br />

[1] https://developer.nvidia.com/cuda-gpus<br />

[2] https://developer.nvidia.com/<br />

[3] http://www.r-project.org/<br />

[4] https://aws.amazon.com/de/ec2/instancetypes/<br />

[5] http://cran.r-project.org/web/packages/<br />

gputools/<br />

[6] http://www.khronos.org/opencl/<br />

[7] https://de.wikipedia.org/wiki/GPL<br />

[8] http://www.netlib.org/lapack/<br />

[9] https://de.wikipedia.org/wiki/Satz_von_Bayes<br />

[10] http://www.tldp.org/HOWTO/Module-<br />

HOWTO/x73.html<br />

[11] https://www.kernel.org/doc/Documentation/<br />

filesystems/ramfs-rootfs-initramfs.txt<br />

[12] https://developer.nvidia.com/cudadownloads<br />

[13] http://developer.download.nvidia.com/<br />

compute/cuda/5_0/rel-update-1/installers/<br />

cuda_5.0.35_linux_64_ubuntu11.10-1.run<br />

[14] http://cran.r-mirror.de/bin/<br />

[15] http://cran.r-mirror.de/sources.html<br />

[16] http://www.rstudio.com/<br />

[17] http://www.rstudio.com/ide/docs/<br />

[18] http://cran.r-project.org<br />

[19] http://cran.r-project.org/src/contrib/gputools_<br />

0.28.tar.gz<br />

Autoreninformation<br />

Markus Lilienthal und Markus<br />

Herrmann sind beide in der Marktforschung<br />

tätig. Lilienthal hat über<br />

den Einsatz von Cloud Computing<br />

promoviert und arbeitet intensiv mit R.<br />

Herrmann ist im Bereich Computational<br />

Statistics beschäftigt.<br />

Diesen Artikel kommentieren<br />

© <strong>freiesMagazin</strong> CC-BY-SA 3.0 Ausgabe 12/2013 21

Hurra! Ihre Datei wurde hochgeladen und ist bereit für die Veröffentlichung.

Erfolgreich gespeichert!

Leider ist etwas schief gelaufen!