Co oznacza przyjęcie Pythona przez NVIDIA dla GPGPU dla GIS?

25

Dzisiaj NVIDIA ogłosiła wsparcie dla języka Python w jego smaku GPGPU ( CUDA ).

Manifold GIS wykorzystuje CUDA, aby umożliwić przyspieszone operacje rastrowe, ale nie jest to programowalne środowisko i ogranicza się do funkcji, które zapewnił jego programista.

Dzięki Pythonowi używanemu w wielu pakietach GIS, w tym ArcGIS i QGIS (wraz z pakietami numpy i sciypy), obsługiwanym jako język CUDA pierwszej klasy, jakie są szanse na wykorzystanie GPGPU w tych głównych pakietach GIS?

blah238
źródło
2
Czy ktoś próbował użyć dystrybucji Anaconda Python z ArcGIS / QGIS?
blah238,
2
ten artykuł dotyczy korzyści z operacji geoprzetwarzania opartych na GPU blogs.esri.com/esri/apl/2010/03/30/…
geogeek
Świetna lektura, ale nieco rozczarowujące jest to, że ten artykuł ma 3 lata - nie spodziewam się czegoś takiego z 10.2, ale może na Konferencji programistów w przyszłym tygodniu będą mieli pewne niespodzianki.
blah238,
Zastanawiam się tylko, czy tytuł i tag na tym tytule powinien mieć Desktop GIS i ArcGIS-desktop. Ponadto, czy może to być coś, co pojawi się w ArcGIS Pro. Myślałem, że gdzieś to przeczytałem, ale nie mogłem znaleźć linku.
PolyGeo
Nie wydaje mi się Python jest również używany na serwerach. Najlepiej zachowany ogólny IMO.
blah238,

Odpowiedzi:

2

Myślę, że licencjonowanie będzie kulą, która może zatrzymać (najprawdopodobniej QGIS) to spełnienie marzeń. Z komunikatu prasowego NVIDIA właśnie zatwierdza zastrzeżoną zdolność NumbraPro Continuum Analytics do dostępu do NVIDIA CUDA. Sama Nvidia nie zapewnia natywnego dostępu dla Pythonerów do środowiska CUDA.

Jeśli dobrze zrozumiałem: kompilator NumbraPro pobiera skrypt w języku Python, tworzy zoptymalizowany kod C / C ++, który następnie kompiluje w kompilatorze LLVM obsługującym procesory graficzne NVIDIA. Dzięki temu język Python działa z wydajnością języków niższego poziomu, chociaż czas kompilacji będzie dłuższy z powodu dodatkowego kroku, niż byłby w przypadku implementacji w prostym języku C / C ++.


Jednak po szybkim rozejrzeniu się po Internecie istnieje już obsługa powiązań Python z LLVM. Nie jestem zaznajomiony z powiązaniami Pythona w LLVM, ale jeśli jest to coś w rodzaju programowania równoległego w zwykłym Pythonie ... Pozwolę komuś innemu zapanować na ponad 800 wątkach i jak udostępniać ich stany.

Więc może to być tylko kwestia znalezienia kogoś, kto chciałby pracować nad tym projektem, aby przekonać Python LLVM do GPU do GIS. Ciemna strona tego wymagałaby dodatkowego komponentu, a mianowicie kompilatora LLVM do włączenia do dowolnej wtyczki lub pakietu GIS. Dodatkowe wzdęcia.

RomaH
źródło