HyperAI himoyasi ostida 1-avgustda boʻlib oʻtgan Meet AI Compiler nomli toʻqqizinchi kompilyator salonida Huawei kompaniyasining AscendNPU IR arxitekti Hai Lizyuan AscendNPU IR ni taqdim etdi. Bu ochiq kompilyatsiya asosiy platformaga Ascend platformasiga koʻp tilli kirishni taʼminlaydi.
Pekin sunʼiy intellekt akademiyasi, TileRT, Tencent, Huawei va Zhiyuan Innovation jamoalarining nutqsozlar AI kompilyatorlarining evolyutsiyasini muhokama qildilar, til ifodasi, operator hisoblashlari, inferensni bajarish va ssenariylarni joylashtirishni qamrab oldilar.
Triton yordamida dasturlash Pythonga oʻxshash sintaksis va blokli tayl dasturlash tufayli yuqori samaradorlikka ega. Ushbu yondashuv ishlab chiquvchilarni instruksiyalar, konveyerlar va kristaldagi xotira kabi past darajadagi tafsilotlarni tushunish zaruratidan xalos qiladi, shu bilan operatorlarni ishlab chiqish uchun kirish toʻsiqini pasaytiradi. Tayl modeli tensor operatsiyalari abstraksiyasi va maʼlumotlarni ajratishga eʼtibor qaratish imkonini beradi, shu bilan birga umumiy xotirani boshqarish va xotirani birlashtirish avtomatlashtiriladi.
Triton dialektlari va rasmiy Triton GPU kompilyatori koʻp darajali IR abstraksiyalari ustiga qurilgan boʻlib, ular turli apparat platformalari uchun optimallashtirilgan. AscendNPU IR Ascend uskunalari uchun MLIR asosidagi tayl abstraksiyasi boʻlib, u kompilyatsiya optimallashtirishining asos boʻlib xizmat qiladi. U LLVM IR ga pastga bogʻlanadi va Ascend binar fayllariga kompilyatsiya qilinadi, shu bilan birga Triton kabi uchinchi tomon tillari va kompilyatorlari Ascendga moslashish uchun yuqoriga ulana oladi.
Asosiy xususiyatlarga kristaldagi resurslarning pastga abstraksiyasi, jumladan maʼlumot bloklari va xotira, shuningdek, A2/A3 arxitekturalaridan Ascend 950 ning SIMD va SIMT arxitekturalargacha boʻlgan tayl darajasidagi abstrakt operatsiyalar kiradi. Birinchi avlod arxitekturasi ikkita darajaga ega edi: koʻp oʻlchovli birlashmani optimallashtirish uchun apparatdan mustaqil HFusion va kristaldagi yadroni moslashtirish, kristaldagi xotirani moslashtirish va protsessor bloklarini moslashtirish masʼul boʻlgan apparatga bogʻliq HIVM.
Yadro moslashuvi vektor va kub operatsiyalarini tegishli yadrolarga avtomatik yuklaydi, maʼlumot almashinuvi, sinxronizatsiya va ish maydonini boshqaradi, shuningdek, CV konveyerini optimallashtiradi. Xotira moslashuvi mantiqiy tensorlarni fraktal matritsalar formatlari kabi kublar uchun maxsus boʻlgan fizik xotiraga aniqlaydi, shu bilan birga protsessor bloki moslashuvi yuqori samarali instruktsiyalar uchun vektorlashtirishni taʼminlaydi.
Arxitektura joriy yilgi Ascend 950 ga oʻtishda oʻzgarishlarga uchradi: HFusion barqaror qoldi, HIVM esa xotiraga asoslangan SIMD dan registrlarga asoslangan SIMD va SIMT gacha kengaydi, va CV birlashmasi kompilyatsiyasi endi global xotira orqali kub va vektor yadrolari oʻrtasida maʼlumot almashinuvi oʻrniga kristalda yaqin hamkorlikdan foydalanadi. Yangi funksiyalar quyidagilarni oʻz ichiga oladi: murakkab boshqaruv oqimi uchun yaxshilangan InsertCVLoadStore tahlili, while va ichki boshqaruv oqimlari uchun mustaqil buffer hisoblagichga ega MultiBuffer, mantiqiy yadrolarni for tsikllariga birlashtirish uchun AutoBlockify, kub-vektor tipidagi flash-attentionni konveyerlash uchun CV Pipeline va ikki vektor yadrosi bitta kub yadrosiga qarshi maʼlumotning yarmini qayta ishlovchi CV 1:2 splitting.
Triton-Ascend va AscendNPU IR endi birgalikda ishlab chiqish uchun ochiqdir. Ascend jamoatchiligi ochiq kodli stajirovkalarni va vazifalarni ishga tushirdi; har bir ishlab chiquvchi bir vazifani mukofot bilan olishi mumkin. Ascend muhiti boʻlmaganlar uchun jamoatchilik bepul Ascend HiDevLab hisoblash platformasini taqdim etadi, bu yerda ishlab chiquvchilar roʻyxatdan oʻtishi va 100 ta bepul hisoblash soatini olishlari mumkin.
