9847 ΠΏΠΎΠ΄ΠΏΠΈΡΡΠΈΠΊΠΎΠ²
π Π’Π΅ΡΡ-Π΄ΡΠ°ΠΉΠ² PyTorch 2.0 ΠΈ Π·Π°Π³Π»ΡΠ΄ΡΠ²Π°Π΅ΠΌ ΠΏΠΎΠ΄ ΠΊΠ°ΠΏΠΎΡ Β«Π΄Π²ΡΡΠΊΠΈΒ»
JIT-ΠΊΠΎΠΌΠΏΠΈΠ»ΡΡΠΈΡ (Just-In-Time compilation) - ΡΡΠΎ ΠΏΡΠΎΡΠ΅ΡΡ, ΠΏΡΠΈ ΠΊΠΎΡΠΎΡΠΎΠΌ ΠΊΠΎΠ΄ Π½Π° Π²ΡΡΠΎΠΊΠΎΡΡΠΎΠ²Π½Π΅Π²ΠΎΠΌ ΡΠ·ΡΠΊΠ΅ ΠΏΡΠ΅ΠΎΠ±ΡΠ°Π·ΡΠ΅ΡΡΡ Π² ΠΊΠΎΠ΄ Π½Π° Π½ΠΈΠ·ΠΊΠΎΡΡΠΎΠ²Π½Π΅Π²ΠΎΠΌ ΡΠ·ΡΠΊΠ΅, ΠΊΠΎΡΠΎΡΡΠΉ ΠΌΠΎΠΆΠ΅Ρ Π±ΡΡΡ Π±ΡΡΡΡΠ΅Π΅ ΠΈ ΡΡΡΠ΅ΠΊΡΠΈΠ²Π½Π΅Π΅ ΠΈΡΠΏΠΎΠ»Π½Π΅Π½ ΠΏΡΠΎΡΠ΅ΡΡΠΎΡΠΎΠΌ ΠΈΠ»ΠΈ Π³ΡΠ°ΡΠΈΡΠ΅ΡΠΊΠΈΠΌ ΡΡΠΊΠΎΡΠΈΡΠ΅Π»Π΅ΠΌ. torch.compile() ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅Ρ TorchDynamo ΠΈ Π·Π°Π΄Π°Π½Π½ΡΠΉ Π±ΡΠΊΠ΅Π½Π΄ Π΄Π»Ρ JIT-ΠΊΠΎΠΌΠΏΠΈΠ»ΡΡΠΈΠΈ ΠΊΠΎΠ΄Π° PyTorch.
ΠΠ»Ρ ΡΠΎΠ³ΠΎ ΡΡΠΎΠ±Ρ ΠΏΠΎΠ½ΡΡΡ, ΠΊΠ°ΠΊ ΡΠ°Π±ΠΎΡΠ°Π΅Ρ torch.compile() ΡΠ°ΡΡΠΌΠΎΡΡΠΈΠΌ ΠΎΡΠ½ΠΎΠ²Π½ΡΠ΅ Π΅Π³ΠΎ ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½ΡΡ, ΠΊΠΎΡΠΎΡΡΠ΅ ΠΎΡΠ²Π΅ΡΠ°ΡΡ Π·Π° ΡΠ°Π·Π»ΠΈΡΠ½ΡΠ΅ Π°ΡΠΏΠ΅ΠΊΡΡ JIT-ΠΊΠΎΠΌΠΏΠΈΠ»ΡΡΠΈΠΈ ΠΊΠΎΠ΄Π° PyTorch:
β’ TorchDynamo β ΡΡΠΎ Π΄ΠΈΠ½Π°ΠΌΠΈΡΠ΅ΡΠΊΠΈΠΉ ΠΊΠΎΠΌΠΏΠΈΠ»ΡΡΠΎΡ, ΠΊΠΎΡΠΎΡΡΠΉ Π°Π½Π°Π»ΠΈΠ·ΠΈΡΡΠ΅Ρ ΠΊΠΎΠ΄ PyTorch ΠΈ ΠΎΠΏΡΠ΅Π΄Π΅Π»ΡΠ΅Ρ, ΠΊΠ°ΠΊΠΈΠ΅ ΡΠ°ΡΡΠΈ ΠΊΠΎΠ΄Π° ΠΌΠΎΠ³ΡΡ Π±ΡΡΡ ΡΠΊΠΎΠΌΠΏΠΈΠ»ΠΈΡΠΎΠ²Π°Π½Ρ Π² ΠΎΠΏΡΠΈΠΌΠΈΠ·ΠΈΡΠΎΠ²Π°Π½Π½ΡΠ΅ ΡΠ΄ΡΠ°. ΠΡΡΠ»Π΅ΠΆΠΈΠ²Π°Π΅Ρ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΡ Π² ΠΊΠΎΠ΄Π΅ ΠΈ ΠΏΠ΅ΡΠ΅ΠΊΠΎΠΌΠΏΠΈΠ»ΠΈΡΡΠ΅Ρ Π΅Π³ΠΎ ΠΏΡΠΈ Π½Π΅ΠΎΠ±Ρ
ΠΎΠ΄ΠΈΠΌΠΎΡΡΠΈ.
β’ AOT AutoGrad β ΡΡΠΎ ΡΠΈΡΡΠ΅ΠΌΠ° Π°Π²ΡΠΎΠΌΠ°ΡΠΈΡΠ΅ΡΠΊΠΎΠ³ΠΎ Π΄ΠΈΡΡΠ΅ΡΠ΅Π½ΡΠΈΡΠΎΠ²Π°Π½ΠΈΡ, ΠΊΠΎΡΠΎΡΠ°Ρ ΠΏΠΎΠ·Π²ΠΎΠ»ΡΠ΅Ρ Π²ΡΡΠΈΡΠ»ΡΡΡ Π³ΡΠ°Π΄ΠΈΠ΅Π½ΡΡ Π΄Π»Ρ ΡΠΊΠΎΠΌΠΏΠΈΠ»ΠΈΡΠΎΠ²Π°Π½Π½ΡΡ
ΡΠ΄Π΅Ρ. ΠΠ΅Π½Π΅ΡΠΈΡΡΠ΅Ρ ΠΊΠΎΠ΄ Π΄Π»Ρ ΠΎΠ±ΡΠ°ΡΠ½ΠΎΠ³ΠΎ ΡΠ°ΡΠΏΡΠΎΡΡΡΠ°Π½Π΅Π½ΠΈΡ ΠΎΡΠΈΠ±ΠΊΠΈ Π²ΠΎ Π²ΡΠ΅ΠΌΡ ΠΊΠΎΠΌΠΏΠΈΠ»ΡΡΠΈΠΈ, Π° Π½Π΅ Π²ΠΎ Π²ΡΠ΅ΠΌΡ ΠΈΡΠΏΠΎΠ»Π½Π΅Π½ΠΈΡ, ΡΡΠΎ ΡΡΠΊΠΎΡΡΠ΅Ρ ΠΏΡΠΎΡΠ΅ΡΡ ΠΎΠ±ΡΡΠ΅Π½ΠΈΡ Π½Π΅ΠΉΡΠΎΠ½Π½ΡΡ
ΡΠ΅ΡΠ΅ΠΉ.
β’ PrimTorch β ΡΡΠΎ Π½Π°Π±ΠΎΡ ΠΏΡΠΈΠΌΠΈΡΠΈΠ²Π½ΡΡ
ΠΎΠΏΠ΅ΡΠ°ΡΠΈΠΉ, ΠΊΠΎΡΠΎΡΡΠ΅ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΡΡΡΡ Π΄Π»Ρ ΠΏΠΎΡΡΡΠΎΠ΅Π½ΠΈΡ ΡΠΊΠΎΠΌΠΏΠΈΠ»ΠΈΡΠΎΠ²Π°Π½Π½ΡΡ
ΡΠ΄Π΅Ρ. ΠΠΊΠ»ΡΡΠ°Π΅Ρ Π² ΡΠ΅Π±Ρ Π±Π°Π·ΠΎΠ²ΡΠ΅ ΠΌΠ°ΡΠ΅ΠΌΠ°ΡΠΈΡΠ΅ΡΠΊΠΈΠ΅ ΠΈ Π»ΠΎΠ³ΠΈΡΠ΅ΡΠΊΠΈΠ΅ ΠΎΠΏΠ΅ΡΠ°ΡΠΈΠΈ, Π° ΡΠ°ΠΊΠΆΠ΅ ΠΎΠΏΠ΅ΡΠ°ΡΠΈΠΈ Π½Π°Π΄ ΡΠ΅Π½Π·ΠΎΡΠ°ΠΌΠΈ, ΡΠ°ΠΊΠΈΠ΅ ΠΊΠ°ΠΊ ΡΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅, ΡΠΌΠ½ΠΎΠΆΠ΅Π½ΠΈΠ΅, ΡΠ²Π΅ΡΡΠΊΠ° ΠΈ Ρ.Π΄.
β’ TorchInductor β ΡΡΠΎ Π±ΡΠΊΠ΅Π½Π΄ Π΄Π»Ρ JIT-ΠΊΠΎΠΌΠΏΠΈΠ»ΡΡΠΈΠΈ ΠΊΠΎΠ΄Π° PyTorch Π² ΠΎΠΏΡΠΈΠΌΠΈΠ·ΠΈΡΠΎΠ²Π°Π½Π½ΡΠ΅ ΡΠ΄ΡΠ° Π΄Π»Ρ ΡΠ°Π·Π½ΡΡ
ΡΡΡΡΠΎΠΉΡΡΠ². ΠΠΎΠ΄Π΄Π΅ΡΠΆΠΈΠ²Π°Π΅Ρ ΡΠ°Π·Π½ΡΠ΅ Π±ΡΠΊΠ΅Π½Π΄Ρ ΠΈ Π°Π΄Π°ΠΏΡΠΈΡΡΠ΅Ρ ΠΊΠΎΠ΄ PyTorch ΠΊ ΡΠΏΠ΅ΡΠΈΡΠΈΠΊΠ΅ ΠΊΠ°ΠΆΠ΄ΠΎΠ³ΠΎ ΡΡΡΡΠΎΠΉΡΡΠ²Π°.
ΠΠ°Π»Π΅Π΅ ΠΏΠΎΠ΄ΡΠΎΠ±Π½Π΅Π΅ ΡΠ°ΡΡΠΌΠΎΡΡΠΈΠΌ, ΠΊΠ°ΠΊ ΡΠ°Π±ΠΎΡΠ°ΡΡ ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½ΡΡ TorchDynamo ΠΈ TorchInductor ΠΈ ΠΊΠ°ΠΊ ΠΎΠ½ΠΈ Π²Π·Π°ΠΈΠΌΠΎΠ΄Π΅ΠΉΡΡΠ²ΡΡΡ Π΄ΡΡΠ³ Ρ Π΄ΡΡΠ³ΠΎΠΌ, ΡΡΠΎΠ±Ρ ΠΎΠ±Π΅ΡΠΏΠ΅ΡΠΈΡΡ JIT-ΠΊΠΎΠΌΠΏΠΈΠ»ΡΡΠΈΡ ΠΊΠΎΠ΄Π° PyTorch.
πΠ§ΠΈΡΠ°ΡΡ
1 ΠΌΠΈΠ½ΡΡΠ°
25Β ΠΈΡΠ»ΡΒ 2023