Próbuję wykonać iterację Fitted Value (FVI) w pythonie (polegającą na przybliżeniu funkcji 5-wymiarowej za pomocą interpolacji liniowej).scipy.interpolate.griddata odpowiednik w CUDA
scipy.interpolate.griddata doskonale się do tego nadaje. Jednak muszę wywołać procedurę interpolacji kilka tysięcy razy (ponieważ FVI jest algorytmem opartym na MC).
Zasadniczo zbiór punktów, w których funkcja jest znana, jest statyczny (i duży - na przykład 32k), ale punkty, które muszę przybliać (które są małymi zaburzeniami oryginalnego zestawu) są bardzo duże (32k x 5000 mówić).
Czy jest implementacja pliku scipy.interpolate.griddata, który został przeniesiony do CUDA? Alternatywnie, czy istnieje sposób, aby jakoś przyspieszyć obliczenia?
Dzięki.
Cześć, tak - ja nie ostatecznie kończy się robi większość prac sam. Spojrzałem na implementację find_simplex w scipy.spatial.Delauny i odkryłem, że podstawową ideę można z łatwością zrównoleglić dla wystarczającej liczby punktów. Zasadniczo uruchamiam 2 pętle - jedną, aby znaleźć (i zapisać) simpleks dla każdej próbki MC i jedną, aby wyszukać przechowywany simplex i obliczyć jego barycentryczne współrzędne dla interpolacji. Jest ograniczony przez pamięć wideo, ale jest bardzo szybki. – user1726633