Was bedeutet die Einführung von Python durch NVIDIA für GPGPU für GIS?


25

Heute gab NVIDIA die Unterstützung der Python-Sprache für die GPGPU-Variante ( CUDA ) bekannt.

Manifold GIS verwendet CUDA, um einige beschleunigte Rasteroperationen zu ermöglichen. Es ist jedoch keine programmierbare Umgebung und beschränkt sich auf die Funktionen, die der Entwickler bereitgestellt hat.

Mit Python, das in vielen GIS-Paketen einschließlich ArcGIS und QGIS (zusammen mit den Paketen numpy und sciypy) als erstklassige CUDA-Sprache unterstützt wird, können Sie GPGPU in diesen gängigen GIS-Paketen nutzen.


2
Hat jemand versucht, die Anaconda Python-Distribution mit ArcGIS / QGIS zu verwenden?
blah238

2
In diesem Artikel geht es um die Vorteile von GPU-basierten Geoverarbeitungsoperationen. blogs.esri.com/esri/apl/2010/03/30/…
geogeek

Eine großartige Lektüre, aber es ist etwas enttäuschend zu sehen, dass dieser Artikel 3 Jahre alt ist - ich erwarte nicht, dass ich so etwas mit 10.2 sehe, aber vielleicht werden sie nächste Woche auf der Entwicklerkonferenz einige Überraschungen haben.
blah238

Ich frage mich nur, ob der Titel & Tag auf diesem Desktop GIS und sein soll ArcGIS-desktop. Außerdem, ob dies möglicherweise in ArcGIS Pro enthalten ist. Ich dachte, ich hätte letzteres irgendwo gelesen, konnte aber gerade keinen Link finden.
PolyGeo

Ich glaube nicht. Python wird auch auf Servern verwendet. Am besten gepflegtes Generikum IMO.
blah238

Antworten:


2

Ich denke, die Lizenzierung wird die Kugel sein, die (höchstwahrscheinlich QGIS) die Verwirklichung dieses Traums stoppen könnte. Aus der Pressemitteilung geht hervor, dass NVIDIA der firmeneigenen NumbraPro-Funktion von Continuum Analytics für den Zugriff auf NVIDIA CUDA nur einen Stempel aufgedrückt hat. Nvidia selbst bietet Pythonern keinen nativen Zugriff auf die CUDA-Umgebung.

Wenn ich es richtig verstanden habe: Der NumbraPro-Compiler verwendet ein Python-Skript, erstellt optimierten C / C ++ - Code, der dann unter dem LLVM-Compiler kompiliert wird, der die NVIDIA-GPUs unterstützt. Dies ermöglicht es der Python-Sprache, mit der Leistung von Sprachen niedrigerer Ebene zu arbeiten, obwohl die Kompilierungszeit aufgrund des zusätzlichen Schritts länger sein wird, als dies bei der Implementierung in direktem C / C ++ der Fall gewesen wäre.


Wenn Sie sich im Internet umschauen, werden Python-Bindungen für LLVM bereits unterstützt. Ich bin nicht mit den Python-Bindungen in LLVM vertraut, aber wenn es sich um Parallelprogrammierung in einfachem Python handelt ... lasse ich jemanden über 800 Threads streiten und wie er seine Zustände teilt.

Es könnte also nur darum gehen, jemanden zu finden, der bereit ist, an diesem Projekt zu arbeiten, um Python LLVM auf GPU auf GIS umzustellen. Der Nachteil dabei ist, dass eine zusätzliche Komponente, nämlich der LLVM-Compiler, in einem GIS-Plugin oder einer Suite enthalten sein muss. Extra aufblähen.

Durch die Nutzung unserer Website bestätigen Sie, dass Sie unsere Cookie-Richtlinie und Datenschutzrichtlinie gelesen und verstanden haben.
Licensed under cc by-sa 3.0 with attribution required.