W tym przykładzie pokazano implementację open computing language (OpenCLTM)obliczeń opartych wyłącznie na języku 3D. W przeliczaniu order-k znak każdy punkt wyjściowy to funkcja 3k+1 punktów wejściowych(k sąsiednich punktów w każdymkierunku). Ze względu na strukturę obliczeń istnieje znaczna ilość danych do ponownego wykorzystania w różnych punktach wyjściowych, co prowadzi do optymalizacji, które starają się zminimalizować nadmiarowy dostęp do pamięci.
Jądro w tym przykładzie wykorzystuje ponowne wykorzystanie danych za pomocą wzorca obliczeń woluminu 3D (3D analogowego wzorca okna przesuwnego), aby zmniejszyć wymagania dotyczące przepustowości pamięci w porównaniu z tradycyjnymi implementacjami OpenCL. Dodatkowe szczegóły można znaleźć w pakiecie przykładowego.
Wydajność obliczeniowa różnicy skończonej 3D
Zamów Tezdemia |
Rozmiar woluminu |
Miliony punktów/s |
---|---|---|
8 |
384 × 384 × 384 × 384 |
2200 |
Funkcje
- Wydajna objętość 3D
- Jądro pojedynczego elementu roboczego
Pobrań
Przykład projektu zawiera kod źródłowy urządzenia OpenCL (.cl) oraz aplikacji hosta. W celu kompilacji aplikacji hosta pakiet Linux* zawiera plik Makefile, a pakiet Windows* zawiera projekt Microsoft Visual Studio 2010.
Następujące pliki do pobrania są podane dla tego przykładu:
Użytkowanie tego projektu podlega i podlega warunkom umowy licencyjnej na projekt referencyjny sprzętu.
Wymagania dotyczące oprogramowania i sprzętu
Ten przykład projektu wymaga następujących narzędzi:
- oprogramowanie Intel® FPGA wersji 17.1 lub nowszej
- Intel® FPGA SDK dla OpenCL w wersji 17.1 lub nowszej
- W systemie Linux: GNU Make i gcc
- W systemie Windows*: Microsoft Visual Studio 2010*
Aby pobrać narzędzia do projektowania firmy Intel, odwiedź stronę pobierania OpenCL. Wymagania dotyczące odpowiedniego systemu operacyjnego są takie same jak wymagania zestawu SDK Intel FPGA dla OpenCL.
OpenCL i logo OpenCL są znakami towarowymi firmy Apple Inc. użytymi za zgodą Khronos.
* Produkt jest oparty na opublikowanej specyfikacji Khronos i przeszedł proces testowania zgodności Khronos. Aktualny status zgodności można znaleźć na stronie www.khronos.org/conformance.