/ / Czy w OpenCL istnieją równoważne funkcje z różnymi podpisami dla nVidii i AMD APP SDK 3.0? - opencl, GPU

Czy istnieją równoważne funkcje z różnymi sygnaturami w OpenCL dla aplikacji nVidia i AMD APP SDK 3.0? - opencl, gpu

Muszę pomnożyć dwie macierze za pomocą AMD APP SDK 3.0. Znalazłem dobry przykład tego linku http://gpgpu-computing4.blogspot.ro/2009/09/matrix-multiplication-1.html

Problem polega na tym, że używa nVidia OpenCL i nie mogę znaleźć dwóch metod i jednej stałej. (Dwie metody: shrCheckError (...); oclLoadProgSource (...) Stała: shrTrue)

Próbowałem uwzględnić WSZYSTKIE nagłówki w projekcie, ale wciąż nie są zdefiniowane. Czy w pakiecie AMD APP SDK istnieją równoważne metody, których mógłbym użyć zamiast tych wymienionych powyżej?

Odpowiedzi:

1 dla odpowiedzi № 1

Najpierw dam ci trochę wyjaśnienia. Nie ma czegoś takiego jak NVidia OpenCL lub AMD OpenCL. Istnieje jedna specyfikacja OpenCL, a dostawcy wdrażają swoje sterowniki. Wspomniane zestawy SDK to tylko przykładowe kody dostarczone przez AMD i NVidia. Przejdźmy do odpowiedzi.

Przykład, którego używasz, faktycznie implementujemnożenie macierzy za pomocą funkcji narzędziowych NVidia dla OpenCL. Możesz dodać niezbędne pliki do swojego projektu i będą działać. Jeśli przejdziesz na tę stronę Przykłady NVidia OpenCLstamtąd możesz pobrać dowolny kod źródłowy. W plikach kodu źródłowego znajduje się folder o nazwie „common”, w którym można znaleźć niezbędne pliki, a mianowicie „oclUtils.h” i „oclUtils.cpp”. Dostępne są implementacje wymaganych funkcji.

Istnieje również folder o nazwie udostępniony. W tym folderze powinieneś być w stanie znaleźć funkcje i zmienne zaczynające się od shr, takie jak shrCheckError.