Найти Ρ‚Π΅ΠΌΡƒ
10,2 тыс подписчиков

🌟 УскорСниС вычислСний Machine Learning


⏩НСдавно Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊΠΈ ΠΈΠ· AMD ΠΎΠΏΡƒΠ±Π»ΠΈΠΊΠΎΠ²Π°Π»ΠΈ Π½Π° GitHub исходныС тСксты ΠΊΠΎΠ΄Π° Π΄Ρ€Π°ΠΉΠ²Π΅Ρ€Π° для ΠΊΠ°Ρ€Ρ‚ с Π΄Π²ΠΈΠΆΠΊΠΎΠΌ Π½Π° Π±Π°Π·Π΅ Π°Ρ€Ρ…ΠΈΡ‚Π΅ΠΊΡ‚ΡƒΡ€Ρ‹ XDNA. ΠŸΡ€ΠΎΠ΅ΠΊΡ‚ прСдоставляСт срСдства для ускорСния вычислСний, связанныС с ΠΌΠ°ΡˆΠΈΠ½Π½Ρ‹ΠΌ ΠΎΠ±ΡƒΡ‡Π΅Π½ΠΈΠ΅ΠΌ ΠΈ ΠΎΠ±Ρ€Π°Π±ΠΎΡ‚ΠΊΠΎΠΉ сигналов (NPU, Neural Processing Unit).

⏩РСшСния NPU Π½Π° Π±Π°Π·Π΅ Π°Ρ€Ρ…ΠΈΡ‚Π΅ΠΊΡ‚ΡƒΡ€Ρ‹ XDNA поставляСтся Π² сСриях 7040 ΠΈ 8040 процСссоров AMD Ryzen, ускоритСлях AMD Alveo V70 ΠΈ SoC AMD Versal. Код ΠΏΡ€ΠΎΠ΅ΠΊΡ‚Π° написан Π½Π° языках Π‘ ΠΈ Π‘++, ΠΈ ΠΎΡ‚ΠΊΡ€Ρ‹Ρ‚ ΠΏΠΎΠ΄ Π»ΠΈΡ†Π΅Π½Π·ΠΈΠ΅ΠΉ GPLv2. Для Ρ€Π°Π±ΠΎΡ‚Ρ‹ Π΄Ρ€Π°ΠΉΠ²Π΅Ρ€Π° трСбуСтся ядро Linux 6.7 с ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΊΠΎΠΉ IOMMU SVA (Shared Virtual Addressing). ΠŸΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ½ΠΎΠ΅ обСспСчСниС Xilinx XRT Ρ‚Π°ΠΊΠΆΠ΅ Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΠΎ ΠΏΠΎΡΡ‚Ρ€ΠΎΠΈΡ‚ΡŒ для Ρ€Π°Π±ΠΎΡ‚Ρ‹ с этим Π΄Ρ€Π°ΠΉΠ²Π΅Ρ€ΠΎΠΌ ядра.

β©ΠžΠΏΡƒΠ±Π»ΠΈΠΊΠΎΠ²Π°Π½Π½Ρ‹ΠΉ AMD исходный ΠΊΠΎΠ΄ Π²ΠΊΠ»ΡŽΡ‡Π°Π΅Ρ‚ΡΡ Π² сСбя Π΄Ρ€Π°ΠΉΠ²Π΅Ρ€ для ядра Linux (amdxdna.ko) ΠΈ runtime-Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΡƒ (ΠΏΠ»Π°Π³ΠΈΠ½ xrt_plugin*-amdxdna) для использования интСрфСйса XRT (Xilinx Runtime Library), ΠΏΠΎΠ·Π²ΠΎΠ»ΡΡŽΡ‰Π΅Π³ΠΎ ΠΎΠ±Ρ€Π°Ρ‰Π°Ρ‚ΡŒΡΡ ΠΈΠ· ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΉ ΠΊ ΠΎΠ±Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊΠ°ΠΌ (kernel), выполняСмым Π½Π° сторонС Π°ΠΏΠΏΠ°Ρ€Π°Ρ‚Π½ΠΎΠ³ΠΎ ускоритСля. XRT позволяСт Π·Π°Π΄Π΅ΠΉΡΡ‚Π²ΠΎΠ²Π°Ρ‚ΡŒ NPU AMD Π² прилоТСниях Π½Π° ΠΎΠ±Ρ‹Ρ‡Π½Ρ‹Ρ… языках программирования.

β©ΠŸΡ€ΠΎΠ΅ΠΊΡ‚ прСдоставляСт Ρ€Π°Π·Π»ΠΈΡ‡Π½Ρ‹Π΅ ΡƒΡ€ΠΎΠ²Π½ΠΈ абстракции, ΠΎΡ‚ Π½ΠΈΠ·ΠΊΠΎΡƒΡ€ΠΎΠ²Π½Π΅Π²Ρ‹Ρ… API для C/C++ Π΄ΠΎ высокоуровнСвых привязок для Python ΠΈ ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ‚ΠΎΠ² для ΠΈΠ½Ρ‚Π΅Π³Ρ€Π°Ρ†ΠΈΠΈ с TensorFlow, PyTorch ΠΈ Caffe.

🌟 УскорСниС вычислСний Machine Learning  ⏩НСдавно Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊΠΈ ΠΈΠ· AMD ΠΎΠΏΡƒΠ±Π»ΠΈΠΊΠΎΠ²Π°Π»ΠΈ Π½Π° GitHub исходныС тСксты ΠΊΠΎΠ΄Π° Π΄Ρ€Π°ΠΉΠ²Π΅Ρ€Π° для ΠΊΠ°Ρ€Ρ‚ с Π΄Π²ΠΈΠΆΠΊΠΎΠΌ Π½Π° Π±Π°Π·Π΅ Π°Ρ€Ρ…ΠΈΡ‚Π΅ΠΊΡ‚ΡƒΡ€Ρ‹ XDNA.
1 ΠΌΠΈΠ½ΡƒΡ‚Π°