TGViewer
Adept | Машинное обучение | Открытое ПО Adept | Машинное обучение | Открытое ПО @adept_platform · 136 subscribers
Post #25 232
Привет, в работе над проектом постоянно сменяются периоды активной разработки и этапы отладки, тестирования и оптимизации.

На прошлой неделе основное внимание было уделено тестированию и доработке ядра матричного умножения (matmul). Благодаря увеличению нагрузки на потоки и изменению размера тайла удалось добиться заметного ускорения на средних размерах — это подтверждается графиком сравнения Adept и PyTorch с разными режимами использования cuBLAS .

Однако начиная с размеров 512×1024 производительность Adept начинает значительно отставать, см. график. А это критично: особенно в современных LLM. Например, в модели Qwen-7B, которую можно запускать локально, типичные операции включают умножения вида:
- 4096 × 4096 (линейные слои),
- 4096 × 11008 (expansion в MLP блоках).

Теперь надо определиться что же делать дальше. Есть несколько важных направлений:

1. Продолжать оптимизировать matmul.
Например внедрить транспонирование одной из входных матриц (обычно B). Это позволит:
- организовать сгруппированный доступ к данным (все потоки в warp’е читают соседние адреса),
- использовать прямоугольные тайлы (например, 64×128),
- лучше распределить работу между потоками и повысить occupancy.
Да, такой подход требует дополнительной памяти для хранения транспонированной матрицы — но это стандартная практика: даже cuBLAS выделяет рабочую память, управляемую через параметры worksize.

2. Оптимизация операций свёртки, которые критичны для CNN и гибридных архитектур. Тут надо реализовать быстрые свёртки с использованием алгоритма Winograd. Алгоритм Implicit GEMM для работы в стиле im2col но без промежуточных матриц.

3. Также крайне важно завершить реализацию функциональности срезов тензоров — без неё невозможно поддерживать широкий спектр моделей машинного обучения, включая те, что используют динамические формы или сложные attention-маски.

🚀 Приглашаем всех заинтересованных принять участие в развитии Adept!
Ваш вклад — будь то тестирование, код, идеи по оптимизации или документация — напрямую ускорит появление полноценного Vulkan-бэкенда для ML.

#Adept #Vulkan #GPU #GEMM #LLM #TensorSlicing
Telegram adept Сравнение производительности matmul в Adept и PyTorch: количество пакетов в секунду при тренировке. Обратите внимание что производительность PyTorch c отключенным и включенным cuDNN практически одинаковая - так как используются только линейные слои т.е.…
  • 👍 2
  • 🔥 2
  • 👌 1
More from @adept_platform
  1. Sep 25, 2026Доделал скрипты для сборки библиотеки под Android, исправил ошибки и немного в очередной р…
  2. Sep 22, 2026Это скриншот с моего телефона. Начал делать скрипты для крос-компиляции проекта с использо…
  3. Sep 17, 2026Проект стал доступен в индексе пакетов pypi.org. Установка стала проще: pip install adept-…
  4. Sep 14, 2026Привет! С радостью сообщаю что наконец-то вышел Релиз 0.2.0 Основные изменения: - Тензорны…
  5. Sep 11, 2026Привет! Я закончил реализацию и проверку всей функциональности которую планировал для публ…
  6. Sep 5, 2026Изменил подход к управлению памятью, что снизило потребление в 2 раза. А это в свою очеред…
Threads Profile ViewerView any public Threads profile without an account.Open ThreadLook →Writing with AI? Make it sound human.Metric37 rewrites AI drafts so they read naturally. Free AI detector, 1,500 words free.Try Metric37 →