Google ΠΏΡΠ±Π»ΠΈΠΊΡΠ²Π° Π°ΠΊΡΡΠ°Π»ΠΈΠ·Π°ΡΠΈΡ Π½Π° Π°ΡΠ΄ΠΈΠΎ ΠΊΠΎΠ΄Π΅ΠΊΠ° Lyra 0.0.2, ΠΊΠΎΠΉΡΠΎ Π΅ ΠΎΠΏΡΠΈΠΌΠΈΠ·ΠΈΡΠ°Π½ Π·Π° ΠΏΠΎΡΡΠΈΠ³Π°Π½Π΅ Π½Π° ΠΌΠ°ΠΊΡΠΈΠΌΠ°Π»Π½ΠΎ ΠΊΠ°ΡΠ΅ΡΡΠ²ΠΎ Π½Π° Π³Π»Π°ΡΠ° ΠΏΡΠΈ ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π°Π½Π΅ Π½Π° ΠΌΠ½ΠΎΠ³ΠΎ Π±Π°Π²Π½ΠΈ ΠΊΠΎΠΌΡΠ½ΠΈΠΊΠ°ΡΠΈΠΎΠ½Π½ΠΈ ΠΊΠ°Π½Π°Π»ΠΈ. ΠΠΎΠ΄Π΅ΠΊΡΡ Π±Π΅ΡΠ΅ ΠΎΡΠΊΡΠΈΡ Π² Π½Π°ΡΠ°Π»ΠΎΡΠΎ Π½Π° Π°ΠΏΡΠΈΠ», Π½ΠΎ Π±Π΅ΡΠ΅ Π΄ΠΎΡΡΠ°Π²Π΅Π½ Π·Π°Π΅Π΄Π½ΠΎ ΡΡΡ ΡΠΎΠ±ΡΡΠ²Π΅Π½Π° ΠΌΠ°ΡΠ΅ΠΌΠ°ΡΠΈΡΠ΅ΡΠΊΠ° Π±ΠΈΠ±Π»ΠΈΠΎΡΠ΅ΠΊΠ°. ΠΡΠ² Π²Π΅ΡΡΠΈΡ 0.0.2 ΡΠΎΠ·ΠΈ Π½Π΅Π΄ΠΎΡΡΠ°ΡΡΠΊ Π΅ Π΅Π»ΠΈΠΌΠΈΠ½ΠΈΡΠ°Π½ ΠΈ Π΅ ΡΡΠ·Π΄Π°Π΄Π΅Π½Π° ΠΎΡΠ²ΠΎΡΠ΅Π½Π° Π·Π°ΠΌΡΠ½Π° Π·Π° ΠΏΠΎΡΠΎΡΠ΅Π½Π°ΡΠ° Π±ΠΈΠ±Π»ΠΈΠΎΡΠ΅ΠΊΠ° - sparse_matmul, ΠΊΠΎΡΡΠΎ, ΠΊΠ°ΠΊΡΠΎ ΠΈ ΡΠ°ΠΌΠΈΡ ΠΊΠΎΠ΄Π΅ΠΊ, ΡΠ΅ ΡΠ°Π·ΠΏΡΠΎΡΡΡΠ°Π½ΡΠ²Π° ΠΏΠΎΠ΄ Π»ΠΈΡΠ΅Π½Π·Π° Apache 2.0. ΠΡΡΠ³ΠΈ ΠΏΠΎΠ΄ΠΎΠ±ΡΠ΅Π½ΠΈΡ Π²ΠΊΠ»ΡΡΠ²Π°Ρ Π²ΡΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡΡΠ° Π·Π° ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π°Π½Π΅ Π½Π° ΡΠΈΡΡΠ΅ΠΌΠ°ΡΠ° Π·Π° ΠΈΠ·Π³ΡΠ°ΠΆΠ΄Π°Π½Π΅ Π½Π° Bazel Ρ GCC ΠΊΠΎΠΌΠΏΠΈΠ»Π°ΡΠΎΡΠ° ΠΈ ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π°Π½Π΅ΡΠΎ Π½Π° ΡΠΎΠ·ΠΈ ΠΏΠ°ΠΊΠ΅Ρ ΠΏΠΎ ΠΏΠΎΠ΄ΡΠ°Π·Π±ΠΈΡΠ°Π½Π΅ Π² Linux Π²ΠΌΠ΅ΡΡΠΎ Bazel+Clang.
ΠΠ΅ΠΊΠ° ΡΠΈ ΠΏΡΠΈΠΏΠΎΠΌΠ½ΠΈΠΌ, ΡΠ΅ ΠΏΠΎ ΠΎΡΠ½ΠΎΡΠ΅Π½ΠΈΠ΅ Π½Π° ΠΊΠ°ΡΠ΅ΡΡΠ²ΠΎΡΠΎ Π½Π° ΠΏΡΠ΅Π΄Π°Π²Π°Π½ΠΈΡΠ΅ Π³Π»Π°ΡΠΎΠ²ΠΈ Π΄Π°Π½Π½ΠΈ ΠΏΡΠΈ Π½ΠΈΡΠΊΠΈ ΡΠΊΠΎΡΠΎΡΡΠΈ Lyra Π·Π½Π°ΡΠΈΡΠ΅Π»Π½ΠΎ ΠΏΡΠ΅Π²ΡΠ·Ρ
ΠΎΠΆΠ΄Π° ΡΡΠ°Π΄ΠΈΡΠΈΠΎΠ½Π½ΠΈΡΠ΅ ΠΊΠΎΠ΄Π΅ΡΠΈ, ΠΊΠΎΠΈΡΠΎ ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π°Ρ ΠΌΠ΅ΡΠΎΠ΄ΠΈ Π·Π° ΡΠΈΡΡΠΎΠ²Π° ΠΎΠ±ΡΠ°Π±ΠΎΡΠΊΠ° Π½Π° ΡΠΈΠ³Π½Π°Π»Π°. ΠΠ° ΠΏΠΎΡΡΠΈΠ³Π°Π½Π΅ Π½Π° Π²ΠΈΡΠΎΠΊΠΎΠΊΠ°ΡΠ΅ΡΡΠ²Π΅Π½ΠΎ Π³Π»Π°ΡΠΎΠ²ΠΎ ΠΏΡΠ΅Π΄Π°Π²Π°Π½Π΅ Π² ΡΡΠ»ΠΎΠ²ΠΈΡ Π½Π° ΠΎΠ³ΡΠ°Π½ΠΈΡΠ΅Π½ΠΎ ΠΊΠΎΠ»ΠΈΡΠ΅ΡΡΠ²ΠΎ ΠΏΡΠ΅Π΄Π°Π²Π°Π½Π° ΠΈΠ½ΡΠΎΡΠΌΠ°ΡΠΈΡ, Π² Π΄ΠΎΠΏΡΠ»Π½Π΅Π½ΠΈΠ΅ ΠΊΡΠΌ ΠΊΠΎΠ½Π²Π΅Π½ΡΠΈΠΎΠ½Π°Π»Π½ΠΈΡΠ΅ ΠΌΠ΅ΡΠΎΠ΄ΠΈ Π·Π° Π°ΡΠ΄ΠΈΠΎ ΠΊΠΎΠΌΠΏΡΠ΅ΡΠΈΡ ΠΈ ΠΏΡΠ΅ΠΎΠ±ΡΠ°Π·ΡΠ²Π°Π½Π΅ Π½Π° ΡΠΈΠ³Π½Π°Π»Π°, Lyra ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π° ΠΌΠΎΠ΄Π΅Π» Π½Π° ΡΠ΅Ρ, Π±Π°Π·ΠΈΡΠ°Π½ Π½Π° ΡΠΈΡΡΠ΅ΠΌΠ° Π·Π° ΠΌΠ°ΡΠΈΠ½Π½ΠΎ ΠΎΠ±ΡΡΠ΅Π½ΠΈΠ΅, ΠΊΠΎΡΡΠΎ Π²ΠΈ ΠΏΠΎΠ·Π²ΠΎΠ»ΡΠ²Π° Π΄Π° ΠΏΡΠ΅ΡΡΠ·Π΄Π°Π΄Π΅ΡΠ΅ Π»ΠΈΠΏΡΠ²Π°ΡΠ°ΡΠ° ΠΈΠ½ΡΠΎΡΠΌΠ°ΡΠΈΡ Π²ΡΠ· ΠΎΡΠ½ΠΎΠ²Π° Π½Π° ΡΠΈΠΏΠΈΡΠ½ΠΈ ΡΠ΅ΡΠ΅Π²ΠΈ Ρ
Π°ΡΠ°ΠΊΡΠ΅ΡΠΈΡΡΠΈΠΊΠΈ. ΠΠΎΠ΄Π΅Π»ΡΡ, ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π°Π½ Π·Π° Π³Π΅Π½Π΅ΡΠΈΡΠ°Π½Π΅ Π½Π° Π·Π²ΡΠΊΠ°, Π΅ ΠΎΠ±ΡΡΠ΅Π½ Ρ ΠΏΠΎΠΌΠΎΡΡΠ° Π½Π° Π½ΡΠΊΠΎΠ»ΠΊΠΎ Ρ
ΠΈΠ»ΡΠ΄ΠΈ ΡΠ°ΡΠ° Π³Π»Π°ΡΠΎΠ²ΠΈ Π·Π°ΠΏΠΈΡΠΈ Π½Π° ΠΏΠΎΠ²Π΅ΡΠ΅ ΠΎΡ 70 Π΅Π·ΠΈΠΊΠ°. ΠΡΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡΠ΅Π»Π½ΠΎΡΡΡΠ° Π½Π° ΠΏΡΠ΅Π΄Π»ΠΎΠΆΠ΅Π½Π°ΡΠ° ΡΠ΅Π°Π»ΠΈΠ·Π°ΡΠΈΡ Π΅ Π΄ΠΎΡΡΠ°ΡΡΡΠ½Π° Π·Π° ΠΊΠΎΠ΄ΠΈΡΠ°Π½Π΅ ΠΈ Π΄Π΅ΠΊΠΎΠ΄ΠΈΡΠ°Π½Π΅ Π½Π° ΡΠ΅Ρ Π² ΡΠ΅Π°Π»Π½ΠΎ Π²ΡΠ΅ΠΌΠ΅ Π½Π° ΡΠΌΠ°ΡΡΡΠΎΠ½ΠΈ ΠΎΡ ΡΡΠ΅Π΄Π½Π° ΡΠ΅Π½Π°, ΡΡΡ Π·Π°Π±Π°Π²ΡΠ½Π΅ Π½Π° ΠΏΡΠ΅Π΄Π°Π²Π°Π½Π΅ΡΠΎ Π½Π° ΡΠΈΠ³Π½Π°Π»Π° ΠΎΡ 90 ΠΌΠΈΠ»ΠΈΡΠ΅ΠΊΡΠ½Π΄ΠΈ.
ΠΠ·ΡΠΎΡΠ½ΠΈΠΊ: opennet.ru