Mit Python für CUDA entwickeln

Mit dem von Continuum Analytics vorgestellten NumbaPro sollen auch Python-Entwickler das parallele Programmiermodell von CUDA nutzen können. Nvidia sieht die neue Unterstützung als Erfolg ihrer CUDA-LLVM-Initiative.

In Pocket speichern vorlesen Druckansicht
Lesezeit: 2 Min.
Von
  • Julia Schmidt

Auf der diesjährigen GPU Technology Conference (GTC) in San Jose hat Grafikprozessorspezialist Nvidia mitgeteilt, dass es nun auch Python-Entwicklern möglich sei, das parallele Programmiermodell von CUDA zu verwenden. Bislang war dies offiziell nur mit C, C++ und Fortran eine Option. Die Unterstützung der nach Monthy Python's Flying Circus benannten Sprache kommt aus dem Hause Continuum Analytics, wo mit NumbaPro ein Python-CUDA-Compiler für die Python-Suite Anaconda Accelerate entwickelt wurde.

Zwar bietet das Unternehmen nicht das einzige Angebot dieser Art an (siehe beispielsweise PyCUDA), jedoch scheint NumbaPro mit der Verkündung einen ähnlichen Stellenwert im CUDA-Ökosystem zu erhalten, wie ihn der Compiler der Portland Group (PGI) als eine Art Industriestandard für Fortran inne hat. Der Compiler ist aus dem Array-orientierten Python-Compiler für NumPy Numba (NumPy + Mamba) von Continuum Analytics hervorgegangen.

Die Unterstützung der neuen Sprache wertet Nvidia als Erfolg der 2011 begonnenen CUDA-LLVM-Initiative, in deren Rahmen das Unternehmen einen auf dem LLVM-Projekt aufbauenden CUDA-Compiler veröffentlichte. Entwickler haben seitdem die Möglichkeit, sich für ein CUDA Developer Program zu registrieren. Nach erfolgreichem Durchlaufen des Bewerbungsprozesses erhalten sie Zugriff auf ein CUDA Compiler SDK mit Dokumentation, Beispielcode und Binaries für eigene Compiler-Projekte. Darüber hinaus erhofft sich das Unternehmen von der offiziellen Bekanntmachung wohl breiteren Zuspruch für CUDA, da die Tendenz der Verbreitung von Python in den letzten Jahren eher im Steigen begriffen war (wobei die genauen Zahlen von Umfrage zu Umfrage und Index zu Index unterschiedlich sind).

Folie zur Vorstellung des Python-CUDA-Compilers

(Bild: Continuum Analytics)


Anaconda Accelerate ist ein kostenpflichtiges Add-On für Anaconda, eine freie Python-Distribution, deren Stärken wohl im Umgang mit der Verarbeitung großer Datenmengen, Möglichkeiten zur vorhersagenden Analyse und wissenschaftlichen Rechenvorgängen liegen. Accelerate ist für rund 130 US-Dollar zu haben. Mitglieder von Bildungseinrichtungen, die sich auf einer Liste mit anerkannten Institutionen befinden, können sich auf einer speziellen Website von Continuum Analytics um eine kostenlose Lizenz bewerben. (jul)