ΠŸΡ€Π΅Π΄ΡΡ‚Π°Π²Π΅Π½ Π΅ OpenXLA, инструмСнтарий Π·Π° оптимизация ΠΈ компилация Π½Π° ΠΌΠΎΠ΄Π΅Π»ΠΈ Π·Π° машинно ΠΎΠ±ΡƒΡ‡Π΅Π½ΠΈΠ΅.

Най-Π³ΠΎΠ»Π΅ΠΌΠΈΡ‚Π΅ ΠΊΠΎΠΌΠΏΠ°Π½ΠΈΠΈ, Π·Π°Π½ΠΈΠΌΠ°Π²Π°Ρ‰ΠΈ сС с Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠΈ Π² сфСрата Π½Π° ΠΌΠ°ΡˆΠΈΠ½Π½ΠΎΡ‚ΠΎ ΠΎΠ±ΡƒΡ‡Π΅Π½ΠΈΠ΅, прСдставиха ΠΏΡ€ΠΎΠ΅ΠΊΡ‚Π° OpenXLA, цСлящ ΡΡŠΠ²ΠΌΠ΅ΡΡ‚Π½ΠΎ Ρ€Π°Π·Π²ΠΈΡ‚ΠΈΠ΅ Π½Π° инструмСнти Π·Π° ΠΊΠΎΠΌΠΏΠΈΠ»ΠΈΡ€Π°Π½Π΅ ΠΈ ΠΎΠΏΡ‚ΠΈΠΌΠΈΠ·ΠΈΡ€Π°Π½Π΅ Π½Π° ΠΌΠΎΠ΄Π΅Π»ΠΈ Π·Π° систСми Π·Π° машинно ΠΎΠ±ΡƒΡ‡Π΅Π½ΠΈΠ΅. ΠŸΡ€ΠΎΠ΅ΠΊΡ‚ΡŠΡ‚ обСдинява Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠ°Ρ‚Π° Π½Π° инструмСнти, ΠΊΠΎΠΈΡ‚ΠΎ позволяват ΡƒΠ½ΠΈΡ„ΠΈΡ†ΠΈΡ€Π°Π½Π΅ Π½Π° компилацията Π½Π° ΠΌΠΎΠ΄Π΅Π»ΠΈ, ΠΏΠΎΠ΄Π³ΠΎΡ‚Π²Π΅Π½ΠΈ във Ρ„Ρ€Π΅ΠΉΠΌΠ²ΠΎΡ€Ρ†ΠΈΡ‚Π΅ TensorFlow, PyTorch ΠΈ JAX, Π·Π° Π΅Ρ„Π΅ΠΊΡ‚ΠΈΠ²Π½ΠΎ ΠΎΠ±ΡƒΡ‡Π΅Π½ΠΈΠ΅ ΠΈ изпълнСниС Π½Π° Ρ€Π°Π·Π»ΠΈΡ‡Π½ΠΈ GPU ΠΈ спСциализирани ускоритСли. Π’ ΡΡŠΠ²ΠΌΠ΅ΡΡ‚Π½Π°Ρ‚Π° Ρ€Π°Π±ΠΎΡ‚Π° ΠΏΠΎ ΠΏΡ€ΠΎΠ΅ΠΊΡ‚Π° сС Π²ΠΊΠ»ΡŽΡ‡ΠΈΡ…Π° ΠΊΠΎΠΌΠΏΠ°Π½ΠΈΠΈ ΠΊΠ°Ρ‚ΠΎ Google, NVIDIA, AMD, Intel, Meta, Apple, Arm, Alibaba ΠΈ Amazon.

ΠžΡ‡Π°ΠΊΠ²Π° сС, Ρ‡Π΅ Π±Π»Π°Π³ΠΎΠ΄Π°Ρ€Π΅Π½ΠΈΠ΅ Π½Π° ΠΎΠ±Π΅Π΄ΠΈΠ½Π΅Π½ΠΈΠ΅Ρ‚ΠΎ Π½Π° усилията Π½Π° Π²ΠΎΠ΄Π΅Ρ‰ΠΈ изслСдоватСлски Π΅ΠΊΠΈΠΏΠΈ ΠΈ прСдставитСли Π½Π° общността, Ρ‰Π΅ сС стимулира Ρ€Π°Π·Π²ΠΈΡ‚ΠΈΠ΅Ρ‚ΠΎ Π½Π° систСмитС Π·Π° машинно ΠΎΠ±ΡƒΡ‡Π΅Π½ΠΈΠ΅ ΠΈ Ρ‰Π΅ сС Ρ€Π΅ΡˆΠΈ ΠΏΡ€ΠΎΠ±Π»Π΅ΠΌΡŠΡ‚ с фрагмСнтацията Π½Π° инфраструктурата Π·Π° Ρ€Π°Π·Π»ΠΈΡ‡Π½ΠΈ Ρ„Ρ€Π΅ΠΉΠΌΠ²ΠΎΡ€Ρ†ΠΈ ΠΈ ΠΎΠ±ΠΎΡ€ΡƒΠ΄Π²Π°Π½Π΅. OpenXLA позволява Π΅Ρ„Π΅ΠΊΡ‚ΠΈΠ²Π½Π° ΠΏΠΎΠ΄Π΄Ρ€ΡŠΠΆΠΊΠ° Π½Π° Ρ€Π°Π·Π»ΠΈΡ‡Π½ΠΎ ΠΎΠ±ΠΎΡ€ΡƒΠ΄Π²Π°Π½Π΅, нСзависимо ΠΎΡ‚ Ρ‚ΠΎΠ²Π°, Π½Π° Π±Π°Π·Π° какъв Ρ„Ρ€Π΅ΠΉΠΌΠ²ΠΎΡ€ΠΊ Π΅ създадСна ΠΌΠΎΠ΄Π΅Π»ΡŠΡ‚ Π·Π° машинно ΠΎΠ±ΡƒΡ‡Π΅Π½ΠΈΠ΅. ΠžΡ‡Π°ΠΊΠ²Π° сС, Ρ‡Π΅ Π±Π»Π°Π³ΠΎΠ΄Π°Ρ€Π΅Π½ΠΈΠ΅ Π½Π° OpenXLA Ρ‰Π΅ успСС Π΄Π° сС Π½Π°ΠΌΠ°Π»ΠΈ Π²Ρ€Π΅ΠΌΠ΅Ρ‚ΠΎ Π·Π° ΠΎΠ±ΡƒΡ‡Π΅Π½ΠΈΠ΅ Π½Π° ΠΌΠΎΠ΄Π΅Π»ΠΈ, Π΄Π° сС повиши пропускната способност, Π΄Π° сС намалят забавянията, Π΄Π° сС намалят Ρ€Π°Π·Ρ…ΠΎΠ΄ΠΈΡ‚Π΅ Π·Π° изчислитСлни рСсурси ΠΈ Π΄Π° сС ΡΡŠΠΊΡ€Π°Ρ‚ΠΈ Π²Ρ€Π΅ΠΌΠ΅Ρ‚ΠΎ Π·Π° ΠΈΠ·Π»ΠΈΠ·Π°Π½Π΅ Π½Π° ΠΏΡ€ΠΎΠ΄ΡƒΠΊΡ‚Π° Π½Π° ΠΏΠ°Π·Π°Ρ€Π°.

ΠŸΡ€Π΅Π΄ΡΡ‚Π°Π²Π΅Π½ Π΅ OpenXLA, инструмСнтарий Π·Π° оптимизация ΠΈ компилация Π½Π° ΠΌΠΎΠ΄Π΅Π»ΠΈ Π·Π° машинно ΠΎΠ±ΡƒΡ‡Π΅Π½ΠΈΠ΅.

OpenXLA сС ΡΡŠΡΡ‚ΠΎΠΈ ΠΎΡ‚ Ρ‚Ρ€ΠΈ основни ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ‚Π°, Ρ‡ΠΈΠΉΡ‚ΠΎ ΠΊΠΎΠ΄ сС разпространява ΠΏΠΎΠ΄ лицСнзия Apache 2.0:

  • XLA (Accelerated Linear Algebra) β€” ΠΊΠΎΠΌΠΏΠΈΠ»Π°Ρ‚ΠΎΡ€, позволяващ ΠΎΠΏΡ‚ΠΈΠΌΠΈΠ·ΠΈΡ€Π°Π½Π΅ Π½Π° ΠΌΠΎΠ΄Π΅Π»ΠΈ Π·Π° машинно ΠΎΠ±ΡƒΡ‡Π΅Π½ΠΈΠ΅ Π·Π° високо ΠΏΡ€ΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡ‚Π΅Π»Π½ΠΎ изпълнСниС Π½Π° Ρ€Π°Π·Π»ΠΈΡ‡Π½ΠΈ Ρ…Π°Ρ€Π΄ΡƒΠ΅Ρ€Π½ΠΈ ΠΏΠ»Π°Ρ‚Ρ„ΠΎΡ€ΠΌΠΈ, Π²ΠΊΠ»ΡŽΡ‡ΠΈΡ‚Π΅Π»Π½ΠΎ GPU, CPU ΠΈ спСциализирани ускоритСли ΠΎΡ‚ Ρ€Π°Π·Π»ΠΈΡ‡Π½ΠΈ ΠΏΡ€ΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡ‚Π΅Π»ΠΈ.
  • StableHLO β€” спСцификация ΠΈ основна рСализация Π½Π° Π½Π°Π±ΠΎΡ€ ΠΎΡ‚ високостСпСнни ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΈ (HLO, High-Level Operations) Π·Π° ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π°Π½Π΅ Π² ΠΌΠΎΠ΄Π΅Π»ΠΈ Π½Π° систСми Π·Π° машинно ΠΎΠ±ΡƒΡ‡Π΅Π½ΠΈΠ΅. Π’ΠΎΠΉ слуТи ΠΊΠ°Ρ‚ΠΎ прослойка ΠΌΠ΅ΠΆΠ΄Ρƒ Ρ„Ρ€Π΅ΠΉΠΌΠ²ΠΎΡ€Ρ†ΠΈΡ‚Π΅ Π·Π° машинно ΠΎΠ±ΡƒΡ‡Π΅Π½ΠΈΠ΅ ΠΈ ΠΊΠΎΠΌΠΏΠΈΠ»Π°Ρ‚ΠΎΡ€ΠΈΡ‚Π΅, ΠΏΡ€Π΅ΠΎΠ±Ρ€Π°Π·ΡƒΠ²Π°Ρ‰ΠΈ ΠΌΠΎΠ΄Π΅Π»Π° Π·Π° изпълнСниС Π½Π° ΠΊΠΎΠ½ΠΊΡ€Π΅Ρ‚Π½ΠΎ ΠΎΠ±ΠΎΡ€ΡƒΠ΄Π²Π°Π½Π΅. ΠŸΡ€ΠΎΡΠ»ΠΎΠΉΠΊΠΈ Π·Π° Π³Π΅Π½Π΅Ρ€ΠΈΡ€Π°Π½Π΅ Π½Π° ΠΌΠΎΠ΄Π΅Π»ΠΈ във Ρ„ΠΎΡ€ΠΌΠ°Ρ‚ StableHLO са ΠΏΠΎΠ΄Π³ΠΎΡ‚Π²Π΅Π½ΠΈ Π·Π° Ρ„Ρ€Π΅ΠΉΠΌΠ²ΠΎΡ€Ρ†ΠΈΡ‚Π΅ PyTorch, TensorFlow ΠΈ JAX. Π—Π° основа Π½Π° StableHLO Π΅ ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π°Π½ Π½Π°Π±ΠΎΡ€ΡŠΡ‚ MHLO, ΠΊΠΎΠΉΡ‚ΠΎ Π΅ Ρ€Π°Π·ΡˆΠΈΡ€Π΅Π½ с ΠΏΠΎΠ΄Π΄Ρ€ΡŠΠΆΠΊΠ° Π½Π° сСриализация ΠΈ вСрсиониранС.
  • IREE (Π‘Ρ€Π΅Π΄Π° ВыполнСния ΠŸΡ€ΠΎΠΌΠ΅ΠΆΡƒΡ‚ΠΎΡ‡Π½ΠΎΠ³ΠΎ ΠŸΡ€Π΅Π΄ΡΡ‚Π°Π²Π»Π΅Π½ΠΈΡ) β€” компилятор ΠΈ runtime, ΠΏΡ€Π΅ΠΎΠ±Ρ€Π°Π·ΡƒΡŽΡ‰ΠΈΠΉ ΠΌΠΎΠ΄Π΅Π»ΠΈ машинного обучСния Π² ΡƒΠ½ΠΈΠ²Π΅Ρ€ΡΠ°Π»ΡŒΠ½ΠΎΠ΅ ΠΏΡ€ΠΎΠΌΠ΅ΠΆΡƒΡ‚ΠΎΡ‡Π½ΠΎΠ΅ прСдставлСниС, основанноС Π½Π° Ρ„ΠΎΡ€ΠΌΠ°Ρ‚Π΅ MLIR (ΠœΠ½ΠΎΠ³ΠΎΡƒΡ€ΠΎΠ²Π½Π΅Π²ΠΎΠ΅ ΠŸΡ€ΠΎΠΌΠ΅ΠΆΡƒΡ‚ΠΎΡ‡Π½ΠΎΠ΅ ΠŸΡ€Π΅Π΄ΡΡ‚Π°Π²Π»Π΅Π½ΠΈΠ΅) ΠΎΡ‚ ΠΏΡ€ΠΎΠ΅ΠΊΡ‚Π° LLVM. Из особСнностСй стоит ΠΎΡ‚ΠΌΠ΅Ρ‚ΠΈΡ‚ΡŒ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡ‚ΡŒ ΠΏΡ€Π΅Π΄Π²Π°Ρ€ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎΠΉ компиляции (ahead-of-time), ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΊΡƒ управлСния ΠΏΠΎΡ‚ΠΎΠΊΠΎΠΌ, Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡ‚ΡŒ использования динамичСских элСмСнтов Π² модСлях, ΠΎΠΏΡ‚ΠΈΠΌΠΈΠ·Π°Ρ†ΠΈΡŽ для Ρ€Π°Π·Π½Ρ‹Ρ… CPU ΠΈ GPU, Π° Ρ‚Π°ΠΊΠΆΠ΅ Π½ΠΈΠ·ΠΊΠΈΠ΅ Π½Π°ΠΊΠ»Π°Π΄Π½Ρ‹Π΅ расходы.

Основни прСдимства Π½Π° инструмСнта OpenXLA:

  • ΠŸΠΎΡΡ‚ΠΈΠ³Π°Π½Π΅ Π½Π° ΠΎΠΏΡ‚ΠΈΠΌΠ°Π»Π½Π° производитСлност Π±Π΅Π· нСобходимост ΠΎΡ‚ Π·Π°Π΄ΡŠΠ»Π±ΠΎΡ‡Π°Π²Π°Π½Π΅ Π² написванСто Π½Π° ΠΊΠΎΠ΄, спСцифичСн Π·Π° ΠΎΠΏΡ€Π΅Π΄Π΅Π»Π΅Π½ΠΈ устройства. ΠŸΡ€Π΅Π΄ΠΎΡΡ‚Π°Π²ΡΠ½Π΅ Π½Π° Π³ΠΎΡ‚ΠΎΠ²ΠΈ ΠΎΠΏΡ‚ΠΈΠΌΠΈΠ·Π°Ρ†ΠΈΠΈ, Π²ΠΊΠ»ΡŽΡ‡ΠΈΡ‚Π΅Π»Π½ΠΎ опростяванС Π½Π° Π°Π»Π³Π΅Π±Ρ€ΠΈΡ‡Π½ΠΈ ΠΈΠ·Ρ€Π°Π·ΠΈ, Π΅Ρ„Π΅ΠΊΡ‚ΠΈΠ²Π½ΠΎ Ρ€Π°Π·ΠΏΠΎΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ Π² ΠΏΠ°ΠΌΠ΅Ρ‚Ρ‚Π°, ΠΏΠ»Π°Π½ΠΈΡ€Π°Π½Π΅ Π½Π° ΠΈΠ·ΠΏΡŠΠ»Π½Π΅Π½ΠΈΠ΅Ρ‚ΠΎ с ΠΎΠ³Π»Π΅Π΄ Π½Π° намаляванС Π½Π° ΠΏΠΈΠΊΠΎΠ²ΠΎΡ‚ΠΎ ΠΏΠΎΡ‚Ρ€Π΅Π±Π»Π΅Π½ΠΈΠ΅ Π½Π° ΠΏΠ°ΠΌΠ΅Ρ‚ ΠΈ прСтоварвания.
  • ΠžΠΏΡ€ΠΎΡΡ‚ΡΠ²Π°Π½Π΅ Π½Π° ΠΌΠ°Ρ‰Π°Π±ΠΈΡ€Π°Π½Π΅Ρ‚ΠΎ ΠΈ ΠΏΠ°Ρ€Π°Π»Π΅Π»ΠΈΠ·ΠΈΡ€Π°Π½Π΅Ρ‚ΠΎ Π½Π° изчислСнията. На Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊΠ° Π΅ Π΄ΠΎΡΡ‚Π°Ρ‚ΡŠΡ‡Π½ΠΎ Π΄Π° Π΄ΠΎΠ±Π°Π²ΠΈ Π°Π½ΠΎΡ‚Π°Ρ†ΠΈΠΈ Π·Π° подмноТСство ΠΊΡ€ΠΈΡ‚ΠΈΡ‡Π½ΠΈ Ρ‚Π΅Π½Π·ΠΎΡ€ΠΈ, Π½Π° Π±Π°Π·Π°Ρ‚Π° Π½Π° ΠΊΠΎΠΈΡ‚ΠΎ ΠΊΠΎΠΌΠΏΠΈΠ»Π°Ρ‚ΠΎΡ€ΡŠΡ‚ ΠΌΠΎΠΆΠ΅ Π°Π²Ρ‚ΠΎΠΌΠ°Ρ‚ΠΈΡ‡Π½ΠΎ Π΄Π° Π³Π΅Π½Π΅Ρ€ΠΈΡ€Π° ΠΊΠΎΠ΄ Π·Π° ΠΏΠ°Ρ€Π°Π»Π΅Π»Π½ΠΈ изчислСния.
  • ΠžΡΠΈΠ³ΡƒΡ€ΡΠ²Π°Π½Π΅ Π½Π° прСносимост Ρ‡Ρ€Π΅Π· ΠΏΠΎΠ΄Π΄Ρ€ΡŠΠΆΠΊΠ° Π½Π° Ρ€Π°Π·Π»ΠΈΡ‡Π½ΠΈ Ρ…Π°Ρ€Π΄ΡƒΠ΅Ρ€Π½ΠΈ ΠΏΠ»Π°Ρ‚Ρ„ΠΎΡ€ΠΌΠΈ, ΠΊΠ°Ρ‚ΠΎ GPU AMD ΠΈ NVIDIA, CPU Π½Π° Π±Π°Π·Π°Ρ‚Π° Π½Π° Π°Ρ€Ρ…ΠΈΡ‚Π΅ΠΊΡ‚ΡƒΡ€ΠΈ x86 ΠΈ ARM, ML-ускоритСли TPU ΠΎΡ‚ Google, IPU AWS Trainium Inferentia, Graphcore ΠΈ Cerebras Wafer-Scale Engine.
  • ΠŸΠΎΠ΄Π΄Ρ€ΡŠΠΆΠΊΠ° Π½Π° ΡΠ²ΡŠΡ€Π·Π²Π°Ρ‰ΠΈ Ρ€Π°Π·ΡˆΠΈΡ€Π΅Π½ΠΈΡ с рСализация Π½Π° Π΄ΠΎΠΏΡŠΠ»Π½ΠΈΡ‚Π΅Π»Π½ΠΈ Π²ΡŠΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡ‚ΠΈ, ΠΊΠ°Ρ‚ΠΎ ΠΏΠΎΠ΄Π΄Ρ€ΡŠΠΆΠΊΠ° Π·Π° написванС Π½Π° ΠΏΡ€ΠΈΠΌΠΈΡ‚ΠΈΠ²ΠΈ Π½Π° дълбоко машинно ΠΎΠ±ΡƒΡ‡Π΅Π½ΠΈΠ΅ с ΠΏΠΎΠΌΠΎΡ‰Ρ‚Π° Π½Π° CUDA, HIP, SYCL, Triton ΠΈ Π΄Ρ€ΡƒΠ³ΠΈ Π΅Π·ΠΈΡ†ΠΈ Π·Π° ΠΏΠ°Ρ€Π°Π»Π΅Π»Π½ΠΈ изчислСния. Π’ΡŠΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡ‚ Π·Π° Ρ€ΡŠΡ‡Π½ΠΎ настройванС Π½Π° тСснитС мСста Π² ΠΌΠΎΠ΄Π΅Π»ΠΈΡ‚Π΅.

Π˜Π·Ρ‚ΠΎΡ‡Π½ΠΈΠΊ: opennet.ru

ΠšΡƒΠΏΠ΅Ρ‚Π΅ Π½Π°Π΄Π΅ΠΆΠ΄Π΅Π½ хостинг Π·Π° сайтовС със Π·Π°Ρ‰ΠΈΡ‚Π° ΠΎΡ‚ DDoS, VPS ΠΈ VDS ΡΡŠΡ€Π²ΡŠΡ€ΠΈ πŸ”₯ ΠšΡƒΠΏΠ΅Ρ‚Π΅ Π½Π°Π΄Π΅ΠΆΠ΄Π΅Π½ хостинг Π·Π° сайтовС със Π·Π°Ρ‰ΠΈΡ‚Π° ΠΎΡ‚ DDoS, VPS ΠΈ VDS ΡΡŠΡ€Π²ΡŠΡ€ΠΈ | ProHoster