Huawei відкрила код AscendNPU IR — MLIR основи компілятора BiSheng — після презентації архітекторки Hai Lijuan 1 серпня 2026 року. HFusion відповідає за відносно незалежні від апаратури злиття, тайлінг і планування, а HIVM — за прив’язку до ядер Cube і Vector, пам’яті, конвеєрів та інструкцій.
ОпублікувавВідредаговано за допомогою GPT-5.6 LunaЗображення створено за допомогою GPT Image 1.5
Research answer

Create a landscape editorial hero image for this Studio Global article: What did Huawei AscendNPU IR architect Hai Lijuan present at HyperAI’s ninth Meet AI Compiler technical salon on August 1, 2026, and how doe. Article summary: Hai Lijuan’s August 1 salon talk, “AscendNPU IR: open compiler foundation supporting multi-language access to Ascend,” presented the newly open-sourced MLIR compiler layer beneath BiSheng and its path for bringing Triton. Topic tags: general, general web, user generated. Style: premium digital editorial illustration, source-backed research mood, clean composition, high detail, modern web publication hero. Use reference image context only for broad subject, composition, and topical grounding; do not copy the exact image. Avoid: logos, brand marks, copyrighted characters, real person likenesses, fake screenshots, UI text, readable text, watermarks, charts with fa
Huawei позиціонує AscendNPU IR не як ще одну мову програмування для кінцевого користувача, а як відкриту компіляторну основу під компілятором BiSheng. На дев’ятому технічному салоні Meet AI Compiler, що відбувся 1 серпня 2026 року в Пекіні, архітекторка AscendNPU IR Hai Lijuan пояснила, як цей стек на базі MLIR має поєднати Triton та інші екосистеми операторів із апаратурою Ascend. 3
7
Практичний сенс підходу — відокремити опис обчислень від складної роботи, яку зазвичай доводиться виконувати під конкретний NPU: розподілу даних на тайли, переміщення між рівнями пам’яті, синхронізації, координації обчислень Cube і Vector та генерації машинного коду.
AscendNPU IR — це проміжне представлення на базі MLIR для компіляції операторів, оптимізованих під Ascend. Його багаторівнева архітектура поєднує високорівневі інтерфейси, які приховують деталі інструкцій і синхронізації, з низькорівневими засобами для розробників, яким потрібен точний контроль над розміщенням даних і поведінкою конвеєрів. 4
11
До стеку можна підключатися кількома шляхами. DSL, зокрема Triton і TileLang, можуть знижуватися до AscendNPU IR. Фреймворки та компілятори можуть працювати через Torch IR, Linalg/HFusion IR або HIVM IR. Вищі рівні здатні автоматично виконувати злиття операторів, тайлінг, розбиття та планування, тоді як HIVM дає більш прямий контроль над рівнями пам’яті Ascend і обчислювальними конвеєрами. 5
22
Спрощено потік виглядає так:
Triton, TileLang або IR фреймворку
↓
AscendNPU IR на базі MLIR
↓
HFusion → зниження до HIVM
↓
інструкції пристрою Ascend і бінарний файл
Задокументований процес компіляції використовує bishengir-compile: він перетворює MLIR на об’єктний файл для пристрою, який потім можна зареєструвати й виконати через runtime CANN — програмний середовищний шар Ascend. 6
Тайл — це керований блок тензорних даних і обчислень. Замість того щоб кожен фронтенд окремо описував усі передавання даних, рішення щодо пам’яті, точки синхронізації та апаратні інструкції, AscendNPU IR пропонує спільне тайлове представлення.
Ця абстракція має кілька рівнів. На верхніх рівнях розробник може описувати тензорні операції без ручного зазначення кожної апаратної деталі. На нижчих компілятор може визначати або явно задавати розміщення даних у GM, UB, L1 і L0, а також використання ресурсів Vector, Cube та механізмів переміщення даних. 5
22
Так виникає компроміс між переносимістю та тонким налаштуванням. Код Triton або фреймворку може націлюватися на ту саму компіляторну основу, а чутливі до продуктивності ділянки за потреби опускаються до апаратурно-орієнтованого представлення. В офіційній документації архітектура описується як набір розділених абстракцій, які поступово моделюють інструкції Ascend, локальні ресурси ядра, міжядерні ресурси та ресурси системи на кристалі. 11
HFusion — відносно незалежний від конкретної апаратури рівень дворівневої моделі. Він представляє тензорні операції на вищому рівні й виконує такі перетворення, як злиття, буферизація, тайлінг і планування, перш ніж компілятор перейде до конкретних апаратних інструкцій. 11
22
Саме тут кілька операцій можуть об’єднуватися в одну більшу схему, а обчислення — ділитися на тайли, придатні для цільової моделі виконання. Завдання HFusion — зберегти корисну семантику високого рівня та підготувати її до специфічного для Ascend зниження.
HIVM — апаратурно-орієнтований рівень. Він перетворює тайлові вирази на операції, що враховують виконавчі блоки Ascend, ієрархію пам’яті та поведінку конвеєрів. Зокрема, HIVM відповідає за:
Такий поділ дає компілятору змогу оптимізувати обчислення на різній відстані від апаратури. HFusion працює зі структурою тензорів і можливостями злиття, а HIVM — із точними ресурсами пам’яті та виконання, потрібними для запуску сформованих тайлів.
Поділ між HFusion і HIVM зберігається, але апаратурний рівень тепер має охоплювати не лише попередню SIMD-модель із доступом через пам’ять. Матеріали про Ascend 950 описують підтримку SIMD на основі регістрів і SIMT поряд із наявною моделлю виконання. 2
За регістрової SIMD-моделі дані завантажуються з внутрішньочипової пам’яті до регістрів, обробляються там, а потім записуються назад. Якщо структура обчислень це дозволяє, злиття на рівні регістрів утримує проміжні значення між операціями й зменшує кількість повторних завантажень і записів. 2
SIMT дає інший спосіб обробляти ділянки оператора з нерегулярним доступом до даних або розгалуженнями. Описаний підхід відокремлює частини, яким підходить SIMT, від щільних ділянок, оптимальних для SIMD, застосовує до них відповідні перетворення, а потім об’єднує результат у ширше векторне обчислення. 2
У матеріалах також наголошено на зміні взаємодії Cube–Vector. У попередніх потоках A2/A3 для частини переходів між Cube- та Vector-обчисленнями використовувалася глобальна пам’ять. В Ascend 950 описаний шлях дає змогу передавати результати Cube з L0C до внутрішньочипової пам’яті Vector, а результати Vector — назад до пам’яті Cube, скорочуючи відстань між двома доменами виконання. 2
Це особливо важливо для операторів, де матричні обчислення Cube змінюються векторною обробкою. Водночас компілятор має визначати, де перебувають тензори та коли потрібне копіювання, особливо якщо операції Cube і Vector розташовані в різних гілках керування.
Кілька названих у документації пассів показують, як AscendNPU IR перетворює абстракцію на конкретні рішення щодо планування та пам’яті.
Оновлений процес InsertCVLoadStore аналізує обмін між Cube і Vector у складному потоці керування, а не вставляє передавання за простим локальним зіставленням шаблонів. Спочатку він створює якорі розміщення: наприклад, входи матричних операцій — у L1, виходи — у L0C, а векторні дані — в UB. Потім ці обмеження поширюються програмою, а перетворення або копіювання вставляються там, де конфліктують рівні пам’яті. 2
У A2/A3 описані переходи можуть використовувати операції завантаження та збереження через глобальну пам’ять. Ascend 950 підтримує коротші внутрішньочипові шляхи там, де це можливо. 2
MultiBuffer створює кілька копій наявного тензора. Це дає змогу використовувати подвійне, або ping-pong, буферування та перекривати переміщення даних з обчисленнями, якщо це дозволяють обсяг пам’яті й розклад. 17
18
AutoBlockify і DynamicCVPipeline — одні зі специфічних для Ascend пассів у стеку Triton-Ascend. Їхні назви відображають два центральні завдання: поділ обчислень на виконувані блоки та побудову конвеєрної взаємодії Cube–Vector. 19
Документований набір можливостей також охоплює автоматичне планування пам’яті, синхронізацію, планування виконання та оптимізації Cube–Vector. 24
У презентації описано конфігурацію зі співвідношенням один Cube до двох Vector-ядер. AutoSubTiling може розділити Vector-роботу так, щоб два Vector-ядра паралельно обробляли окремі частини. 2
14
Huawei відкрила AscendNPU IR разом із Triton-Ascend для спільної розробки спільнотою. Triton-Ascend — це орієнтований на Ascend фреймворк компіляції Triton: він зберігає базовий синтаксис Triton і додає компіляцію та розгортання операторів для продуктів серій A2, A3 і 950. 30
37
Відкритий код також створює пряміший шлях для розробників, які хочуть працювати над компіляторними пассами, інтеграцією фронтендів, зниженням операторів або апаратурними оптимізаціями, не будуючи весь стек з нуля. Повідомляється, що програма спільноти включає стажування, прив’язані до репозиторіїв, і завдання з винагородами: розробник обирає доступне завдання, виконує його та подає результат відповідно до правил програми. 31
Розробники без локального обладнання Ascend, за наявними повідомленнями, можуть скористатися хмарним середовищем спільноти Ascend HiDevLab і отримати 100 безкоштовних годин обчислень. Джерела підтверджують саму квоту, але не уточнюють усі умови щодо права участі, верифікації, терміну дії чи регіональної доступності, тому їх варто перевірити під час реєстрації. 31
Основна ідея AscendNPU IR — архітектурна: зробити апаратне забезпечення Ascend доступнішим через спільні компіляторні точки входу, не забираючи можливість детального налаштування. Triton, TileLang та IR фреймворків можуть підключатися на вищих рівнях абстракції; HFusion виконує широкі перетворення, а HIVM знижує тайли до рішень щодо пам’яті, ядер, обміну даними й конвеєрів, необхідних для пристроїв Ascend. 5
11
Ascend 950 підвищує межу оптимізації завдяки регістровій SIMD-моделі, SIMT і коротшим Cube–Vector шляхам передавання даних. Чи дасть це приріст у реальних задачах, залежатиме від форми оператора, тиску на пам’ять, структури керування, зрілості компілятора та конкретного чипа. Відкритий стек робить ці компроміси прозорішими й дає розробникам операторів та компіляторів можливість безпосередньо долучитися до їх удосконалення.
Studio Global AI
This page includes a source-backed answer you can continue inside Studio Global.
Huawei відкрила код AscendNPU IR — MLIR основи компілятора BiSheng — після презентації архітекторки Hai Lijuan 1 серпня 2026 року.
Huawei відкрила код AscendNPU IR — MLIR основи компілятора BiSheng — після презентації архітекторки Hai Lijuan 1 серпня 2026 року. HFusion відповідає за відносно незалежні від апаратури злиття, тайлінг і планування, а HIVM — за прив’язку до ядер Cube і Vector, пам’яті, конвеєрів та інструкцій.
Для Ascend 950 стек додає SIMD на основі регістрів, SIMT і коротший внутрішньочиповий обмін даними між Cube та Vector.
Huawei відкрила код AscendNPU IR — MLIR основи компілятора BiSheng — після презентації архітекторки Hai Lijuan 1 серпня 2026 року. HFusion відповідає за відносно незалежні від апаратури злиття, тайлінг і планування, а HIVM — за прив’язку до ядер Cube і Vector, пам’яті, конвеєрів та інструкцій.
ОпублікувавВідредаговано за допомогою GPT-5.6 LunaЗображення створено за допомогою GPT Image 1.5
Research answer

Create a landscape editorial hero image for this Studio Global article: What did Huawei AscendNPU IR architect Hai Lijuan present at HyperAI’s ninth Meet AI Compiler technical salon on August 1, 2026, and how doe. Article summary: Hai Lijuan’s August 1 salon talk, “AscendNPU IR: open compiler foundation supporting multi-language access to Ascend,” presented the newly open-sourced MLIR compiler layer beneath BiSheng and its path for bringing Triton. Topic tags: general, general web, user generated. Style: premium digital editorial illustration, source-backed research mood, clean composition, high detail, modern web publication hero. Use reference image context only for broad subject, composition, and topical grounding; do not copy the exact image. Avoid: logos, brand marks, copyrighted characters, real person likenesses, fake screenshots, UI text, readable text, watermarks, charts with fa
Huawei позиціонує AscendNPU IR не як ще одну мову програмування для кінцевого користувача, а як відкриту компіляторну основу під компілятором BiSheng. На дев’ятому технічному салоні Meet AI Compiler, що відбувся 1 серпня 2026 року в Пекіні, архітекторка AscendNPU IR Hai Lijuan пояснила, як цей стек на базі MLIR має поєднати Triton та інші екосистеми операторів із апаратурою Ascend. 3
7
Практичний сенс підходу — відокремити опис обчислень від складної роботи, яку зазвичай доводиться виконувати під конкретний NPU: розподілу даних на тайли, переміщення між рівнями пам’яті, синхронізації, координації обчислень Cube і Vector та генерації машинного коду.
AscendNPU IR — це проміжне представлення на базі MLIR для компіляції операторів, оптимізованих під Ascend. Його багаторівнева архітектура поєднує високорівневі інтерфейси, які приховують деталі інструкцій і синхронізації, з низькорівневими засобами для розробників, яким потрібен точний контроль над розміщенням даних і поведінкою конвеєрів. 4
11
До стеку можна підключатися кількома шляхами. DSL, зокрема Triton і TileLang, можуть знижуватися до AscendNPU IR. Фреймворки та компілятори можуть працювати через Torch IR, Linalg/HFusion IR або HIVM IR. Вищі рівні здатні автоматично виконувати злиття операторів, тайлінг, розбиття та планування, тоді як HIVM дає більш прямий контроль над рівнями пам’яті Ascend і обчислювальними конвеєрами. 5
22
Спрощено потік виглядає так:
Triton, TileLang або IR фреймворку
↓
AscendNPU IR на базі MLIR
↓
HFusion → зниження до HIVM
↓
інструкції пристрою Ascend і бінарний файл
Задокументований процес компіляції використовує bishengir-compile: він перетворює MLIR на об’єктний файл для пристрою, який потім можна зареєструвати й виконати через runtime CANN — програмний середовищний шар Ascend. 6
Тайл — це керований блок тензорних даних і обчислень. Замість того щоб кожен фронтенд окремо описував усі передавання даних, рішення щодо пам’яті, точки синхронізації та апаратні інструкції, AscendNPU IR пропонує спільне тайлове представлення.
Ця абстракція має кілька рівнів. На верхніх рівнях розробник може описувати тензорні операції без ручного зазначення кожної апаратної деталі. На нижчих компілятор може визначати або явно задавати розміщення даних у GM, UB, L1 і L0, а також використання ресурсів Vector, Cube та механізмів переміщення даних. 5
22
Так виникає компроміс між переносимістю та тонким налаштуванням. Код Triton або фреймворку може націлюватися на ту саму компіляторну основу, а чутливі до продуктивності ділянки за потреби опускаються до апаратурно-орієнтованого представлення. В офіційній документації архітектура описується як набір розділених абстракцій, які поступово моделюють інструкції Ascend, локальні ресурси ядра, міжядерні ресурси та ресурси системи на кристалі. 11
HFusion — відносно незалежний від конкретної апаратури рівень дворівневої моделі. Він представляє тензорні операції на вищому рівні й виконує такі перетворення, як злиття, буферизація, тайлінг і планування, перш ніж компілятор перейде до конкретних апаратних інструкцій. 11
22
Саме тут кілька операцій можуть об’єднуватися в одну більшу схему, а обчислення — ділитися на тайли, придатні для цільової моделі виконання. Завдання HFusion — зберегти корисну семантику високого рівня та підготувати її до специфічного для Ascend зниження.
HIVM — апаратурно-орієнтований рівень. Він перетворює тайлові вирази на операції, що враховують виконавчі блоки Ascend, ієрархію пам’яті та поведінку конвеєрів. Зокрема, HIVM відповідає за:
Такий поділ дає компілятору змогу оптимізувати обчислення на різній відстані від апаратури. HFusion працює зі структурою тензорів і можливостями злиття, а HIVM — із точними ресурсами пам’яті та виконання, потрібними для запуску сформованих тайлів.
Поділ між HFusion і HIVM зберігається, але апаратурний рівень тепер має охоплювати не лише попередню SIMD-модель із доступом через пам’ять. Матеріали про Ascend 950 описують підтримку SIMD на основі регістрів і SIMT поряд із наявною моделлю виконання. 2
За регістрової SIMD-моделі дані завантажуються з внутрішньочипової пам’яті до регістрів, обробляються там, а потім записуються назад. Якщо структура обчислень це дозволяє, злиття на рівні регістрів утримує проміжні значення між операціями й зменшує кількість повторних завантажень і записів. 2
SIMT дає інший спосіб обробляти ділянки оператора з нерегулярним доступом до даних або розгалуженнями. Описаний підхід відокремлює частини, яким підходить SIMT, від щільних ділянок, оптимальних для SIMD, застосовує до них відповідні перетворення, а потім об’єднує результат у ширше векторне обчислення. 2
У матеріалах також наголошено на зміні взаємодії Cube–Vector. У попередніх потоках A2/A3 для частини переходів між Cube- та Vector-обчисленнями використовувалася глобальна пам’ять. В Ascend 950 описаний шлях дає змогу передавати результати Cube з L0C до внутрішньочипової пам’яті Vector, а результати Vector — назад до пам’яті Cube, скорочуючи відстань між двома доменами виконання. 2
Це особливо важливо для операторів, де матричні обчислення Cube змінюються векторною обробкою. Водночас компілятор має визначати, де перебувають тензори та коли потрібне копіювання, особливо якщо операції Cube і Vector розташовані в різних гілках керування.
Кілька названих у документації пассів показують, як AscendNPU IR перетворює абстракцію на конкретні рішення щодо планування та пам’яті.
Оновлений процес InsertCVLoadStore аналізує обмін між Cube і Vector у складному потоці керування, а не вставляє передавання за простим локальним зіставленням шаблонів. Спочатку він створює якорі розміщення: наприклад, входи матричних операцій — у L1, виходи — у L0C, а векторні дані — в UB. Потім ці обмеження поширюються програмою, а перетворення або копіювання вставляються там, де конфліктують рівні пам’яті. 2
У A2/A3 описані переходи можуть використовувати операції завантаження та збереження через глобальну пам’ять. Ascend 950 підтримує коротші внутрішньочипові шляхи там, де це можливо. 2
MultiBuffer створює кілька копій наявного тензора. Це дає змогу використовувати подвійне, або ping-pong, буферування та перекривати переміщення даних з обчисленнями, якщо це дозволяють обсяг пам’яті й розклад. 17
18
AutoBlockify і DynamicCVPipeline — одні зі специфічних для Ascend пассів у стеку Triton-Ascend. Їхні назви відображають два центральні завдання: поділ обчислень на виконувані блоки та побудову конвеєрної взаємодії Cube–Vector. 19
Документований набір можливостей також охоплює автоматичне планування пам’яті, синхронізацію, планування виконання та оптимізації Cube–Vector. 24
У презентації описано конфігурацію зі співвідношенням один Cube до двох Vector-ядер. AutoSubTiling може розділити Vector-роботу так, щоб два Vector-ядра паралельно обробляли окремі частини. 2
14
Huawei відкрила AscendNPU IR разом із Triton-Ascend для спільної розробки спільнотою. Triton-Ascend — це орієнтований на Ascend фреймворк компіляції Triton: він зберігає базовий синтаксис Triton і додає компіляцію та розгортання операторів для продуктів серій A2, A3 і 950. 30
37
Відкритий код також створює пряміший шлях для розробників, які хочуть працювати над компіляторними пассами, інтеграцією фронтендів, зниженням операторів або апаратурними оптимізаціями, не будуючи весь стек з нуля. Повідомляється, що програма спільноти включає стажування, прив’язані до репозиторіїв, і завдання з винагородами: розробник обирає доступне завдання, виконує його та подає результат відповідно до правил програми. 31
Розробники без локального обладнання Ascend, за наявними повідомленнями, можуть скористатися хмарним середовищем спільноти Ascend HiDevLab і отримати 100 безкоштовних годин обчислень. Джерела підтверджують саму квоту, але не уточнюють усі умови щодо права участі, верифікації, терміну дії чи регіональної доступності, тому їх варто перевірити під час реєстрації. 31
Основна ідея AscendNPU IR — архітектурна: зробити апаратне забезпечення Ascend доступнішим через спільні компіляторні точки входу, не забираючи можливість детального налаштування. Triton, TileLang та IR фреймворків можуть підключатися на вищих рівнях абстракції; HFusion виконує широкі перетворення, а HIVM знижує тайли до рішень щодо пам’яті, ядер, обміну даними й конвеєрів, необхідних для пристроїв Ascend. 5
11
Ascend 950 підвищує межу оптимізації завдяки регістровій SIMD-моделі, SIMT і коротшим Cube–Vector шляхам передавання даних. Чи дасть це приріст у реальних задачах, залежатиме від форми оператора, тиску на пам’ять, структури керування, зрілості компілятора та конкретного чипа. Відкритий стек робить ці компроміси прозорішими й дає розробникам операторів та компіляторів можливість безпосередньо долучитися до їх удосконалення.
Studio Global AI
This page includes a source-backed answer you can continue inside Studio Global.
Huawei відкрила код AscendNPU IR — MLIR основи компілятора BiSheng — після презентації архітекторки Hai Lijuan 1 серпня 2026 року.
Huawei відкрила код AscendNPU IR — MLIR основи компілятора BiSheng — після презентації архітекторки Hai Lijuan 1 серпня 2026 року. HFusion відповідає за відносно незалежні від апаратури злиття, тайлінг і планування, а HIVM — за прив’язку до ядер Cube і Vector, пам’яті, конвеєрів та інструкцій.
Для Ascend 950 стек додає SIMD на основі регістрів, SIMT і коротший внутрішньочиповий обмін даними між Cube та Vector.