Исследователи представили SparseDitto — агентную систему, которая автоматизирует генерацию и настройку GPU-ядер для разреженных матричных вычислений. Система анализирует структуру данных и подбирает оптимальную стратегию исполнения, устраняя значительные разрывы в производительности, характерные для стандартных библиотек. Решение позволяет достичь ускорения в задачах машинного обучения и аналитики графов за счет адаптивной компиляции под конкретные паттерны разреженности.

Разреженные матричные операции (SpMM) критически важны для современных нейросетей, однако их эффективность сильно зависит от формата хранения данных. Стандартные инструменты, такие как cuSPARSE, демонстрируют колоссальную разницу в скорости (до 350 раз) при переключении между форматами CSR и Blocked-ELL. SparseDitto решает эту проблему, используя LLM-агента для автоматического поиска наиболее эффективного способа выполнения вычислений на конкретном GPU.

Система работает как интеллектуальный оптимизатор, который берет на себя рутинную задачу выбора стратегии исполнения. Вместо того чтобы полагаться на универсальные, но не всегда эффективные алгоритмы, SparseDitto генерирует специализированный код ядра, адаптированный под уникальные характеристики входной матрицы. Это значительно снижает накладные расходы при работе с графовыми данными и большими разреженными моделями.

Ключевые факты

  • Разрыв в производительности между форматами CSR и Blocked-ELL в стандартных библиотеках достигает 350x.
  • SparseDitto использует агентный подход для анализа паттернов разреженности и автоматической генерации GPU-ядер.
  • Система оптимизирует выполнение SpMM (разреженное матрично-матричное умножение), ключевой операции для ML и аналитики графов.
  • Подход позволяет автоматизировать процесс, который ранее требовал глубокой ручной оптимизации экспертами по высокопроизводительным вычислениям.