Несколько дней потратил на то чтобы навайбкодить понижение из StableHLO диалекта в SPIR-V с использованием LLVM MLIR. В целом это получилось и я смог запускать скомпилированные шейдеры в среде Adept. Но производительность таких шейдеров существенно ниже написанных вручную. Например для поэлементных операций проблема в том как правильно сформировать размеры сетки и блоков. А для GEMM нужно реализовать тайлинг. И существующего компиляторного прохода для таких вещей как я понял нет, есть только вариант применения специального вида трансформации для которого надо самому писать скрипты. А проходы которые преобразуют циклы в параллельные циклы сейчас не поддерживают тайлинг и блоки. В общем задача оказалась существенно сложнее.
- Пока буду переносить в мастер ветку код для полноценного представления вычислительного графа и слияние Tensor и Variable в одну сущность.
- Потом есть идея отказаться от преобразования гарфа в StableHLO и сразу генерировать linalg диалект для MLIR.
- И ограничится пока только поэлементными операциями над тензорами что бы проверить можно ли получить аффективный fusing операций в одном шейдере с помощью компилятора.
#IR #SPIR-V #MLIR #LLVM #Tensor
О канале «Adept | Машинное обучение | Открытое ПО»
«Adept | Машинное обучение | Открытое ПО» - канал из категории «Технологии», подключенный к сервису кросспостинга MaxGate. Публикации канала синхронизируются между Telegram и мессенджером MAX, а на этой странице собраны ссылки на обе версии канала.
Сейчас у канала 172 подписчика суммарно в Telegram и MAX. За последние 30 дней в истории MaxGate учтено 8 публикаций, поэтому перед подпиской можно оценить не только размер аудитории, но и регулярность обновлений.
Чтобы подписаться, используйте кнопки «Открыть в MAX» и «Открыть в Telegram» в верхней части страницы. У отдельных постов ссылка может быть доступна в обоих мессенджерах или только в одном из них, если MaxGate получил такой URL из истории обработки.
Число постов
1
0
15.1016.1017.1018.1019.1020.1021.10
Фото: 1
Анонс: Осенний Scientific Open Source Meetup этого года - в октябре!
С радостью приглашаем всех на наш очередной Scientific Open Source Meetup, который пройдет 29 октября 2026 года с 17:30 до 21:30 в Санкт-Петербурге в уютном лофте на Газовой, 10ж. Это отличная возможность встретиться, обсудить актуальные темы и поделиться опытом в мире открытого программного обеспечения!
В программе:
Десять агентов, один файл: где исследовательские среды хранят состояние // Сергей Геворкян, менеджер продукта Cloud Ru
Что происходит с хранилищем, когда десятки агентов одновременно записывают ход исследований? Разбор кода OpenResearch, OpenScience и OpenHuman с замерами при росте числа агентов.
Петля должна быть разорвана // Олег Чирухин, GitVerse
Как заставить агента работать днями и неделями с первого промпта, почти без участия человека? Автор представит свой опенсорсный инструмент и приёмы для автономной разработки.
Китайский опенсорсный ИИ-агент openJiuwen // OpenScaler
openEuler → OpenScaler или туда и обратно // Дмитрий Варенов, Технический лидер сообщества openEuler/OpenScaler
От локализованного форка OpenScaler к прямому развитию openEuler в России и СНГ. Расскажем о планах и мероприятиях, а также о том, как внести вклад в проект и попасть на стажировку.
PAUK: инструмент для картографирования экосистем открытого кода // Андрей Гетманов, аспирант ИТМО
Как связать исследователей, статьи и репозитории в единый граф? PAUK помогает находить научные группы по темам исследований и выяснять, чьи разработки переиспользуют коллеги.
Опенсорс, агенты и студенты — опыт ФТИИ ИТМО // Юлия Борисова, к.т.н., руководитель учебно-научной лаборатории АИСТ, ИТМО
Есть ли работа для начинающего программиста-исследователя в эпоху агентов? Поговорим о том, как студентам войти в профессию и какие навыки нужны для разработки и исследований в области ИИ.
UniversalToolchain // Михаил Резаков, ФКН ВШЭ
Презентация проекта - победителя конкурса студенческих опенсорс-проектов ФКН ВШЭ.
Мероприятие проходит при поддержке Gitverse, Cloud.Ru и OpenScaler.
Дата: 29 октября 2026 года
Время: 17:30 до 21:30
Место: Лофт на Газовой, 10ж, СПб.
Участие бесплатное, но количество очных мест ограничено! Трансляция - будет.
Ссылка на регистрацию - https://openmeetup.ru/
Ждем вас на митапе!
Более глубокое изучение вопроса с использованием OpenXLA для компиляции в SPIR-V показало что это напрямую сейчас всё еще не возможно. Только Intel занимается этим вопросом и у них есть какие-то экспериментальные наработки.
Но в тоже время есть тензорный компилятор и среда исполнения IREE построенные на базе LLVM MLIR специально для компиляции и запуска SPIR-V. Но это полноценное end2end решение, т.е. ему на вход можно дать HLO и получить исполняемый файл. Вроде бы можно использовать и как библиотеку. Т.е. если использовать IREE то придется отказаться уже разработанной в Adept среды для запуска compute shaders в Vulkan. Так поступать не хочется.
Поэтому следующим шагом буду изучать как напрямую использовать LLVM MLIR для понижения из HLO в набор SPIR-V с планом исполнения и промежуточных выделений памяти. А IREE можно использовать для сравнения производительности.
#IR #OpenXLA #IREE #SPIR-V #MLIR #LLVM