π₯ NVIDIA ΠΎΡΠΊΡΡΠ»Π° ΠΈΡΡ ΠΎΠ΄Π½ΡΠΉ ΠΊΠΎΠ΄ CUDA Tile dialect ΠΈ Π±Π°ΠΉΡΠΊΠΎΠ΄Π°. ΠΠΎΠΌΠΏΠ°Π½ΠΈΡ Π²ΡΠ»ΠΎΠΆΠΈΠ»Π° Π² open source ΠΏΡΠΎΠ΅ΠΊΡ CUDA Tile, ΠΊΠΎΡΠΎΡΡΠΉ ΡΠ°ΡΡΠΈΡΡΠ΅Ρ ΡΠΊΠΎΡΠΈΡΡΠ΅ΠΌΡ MLIR ΠΈ Π΄Π°ΡΡ ΡΠ°Π·ΡΠ°Π±ΠΎΡΡΠΈΠΊΠ°ΠΌ Π½ΠΎΠ²ΡΠ΅ ΠΈΠ½ΡΡΡΡΠΌΠ΅Π½ΡΡ Π΄Π»Ρ Π³Π΅Π½Π΅ΡΠ°ΡΠΈΠΈ CUDA-ΠΊΠΎΠ΄Π° Π½Π° Π±ΠΎΠ»Π΅Π΅ Π½ΠΈΠ·ΠΊΠΎΠΌ ΠΈ ΠΊΠΎΠ½ΡΡΠΎΠ»ΠΈΡΡΠ΅ΠΌΠΎΠΌ ΡΡΠΎΠ²Π½Π΅. Π§ΡΠΎ Π²Ρ ΠΎΠ΄ΠΈΡ Π² ΡΠ΅Π»ΠΈΠ·: - CUDA Tile MLIR dialect - ΠΠΎΠ΄Π΄Π΅ΡΠΆΠΊΠ° ΡΠ΅ΡΠΈΠ°Π»ΠΈΠ·Π°ΡΠΈΠΈ ΠΈ Π΄Π΅ΡΠ΅ΡΠΈΠ°Π»ΠΈΠ·Π°ΡΠΈΠΈ Π±Π°ΠΉΡΠΊΠΎΠ΄Π° - Python-Π±ΠΈΠ½Π΄ΠΈΠ½Π³ΠΈ Π΄Π»Ρ MLIR, ΠΏΠΎΠ·Π²ΠΎΠ»ΡΡΡΠΈΠ΅ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠ½ΠΎ ΡΡΡΠΎΠΈΡΡ IR - ΠΠ°Π±ΠΎΡ conformance-ΡΠ΅ΡΡΠΎΠ² Π§ΡΠΎ ΡΡΠΎ Π΄Π°ΡΡ ΡΠ°Π·ΡΠ°Π±ΠΎΡΡΠΈΠΊΠ°ΠΌ: - ΠΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡΡ Π½Π°ΠΏΡΡΠΌΡΡ ΠΈΠ½ΡΠ΅Π³ΡΠΈΡΠΎΠ²Π°ΡΡ CUDA Tile Π² ΡΠ²ΠΎΠΈ ΠΏΡΠΎΠ΅ΠΊΡΡ - ΠΠ΅Π½Π΅ΡΠ°ΡΠΈΡ CUDA Tile dialect ΠΈΠ»ΠΈ Π±Π°ΠΉΡΠΊΠΎΠ΄Π° Π½Π°ΡΠΈΠ²Π½ΠΎ ΡΠ΅ΡΠ΅Π· MLIR - ΠΠΎΠ»Π΅Π΅ ΡΠΎΠ½ΠΊΠΈΠΉ ΠΊΠΎΠ½ΡΡΠΎΠ»Ρ Π½Π°Π΄ Π²ΡΡΠΈΡΠ»Π΅Π½ΠΈΡΠΌΠΈ ΠΈ ΠΎΠΏΡΠΈΠΌΠΈΠ·Π°ΡΠΈΡΠΌΠΈ ΠΏΠΎΠ΄ GPU CUDA Tile - ΡΡΠΎ ΡΠ°Π³ ΠΊ Π±ΠΎΠ»Π΅Π΅ ΠΌΠΎΠ΄ΡΠ»ΡΠ½ΠΎΠΉ, ΠΊΠΎΠΌΠΏΠΈΠ»ΡΡΠΎΡΠ½ΠΎ-ΠΎΡΠΈΠ΅Π½ΡΠΈΡΠΎΠ²Π°Π½Π½ΠΎΠΉ ΡΠΊΠΎΡΠΈΡΡΠ΅ΠΌΠ΅ CUDA, Π³Π΄Π΅ ΡΠΏΡΠ°Π²Π»Π΅Π½ΠΈΠ΅ Π²ΡΡΠΈΡΠ»Π΅Π½ΠΈΡΠΌΠΈ ΡΠΌΠ΅ΡΠ°Π΅ΡΡΡ Ρ ΡΡΡΠ½ΠΎΠ³ΠΎ CUDA-ΠΊΠΎΠ΄Π° Π² ΡΡΠΎΡΠΎΠ½Ρ ΡΠΎΡΠΌΠ°Π»ΡΠ½ΡΡ IR ΠΈ Π°Π²ΡΠΎΠΌΠ°ΡΠΈΡΠ΅ΡΠΊΠΈΡ ΠΎΠΏΡΠΈΠΌΠΈΠ·Π°ΡΠΈΠΉ. ΠΡΠΎΠ΅ΠΊΡ ΡΡΠ°Π» ΡΠ΅Π·ΡΠ»ΡΡΠ°ΡΠΎΠΌ ΡΠΎΠ²ΠΌΠ΅ΡΡΠ½ΠΎΠΉ ΡΠ°Π±ΠΎΡΡ Π½Π΅ΡΠΊΠΎΠ»ΡΠΊΠΈΡ ΠΊΠΎΠΌΠ°Π½Π΄ Π²Π½ΡΡΡΠΈ NVIDIA ΠΈ ΠΏΠΎΠ΄ΡΡΡΠΊΠΈΠ²Π°Π΅Ρ ΡΡΡΠ°ΡΠ΅Π³ΠΈΡ ΠΊΠΎΠΌΠΏΠ°Π½ΠΈΠΈ ΠΏΠΎ ΡΠ°Π·Π²ΠΈΡΠΈΡ MLIR ΠΊΠ°ΠΊ ΠΊΠ»ΡΡΠ΅Π²ΠΎΠ³ΠΎ ΡΠ»ΠΎΡ Π΄Π»Ρ Π±ΡΠ΄ΡΡΠΈΡ GPU-Π²ΡΡΠΈΡΠ»Π΅Π½ΠΈΠΉ. β’ NVIDIA Developer: https://developer.nvidia.com/cuda/tile β’ CUDA Tile Specification: https://docs.nvidia.com/cuda/tile-ir/13.1/index.html