ΠΠ° 5 ΠΌΠ°ΠΉ ΠΊΠΎΠ½ΡΠΎΡΡΠΈΡΠΌΡΡ Khronos ΠΏΡΠ΅Π΄ΡΡΠ°Π²ΠΈ ΡΠΏΠ΅ΡΠΈΡΠΈΠΊΠ°ΡΠΈΡ OpenCL 3.1 β ΠΏΠΎΡΠ΅Π΄Π½ΠΎΡΠΎ ΠΎΠ±Π½ΠΎΠ²Π»Π΅Π½ΠΈΠ΅ Π½Π° ΠΎΡΠ²ΠΎΡΠ΅Π½ΠΈΡ ΡΡΠ°Π½Π΄Π°ΡΡ Π·Π° ΠΊΡΠΎΡΡΠΏΠ»Π°ΡΡΠΎΡΠΌΠ΅Π½ΠΈ ΠΈΠ·ΡΠΈΡΠ»Π΅Π½ΠΈΡ Π½Π° CPU, GPU, DSP, NPU ΠΈ Π΄ΡΡΠ³ΠΈ ΡΡΠΊΠΎΡΠΈΡΠ΅Π»ΠΈ. ΠΠ·Π΄Π°Π²Π°Π½Π΅ΡΠΎ Π΅ ΠΏΠΎ ΠΏΠΎΠ²ΠΎΠ΄ ΠΊΠΎΠ½ΡΠ΅ΡΠ΅Π½ΡΠΈΡΡΠ° IWOCL 2026 ΠΈ ΡΠ°Π·Π²ΠΈΠ²Π° ΠΌΠΎΠ΄Π΅Π»Π° OpenCL 3.x, Π² ΠΊΠΎΠΉΡΠΎ ΡΠ°ΡΡ ΠΎΡ Π²ΡΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡΠΈΡΠ΅ ΠΏΡΡΠ²ΠΎΠ½Π°ΡΠ°Π»Π½ΠΎ ΡΠ΅ ΡΠ΅ΡΡΠ²Π°Ρ ΠΊΠ°ΡΠΎ ΡΠ°Π·ΡΠΈΡΠ΅Π½ΠΈΡ, Π° ΡΠ»Π΅Π΄ ΡΠΎΠ²Π° ΡΠ΅ ΠΏΡΠ΅Π½Π°ΡΠΎΡΠ²Π°Ρ Π² Π·Π°Π΄ΡΠ»ΠΆΠΈΡΠ΅Π»Π½ΠΎΡΠΎ ΡΠ΄ΡΠΎ Π½Π° ΡΡΠ°Π½Π΄Π°ΡΡΠ°.
ΠΠ»Π°Π²Π½Π°ΡΠ° ΠΏΡΠΎΠΌΡΠ½Π° Π² OpenCL 3.1 Π΅ Π·Π°Π΄ΡΠ»ΠΆΠΈΡΠ΅Π»Π½Π°ΡΠ° ΠΏΠΎΠ΄Π΄ΡΡΠΆΠΊΠ° Π½Π° Π·Π°ΡΠ΅ΠΆΠ΄Π°Π½Π΅ Π½Π° ΠΈΠ·ΡΠΈΡΠ»ΠΈΡΠ΅Π»Π½ΠΈ ΡΠ΄ΡΠ° Π² ΡΠΎΡΠΌΠ°Ρ SPIR-V Π²ΡΠ² Π²ΡΠΈΡΠΊΠΈ ΡΡΠ²ΠΌΠ΅ΡΡΠΈΠΌΠΈ ΡΠ΅Π°Π»ΠΈΠ·Π°ΡΠΈΠΈ. SPIR-V ΡΠ΅ ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π° ΠΊΠ°ΡΠΎ ΠΏΡΠ΅Π½ΠΎΡΠΈΠΌΠΎ ΠΌΠ΅ΠΆΠ΄ΠΈΠ½Π½ΠΎ ΠΏΡΠ΅Π΄ΡΡΠ°Π²ΡΠ½Π΅, ΠΊΠΎΠ΅ΡΠΎ ΠΌΠΎΠΆΠ΅ Π΄Π° ΡΠ΅ Π³Π΅Π½Π΅ΡΠΈΡΠ°, Π² ΡΠ°ΡΡΠ½ΠΎΡΡ, ΡΡΠ΅Π· LLVM/Clang ΠΈ SPIR-V LLVM Translator. Π’ΠΎΠ²Π° ΡΡΡΠ±Π²Π° Π΄Π° ΠΎΠΏΡΠΎΡΡΠΈ ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π°Π½Π΅ΡΠΎ Π½Π° OpenCL ΠΊΠ°ΡΠΎ back-end Π·Π° SYCL, chipStar ΠΈ ΡΠΏΠ΅ΡΠΈΠ°Π»ΠΈΠ·ΠΈΡΠ°Π½ΠΈ ΠΊΠΎΠΌΠΏΠΈΠ»Π°ΡΠΎΡΠΈ, ΠΊΠ°ΠΊΡΠΎ ΠΈ Π΄Π° ΠΏΠΎΠ·Π²ΠΎΠ»ΠΈ ΡΠ°Π·ΠΏΡΠΎΡΡΡΠ°Π½Π΅Π½ΠΈΠ΅ΡΠΎ Π½Π° ΡΠ΄ΡΠ° Π½Π΅ ΠΊΠ°ΡΠΎ ΠΈΠ·Ρ ΠΎΠ΄Π΅Π½ ΠΊΠΎΠ΄, Π° Π² ΠΏΡΠ΅Π΄Π²Π°ΡΠΈΡΠ΅Π»Π½ΠΎ ΠΊΠΎΠΌΠΏΠΈΠ»ΠΈΡΠ°Π½Π° ΠΌΠ΅ΠΆΠ΄ΠΈΠ½Π½Π° ΡΠΎΡΠΌΠ°.
Π ΡΠ΄ΡΠΎΡΠΎ Π½Π° OpenCL 3.1 ΡΡΡΠΎ ΡΠ° ΠΏΡΠ΅Π½Π΅ΡΠ΅Π½ΠΈ Π²ΡΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡΠΈ, Π²Π°ΠΆΠ½ΠΈ Π·Π° AI- ΠΈ HPC-Π½Π°ΡΠΎΠ²Π°ΡΠ²Π°Π½ΠΈΡΡΠ°: ΠΏΠΎΠ΄Π³ΡΡΠΏΠΈ Ρ ΠΎΠΏΠ΅ΡΠ°ΡΠΈΠΈ shuffle/rotate ΠΈ ΡΠ°Π·ΡΠΈΡΠ΅Π½ Π½Π°Π±ΠΎΡ ΠΎΡ ΡΠΈΠΏΠΎΠ²Π΅, ΡΠΊΠ°Π»ΡΡΠ½ΠΈ ΠΏΡΠΎΠΈΠ·Π²Π΅Π΄Π΅Π½ΠΈΡ Π½Π° ΡΠ΅Π»ΠΈ ΡΠΈΡΠ»Π° Ρ Π²Π°ΡΠΈΠ°Π½ΡΠΈ Π½Π° Π½Π°ΡΠΈΡΠ°Π½Π΅ ΠΈ Π°ΠΊΡΠΌΡΠ»ΠΈΡΠ°Π½Π΅, Π½ΠΎΠ²ΠΈ Π±ΠΈΡΠΎΠ²ΠΈ ΠΎΠΏΠ΅ΡΠ°ΡΠΈΠΈ, Π·Π°ΠΏΠΈΡΠ²Π°Π½Π΅ Π·Π° ΠΏΡΠ΅ΠΏΠΎΡΡΡΠΈΡΠ΅Π»Π΅Π½ ΡΠ°Π·ΠΌΠ΅Ρ Π½Π° Π»ΠΎΠΊΠ°Π»Π½Π°ΡΠ° ΡΠ°Π±ΠΎΡΠ½Π° Π³ΡΡΠΏΠ° ΠΈ ΡΡΠ°Π½Π΄Π°ΡΡΠ½ΠΎ Π·Π°ΠΏΠΈΡΠ²Π°Π½Π΅ Π·Π° UUID Π½Π° ΡΡΡΡΠΎΠΉΡΡΠ²ΠΎΡΠΎ, ΡΡΠ³Π»Π°ΡΡΠ²Π°Π½ΠΎ Ρ ΠΏΠΎΠ²Π΅Π΄Π΅Π½ΠΈΠ΅ΡΠΎ Π½Π° Vulkan.
ΠΡ Π΄ΡΡΠ³ΠΈΡΠ΅ ΠΏΡΠΎΠΌΠ΅Π½ΠΈ ΠΌΠΎΠ³Π°Ρ Π΄Π° ΡΠ΅ ΠΎΡΠ±Π΅Π»Π΅ΠΆΠ°Ρ Π½ΠΎΠ²ΠΈ Π΅Π·ΠΈΠΊΠΎΠ²ΠΈ Π²ΡΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡΠΈ Π±Π΅Π· Π½Π΅ΠΎΠ±Ρ ΠΎΠ΄ΠΈΠΌΠΎΡΡ ΠΎΡ ΡΠ²ΡΡΠ·Π²Π°Π½Π΅ Π½Π° ΡΠ°Π·ΡΠΈΡΠ΅Π½ΠΈΡ, ΠΏΠΎΠ΄ΠΎΠ±ΡΠ΅Π½ printf Π² OpenCL C Ρ ΠΏΠΎΠ΄Π΄ΡΡΠΆΠΊΠ° Π½Π° ΠΌΠΎΠ΄ΠΈΡΠΈΠΊΠ°ΡΠΎΡΠΈ z ΠΈ t, ΡΡΠΎΡΠ½ΡΠ²Π°Π½Π΅ Π½Π° ΡΠ΅ΠΌΠ°Π½ΡΠΈΠΊΠ°ΡΠ° Π½Π° CL_DEVICE_HOST_UNIFIED_MEMORY, Π²ΡΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡΡΠ° Π΄Π° ΡΠ΅ ΠΏΡΠ΅Π΄Π°Π²Π° Π½ΡΠ»Π΅Π² ΡΠ°Π·ΠΌΠ΅Ρ Π·Π° Π°ΡΠ³ΡΠΌΠ΅Π½ΡΠΈ Π·Π° Π»ΠΎΠΊΠ°Π»Π½Π°ΡΠ° ΠΏΠ°ΠΌΠ΅Ρ ΠΈ ΠΎΠΏΡΠΎΡΡΡΠ²Π°Π½Π΅ Π½Π° ΡΠΈΠ½Ρ ΡΠΎΠ½ΠΈΠ·Π°ΡΠΈΡΡΠ° ΠΏΡΠΈ ΠΏΡΠΎΠ²Π΅ΡΠΊΠ° Π½Π° ΡΡΠ±ΠΈΡΠΈΡ Π² ΡΡΡΡΠΎΡΠ½ΠΈΠ΅ CL_COMPLETE.
Π Π°Π±ΠΎΡΠ°ΡΠ° ΠΏΠΎ ΡΠ΅Π°Π»ΠΈΠ·Π°ΡΠΈΠΈΡΠ΅ Π½Π° OpenCL 3.1 Π²Π΅ΡΠ΅ ΡΠ΅ ΠΈΠ·Π²ΡΡΡΠ²Π° ΠΎΡ Arm, Imagination, Intel ΠΈ Qualcomm. Π‘ΡΠ΅Π΄ ΠΎΡΠ²ΠΎΡΠ΅Π½ΠΈΡΠ΅ ΡΠ΅Π°Π»ΠΈΠ·Π°ΡΠΈΠΈ Khronos ΠΎΡΠ΄Π΅Π»Π½ΠΎ ΡΠΏΠΎΠΌΠ΅Π½Π°Π²Π° Rusticl Π² ΡΡΡΡΠ°Π²Π° Π½Π° Mesa, PoCL ΠΈ CLVK. Π‘ΡΡΠΎ ΡΠ°ΠΊΠ° ΠΏΡΠΎΠ΄ΡΠ»ΠΆΠ°Π²Π° ΡΠ°Π·Π²ΠΈΡΠΈΠ΅ΡΠΎ Π½Π° ΡΠ»ΠΎΠ΅Π²Π΅ Π·Π° ΡΡΠ²ΠΌΠ΅ΡΡΠΈΠΌΠΎΡΡ, ΡΡΠ°ΡΡΠΈΡΠ°ΡΠΈ OpenCL Π²ΡΡΡ Ρ Vulkan ΠΈ DirectX 12, ΠΊΠΎΠ΅ΡΠΎ ΡΡΡΠ±Π²Π° Π΄Π° ΡΠ°Π·ΡΠΈΡΠΈ Π΄ΠΎΡΡΡΠΏΠ½ΠΎΡΡΡΠ° Π½Π° OpenCL Π½Π° ΡΠΈΡΡΠ΅ΠΌΠΈ Π±Π΅Π· Π½Π°ΡΠΈΠ²Π½ΠΈ Π΄ΡΠ°ΠΉΠ²Π΅ΡΠΈ.
Π‘Π»Π΅Π΄Π²Π°ΡΠΈΡΠ΅ Π½Π°ΠΏΡΠ°Π²Π»Π΅Π½ΠΈΡ Π½Π° ΡΠ°Π·Π²ΠΈΡΠΈΠ΅, ΠΊΠΎΠΈΡΠΎ Khronos ΠΏΠΎΡΠΎΡΠ²Π°, ΡΠ° Π±ΡΡΠ΅ΡΠΈ Π·Π° ΠΊΠΎΠΌΠ°Π½Π΄ΠΈ Π·Π° Π½ΠΈΡΠΊΠΎΡΡΠΎΠ²Π½Π΅Π²ΠΎ ΠΏΠΎΠ²ΡΠΎΡΠ½ΠΎ ΡΡΠ°ΡΡΠΈΡΠ°Π½Π΅ Π½Π° ΠΊΠΎΠΌΠ°Π½Π΄ΠΈ, ΠΏΠΎΠ΄ΠΎΠ±ΡΠ΅Π½ΠΈΡ Π½Π° Π΅Π΄ΠΈΠ½Π½Π°ΡΠ° ΠΎΠ±ΡΠ° ΠΏΠ°ΠΌΠ΅Ρ, ΠΎΠΏΠ΅ΡΠ°ΡΠΈΠΈ Ρ ΠΌΠ°ΡΡΠΈΡΠΈ Π² ΡΡΠ²ΠΌΠ΅ΡΡΠ΅Π½ ΡΠ΅ΠΆΠΈΠΌ, Π½ΠΎΠ²ΠΈ AI-ΡΠΈΠΏΠΎΠ²Π΅ ΠΊΠ°ΡΠΎ Π½ΠΈΠ·ΠΊΠΎΡΠΎΡΠ½ΠΈ ΡΠΎΡΠΌΠ°ΡΠΈ, ΠΊΠ°ΠΊΡΠΎ ΠΈ ΠΏΠΎΠ΄ΠΎΠ±ΡΠ΅Π½ΠΈΡ Π·Π° Π²ΡΠ½ΡΠ½Π° ΠΏΠ°ΠΌΠ΅Ρ ΠΈ ΡΡΠ²ΠΌΠ΅ΡΡΠΈΠΌΠΎΡΡ Ρ Vulkan, DirectX 12 ΠΈ ΠΌΠ΅Π΄ΠΈΠΉΠ½ΠΈΡΠ΅ ΠΏΠ°ΠΉΠΏΠ»Π°ΠΉΠ½ΠΈ.
ΠΠ·ΡΠΎΡΠ½ΠΈΠΊ: linux.org.ru
