gms | German Medical Science

MAINZ//2011: 56. GMDS-Jahrestagung und 6. DGEpi-Jahrestagung

Deutsche Gesellschaft für Medizinische Informatik, Biometrie und Epidemiologie e. V.
Deutsche Gesellschaft für Epidemiologie e. V.

26. - 29.09.2011 in Mainz

Optimierungspotenzial von biomedizinischen Statistikanwendungen durch den Einsatz von allgemeinen Berechnungen auf Grafikprozessoren (GPGPU)

Meeting Abstract

  • Benjamin Löhnhardt - Geschäftsbereich Informationstechnologie, Universitätsmedizin Göttingen, Göttingen
  • Andreas Leha - Abteilung Medizinische Statistik, Universitätsmedizin Göttingen, Göttingen
  • Fred Viezens - Abteilung Medizinische Informatik, Universitätsmedizin Göttingen, Göttingen
  • Frank Dickmann - Abteilung Medizinische Informatik, Universitätsmedizin Göttingen, Göttingen
  • Tim Beißbarth - Abteilung Medizinische Statistik, Universitätsmedizin Göttingen, Göttingen
  • Ulrich Sax - Geschäftsbereich Informationstechnologie, Universitätsmedizin Göttingen, Göttingen

Mainz//2011. 56. Jahrestagung der Deutschen Gesellschaft für Medizinische Informatik, Biometrie und Epidemiologie (gmds), 6. Jahrestagung der Deutschen Gesellschaft für Epidemiologie (DGEpi). Mainz, 26.-29.09.2011. Düsseldorf: German Medical Science GMS Publishing House; 2011. Doc11gmds449

doi: 10.3205/11gmds449, urn:nbn:de:0183-11gmds4495

Veröffentlicht: 20. September 2011

© 2011 Löhnhardt et al.
Dieser Artikel ist ein Open Access-Artikel und steht unter den Creative Commons Lizenzbedingungen (http://creativecommons.org/licenses/by-nc-nd/3.0/deed.de). Er darf vervielfältigt, verbreitet und öffentlich zugänglich gemacht werden, vorausgesetzt dass Autor und Quelle genannt werden.


Gliederung

Text

Einleitung: Die Entwicklung neuer Verfahren in der Bioinformatik beinhaltet meist umfangreiche Simulationen. Solche Simulationen basieren auf kontrolliert gezogenen Zufallszahlen, die gewünschten Verteilungsannahmen genügen. Diese Abhängigkeiten werden in einer Kovarianzmatrix modelliert [1]. Die Generierung solcher Pseudozufallszahlen ist sehr rechenintensiv und stellt häufig die zeitaufwändigste Operation in Simulationen dar.

Die Cholesky-Zerlegung [2] der Kovarianzmatrix ist der erste und aufwändigste Schritt in einer möglichen Methode, normalverteilte Zufallszahlen mit Abhängigkeiten zu erzeugen. Aufgrund ihrer zentralen Bedeutung sind die Möglichkeiten einer Beschleunigung der Cholesky-Zerlegung durch Parallelisierung gut erforscht [3].

An drei Standorten der deutschen D-Grid-Initiative [4] befinden sich Visualisierungscluster [5], die mit Hochleistungsgrafikkarten ausgestattet sind. Durch General Purpose Computation on Graphics Processing Unit (GPGPU) [6] können diese Grafikkarten für stark parallelisierte Rechenoperationen verwendet werden.

In einem Projekt wurde eine GPGPU-Version der Cholesky-Zerlegung [7] mit der Statistikanwendung R [8] umgesetzt, welche für Simulationen in der Bioinformatik häufig genutzt wird. In einem Laufzeitvergleich wurden sowohl Grenzen als auch Beschleunigungsmöglichkeiten einer Portierung der Cholesky-Zerlegung auf Grafikkarten untersucht.

Methoden: Die Berechnungen wurden auf einem D-Grid-Rechencluster an der Universitätsmedizin Göttingen durchgeführt. Der verwendete Rechenknoten verfügt über zwei Quad-Core-Prozessoren mit 16GB-RAM und zwei Nvidia Quadro-FX-5600-Grafikkarten. Um die Grafikkarten für Rechenoperationen nutzen zu können, wurde CUDA 3.1 [9] installiert. Neben der Standard-R-Funktion zur Berechnung der Cholesky-Zerlegung auf CPUs wurde eine GPGPU-Funktion implementiert, welche die Grafikkarte verwendet. Da die Grafikkarte mit 1,58GB über einen kleineren Arbeitsspeicher verfügt als der Hauptspeicher, wurde zunächst die maximal zu verarbeitende Matrix ermittelt. Bis zu dieser Maximalgröße wurden verschiedene Matrizen erzeugt und die Cholesky-Zerlegung sowohl mit der CPU- als auch mit der GPGPU-Version durchgeführt, die berechneten Ergebnisse miteinander verglichen und ein Laufzeitvergleich durchgeführt.

Ergebnisse: Die Größe der Matrix ist bei der Verwendung der Grafikkarte auf 19856x19856 Elemente beschränkt. Es wurden fünf Matrizen von 1600x1600 bis 16000x16000 verwendet und ein Laufzeitvergleich durchgeführt. Die Laufzeit der GPGUP-Version war bereits bei der 1600x1600-Matrix ~10,7x kürzer als die CPU-Version. Bei der 16000x16000-Matrix war das Verhältnis bei einer Laufzeit von ~12,5s (GPGPU-Version) und ~4554,1s (CPU-Version) sogar ~1:362, was einer Rechenzeiteinsparung von ~75 Minuten bzw. ~99,72% entspricht.

Diskussion: Durch die Verwendung von Grafikkarten für rechenintensive Berechnungen [10], [11] lässt sich eine signifikante Laufzeitersparnis in biomedizinischen Statistikanwendungen erzielen. Limitiert wird dieses Optimierungspotenzial durch den geringeren verfügbaren Arbeitsspeicher auf Grafikkarten.

Der verwendete Rechencluster ist Bestandteil einer Virtuellen Forschungsumgebung in D-Grid bzw. MediGRID [12]. In einer solchen können Forscher standortübergreifend auf Ressourcen und Dienste zugreifen, ohne dass diese lokal vorgehalten werden müssen. Es wird angestrebt, die Grafikkartenhardware vernetzt mit weiteren Visualisierungsressourcen in D-Grid für biomedizinische Anwendungen zu erschließen. WissGrid [13] flankiert dies durch den AufbauVirtueller Forschungsumgebungen.

Danksagung: Unterstützt durch WissGrid(FKZ:01IG09005A-L), gefördert vom BMBF.


Literatur

1.
Snedecor GW, Cochran WG. Statistical Methods. 7. Auflage. Iowa: Iowa State Press; 1980. p. 342.
2.
Schwarz HR, Köckler N. Numerische Mathematik. 5. Auflage. Stuttgart: Teubner; 2004. p. 57.
3.
Heath MT. Parallel direct methods for sparse linear systems. In: Keyes DE, Sameh A, Venkatakrishnan V, eds. Parallel Numerical Algorithms. Boston: Kluwer Academic Publishers; 1997. p. 55-90.
4.
Neuroth H, Kerzel M, Gentzsch W. German Grid Initiative D-Grid. Universitätsverlag Göttingen; 2007. p. 9-11.
5.
Dickmann F, Kaspar M, Löhnhardt B, Kepper N, Viezens F, Hertel F, Lesnussa M, Mohammed Y, Thiel A, Steinke T, Bernarding J, Krefting D, Knoch TA, Sax U. Visualization in Health Grid Environments: A Novel Service and Business Approach. In: Altmann J, Buyya R, Rana OF, eds. Grid Economics and Business Models– 6th International Workshop, GECON 2009. Delft, The Netherlands: Springer Berlin; 2009. p. 150-159.
6.
Nvidia. What is GPU Computing? Available from: http://www.nvidia.com/object/GPU_Computing.html. Externer Link
7.
Henry S. Parallelizing Cholesky's decomposition algorithm. 2009, unpublished. Available from: http://runtime.bordeaux.inria.fr/shenry/papers/HS_Cholesky.pdf Externer Link
8.
R Development Core Team. R: A language and environment for statistical computing. Vienna, Austria: R Foundation for Statistical Computing; 2011. Available from: http://www.R-project.org/ Externer Link
9.
Nvidia. CUDA Zone. Available from: http://www.nvidia.de/object/cuda_home_new_de.html. Externer Link
10.
Boeing A. Survey and future trends of efficient cryptographic function implementations on GPGPUs. In: Valli C, Woodward A, eds. 6th Australian Digital Forensics Conference; 2008.
11.
Marras S, Mura C, Gobbetti E, Scateni R, Scopigno R. Two examples of GPGPU acceleration of memory-intensive algorithms. In: Puppo E, Brogni A, De Floriani L, eds. Eurographics Italian Chapter Conference 2010. 2010. p. 49-56.
12.
Krefting D, Bart J, Beronov K, Dzhimova O, Falkner J, Hartung M, Hoheisel A, Knoch TA, Lingner T, Mohammed Y, Peter K, Rahm E, Sax U, Sommerfeld D, Steinke T, Tolxdorff T, Vossberg M, Viezens F, Weisbecker A. MediGRID: Towards a user friendly secured grid infrastructure. FGCS. 2009;25:326-336.
13.
Wissgrid. Available from: http://www.wissgrid.de/ Externer Link