Cosa significa l'adozione di Python da parte di NVIDIA per GPGPU per GIS?


25

Oggi NVIDIA ha annunciato il supporto per il linguaggio Python sul suo sapore di GPGPU ( CUDA ).

Manifold GIS utilizza CUDA per abilitare alcune operazioni raster accelerate ma non è un ambiente programmabile ed è limitato alle funzioni fornite dallo sviluppatore.

Con Python, utilizzato in molti pacchetti GIS tra cui ArcGIS e QGIS (insieme ai pacchetti numpy e sciypy), essendo supportato come linguaggio CUDA di prima classe, quali sono le prospettive per poter sfruttare GPGPU in questi pacchetti GIS tradizionali?


2
Qualcuno ha provato a utilizzare la distribuzione Anaconda Python con ArcGIS / QGIS?
blah238,

2
questo articolo riguarda i vantaggi delle operazioni di geoprocessing basate sulla GPU blogs.esri.com/esri/apl/2010/03/30/…
geogeek

Un'ottima lettura, ma è un po 'deludente vedere che l'articolo ha 3 anni - non mi aspetto di vedere qualcosa del genere con 10.2, ma forse alla Conferenza degli sviluppatori della prossima settimana avranno delle sorprese.
blah238

Mi chiedo solo se il titolo e il tag su questo dovrebbe essere Desktop GIS e ArcGIS-desktop. Inoltre, se questo può essere qualcosa che sta arrivando in ArcGIS Pro. Pensavo di aver letto quest'ultimo da qualche parte, ma non sono riuscito a trovare un link proprio ora.
PolyGeo

Io non la penso così. Python viene utilizzato anche sui server. IMO generico meglio conservato.
blah238,

Risposte:


2

Penso che la licenza sarà il proiettile che potrebbe fermare (molto probabilmente QGIS) questo sogno diventato realtà. Dal comunicato stampa NVIDIA ha appena apposto il proprio segno di approvazione sulla capacità proprietaria di NumumPro di Continuum Analytics di accedere a NVIDIA CUDA. Nvidia non fornisce l'accesso nativo per Pythoner all'ambiente CUDA.

Se ho capito bene: il compilatore NumbraPro prende lo script Python, crea un codice C / C ++ ottimizzato che poi si compila sotto il compilatore di LLVM che supporta le GPU di NVIDIA. Ciò consente al linguaggio Python di operare con le prestazioni di linguaggi di livello inferiore, sebbene il tempo di compilazione sarà più lungo a causa del passaggio aggiuntivo, di quanto non lo avrebbe implementato in C / C ++ diretto.


Tuttavia, dando una rapida occhiata al Web, esiste già il supporto per i collegamenti Python a LLVM. Non ho familiarità con i collegamenti Python in LLVM, ma se è qualcosa di simile alla programmazione parallela in Python normale ... Lascerò qualcun altro a combattere più di 800 thread e come condividere i loro stati.

Quindi potrebbe essere solo una questione di trovare qualcuno disposto a lavorare su quel progetto per ottenere Python LLVM da GPU a GIS. Il lato oscuro di ciò richiederebbe un componente aggiuntivo, vale a dire il compilatore LLVM da includere in qualsiasi plug-in o suite GIS. Gonfiore extra.

Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.