αααααα Khronos αααααα½ααα»αααααΌααααα»αααΆαα’αα·αααααααααααααααα½ααΆα OpenGL, Vulkan αα·α OpenCL α
αααα»ααααααααΆαααααΆ
αα½αα±ααααααααααΆαααααα»αα
- OpenCL 3.0 API α₯α‘αΌαααααααααααααααααααααααααΆααα’αααααα OpenCL (1.2, 2.x) ααααα·ααααααααΌαααααααααΆααααΆααααΆα ααααα‘αααααααΆααααααααΈαα½ααα OpenCL 3.0 αααααααΌααααααααΆααααα»αααΆααααααΈααα»αααΆαααααΌαααΆααααααΆααα½ααααα αΌαααααΆααααααΆαααααααααααααΉαααααΌαααΆααααααΆαααααα»ααααααααααααααΎαααααα·ααααααααΆαααααααα monolithic αα OpenCL 1.2/2.X α
- ααΆααααα»αααΆααααα’αα»αααααΆα OpenCL 1.2 ααα»ααααααααααααΌαααΆααααααΆαααΆα αΆαααΆα α α αΎααααααααα·αααααΆααα’αααααααΆαααααΎα‘αΎααα αααα»ααααααααα αα ααααα OpenCL 2.x ααααΌαααΆαα αΆααααααΆααααΆαααααΎαα αα·ααΈααΆααααααααααΉαααααΎα±ααααΆααΆααααααΆααααα½ααααα»αααΆααααααΎαααΆαα’αα»ααααααααΆαααααα½ααααααααΌαααααΆααΆαα½α OpenCL 3.0 α αΎαααΉααααααΈααα½αααα§αααααααα OpenCL 3.0 α’αΆα ααααΎααΆαα α§ααΆα ααα αααα»αα αα»αααα·αα’αΆα α’αα»ααααααΆαααΆαααα OpenCL 3.0 ααααα·αα αΆαααΆα αα’αα»αααααααααααα·ααα OpenCL 2.x ααΆααααΆααα ααΎααααΈα αΌαααααΎαααααααα·αααααΆααΆααααα α α·ααα OpenCL 3.0 ααΆααααααααααααααααααααα½αααΆααααααααα’αα»ααααΆαα±ααα’αααααΆααααααααΆαααΆααααααααΆαα» API ααΈαα½αα ααααΌα ααΆαααΆααααΌαα·αααα
- ααΆαααααα½αααααα½αααΆαα½αααΉααααααααα·ααααααααΆαα ααααααΆαααΈαα»αααααΎα±ααααΆααΆααααααΆααααα½ααααα»αααΆαααααααααααα·ααΈαα OpenCL 3.0 α αααααα·ααΈ OpenCL 1.2 ααΉαα’αΆα ααααΎαααΆαααΎα§ααααααααααΆαααα OpenCL 3.0 ααααα·αααΆαααΆαααααααα αααααα·ααΈ OpenCL 2.x ααααΉααα·αααααΌαααΆαααΆαααααΆααααααΌαααΌαααα αααΆαααΆααα·ααααΆα OpenCL 3.0 αααααααΌααα»αααΆααααααααΌαααΆα (ααΎααααΈααΆααΆααΆαααΌαααΆαα αααααΆαααα’ααΆαα αααααα·ααΈ OpenCL 2.x ααααΌαααΆαααααΆαα’αααααααααααα½αααΆααααα ααΎααααΈααΆααααααααΆαααΆαααααααααΆαααααααααα·ααα OpenCL 2.x αααα»αβααααΌαβααΆαβααβααααΎ)α α’αααα’αα·αααααααααααα·ααΈαααααΆαααααΆαααΆαα’αα»αααα OpenCL α’αΆα ααααΎα±αααααααΎαα‘αΎαααΌαααα·ααααααααα½ααααααΆαααΆααααα½ααα OpenCL 3.0 αααααααααααααααΎαααΆααααα½ααααααΆααααΆαα α API ααΆααααΆαα αα·ααααααΎααα»αααΆαααααα·α αααααααΆααααααααΆα
- ααΆααααααΆαααααα OpenCL 3.0 ααααΌαααΆααααααΉαααΆαα½αααα·ααααΆα ααααααααααα αα·αααααααααΆααααΆααααααααΆαααααα·ααααααααΌαα
SPIR-V αααααααΌαααΆαααααΎααα Vulkan API αααααα ααΆαααΆαααααααααΆααααΆααααααΆαα SPIR-V 1.3 ααααΌαααΆααα½ααααα
αΌααα
αααα»αααααΌα OpenCL 3.0 ααΆαααααααα·αααααααα
α
α·αααα ααΆααααααΆαααααΎααααΆααααααΆαααααα·αααααα
SPIR-V ααΆαααΆαααααααααΆααααααα·ααααα·ααΆαααΆαα½ααααα»αααααααΌαααΆααααααααααααΆααααααΌααα»αααααΌαααα
- ααΆαααααααααΆαααΆαααααααααΆααααααααααααααααααΆααααααΎαααΆαααααα·ααααα·ααΆα DMA α’ααααΆα (Asynchronous DMA) αααααΆαααααα αααα»ααααααααΈαααΌα DSP ααΆαα½αααΉαααΆαα αΌαααααΎα’αααα αα αΆααααααααΆααα Asynchronous DMA ααααΎα±ααααΆα’αΆα ααααΎααααα·ααααα·ααΆα DMA ααΎααααΈααααααα·αααααααααΆαα’αααα αα αΆαααα αα·αααΌαααααΆαααααα·αααααΆααααα ααααααΆαα½αααΉαααΆαααααΆ α¬ααααα·ααααα·ααΆαααααααα·ααααααααααααααα
- C Parallel Programming Extensions ααΆααααΆααααααΌαααΆαααααΎαα
αα
α»ααααααααΆααα
αααα 3.0 α αΎαααΆαα’αα·αααααααααααααααααααΆααΆ OpenCL αααααΆαα C ++ ααααΌαααΆααααααααα αααα»αααΆααααα α·ααααααααααα "C++ for OpenCL" α C ++ αααααΆαα OpenCL ααΊααΆαααααα·ααΈα ααααααααααΆαααΌαααααΆαααΎ Clang/LLVM αα·αααΆαααααΆα ααΊααα C ++ αα·α OpenCL C αα ααΆααααΆαααααα·αααααα SPIR-V α¬αααααΌααααΆαααΈαααααα·αααΆαα ααΆααααααΆαααααΆα SPIR-V αααααα αααΆααα½αααααα»αααααΆαααααααα·ααΈ C++ αααααααΎαααααΆαααααααΌ SYCL ααααα½αααααα½ααααααΆααααααΎααααααα·ααΈαααΆαααΆα‘ααα - αααααα·ααΈα
αααααααααΌαααΆαααααΎα‘αΎααααααΆααααΆαααααΆα OpenCL ααΆαααα Vulkan API
clspv ααααααααααααΊααα OpenCL αα ααΆααααΆα Vulkan SPIR-V αα·ααααααΆαααα½ααclvk ααΎααααΈααΎαααααΎαααΆα OpenCL API ααΎααααΈααααΎαααΆαααΎ Vulkan α
ααααα: opennet.ru