Obliczenia naukowe w języku Python z nowoczesnymi procesorami graficznymi z podwójną precyzją

14

Czy ktoś tutaj używał obliczeń naukowych o podwójnej precyzji z procesorami graficznymi nowej generacji (np. K20) za pośrednictwem Pythona?

Wiem, że ta technologia szybko się rozwija, ale jaki jest obecnie najlepszy sposób? GPU nie wchodzi w zakres popularnych naukowych bibliotek Pythona numpy i scipy, a ja chciałem użyć theano, ale wydaje się, że używa GPU tylko precyzji float32. Wiem, że Google może dostarczyć wyniki wyszukiwania dla Pythona GPU, ale mam nadzieję na więcej wglądu niż listę projektów, które mogą, ale nie muszą być w drodze do ich twórcy.

kliper
źródło
4
Gdybym tego potrzebował, prawdopodobnie użyłbym PyOpenCL . Kodowanie GPU ogólnego przeznaczenia jest wciąż dość niskie (spróbuj interfejsu OpenCL C, ciężko to działa). Jednak PyOpenCL wydaje się abstrahować w jak największym stopniu i wydaje się, że ma za sobą znaczny impet.
boyfarrell
1
„nowa generacja” powinna być dość podobna do wcześniejszej serii Tesli z podwójną precyzją, przy czym prawdopodobnie jedynym zastrzeżeniem jest wersja CUDA / sterownik. Dlatego metody podwójnej precyzji, które działają z Teslą (np. M2070) i ​​bieżącą wersją CUDA / Driver, powinny również działać z K20.
internetscooter
1
Może tutaj ( stackoverflow.com/questions/5957554/python-gpu-programming ) może ci pomóc.
eusoubrasileiro
2
Theano mają nowy back-end GPU, który obsługuje float64. Nie jest jeszcze ukończony, ale w tym tygodniu opublikujemy go w wersji beta.
nouiz
Dzięki @nouiz - Sugeruję dodanie komentarza jako odpowiedzi podczas wydawania.
Aron Ahmadia,

Odpowiedzi:

3

Nie wiem, dlaczego umieściłem tę odpowiedź w komentarzu ...

Gdybym tego potrzebował, prawdopodobnie użyłbym PyOpenCL . Kodowanie GPU ogólnego przeznaczenia jest wciąż dość niskie (spróbuj interfejsu OpenCL C, ciężko to działa). Jednak PyOpenCL wydaje się abstrahować w jak największym stopniu i wydaje się, że ma za sobą znaczny impet.

boyfarrell
źródło
Ech, to się zdarza. Czasami robię to samo.
Geoff Oxberry,