PyTorch TorchInductor інтегровано з CuteDSL як бекенд автоматичної оптимізації матричного множення

robot
Генерація анотацій у процесі

ME News Новини, 7 квітня (UTC+8), офіційна команда PyTorch нещодавно оголосила, що CuteDSL було інтегровано як четвертий автоматичний оптимізований бекенд для матричного множення у TorchInductor. Вибір цього бекенду базується на трьох критеріях: не створювати надмірне навантаження на підтримку, не сповільнювати час компіляції або бенчмаркінгу, а також забезпечувати кращу продуктивність на цільових навантаженнях. CuteDSL активно розробляється NVIDIA, пропонує оптимізовані шаблони ядра, час компіляції яких співставний із існуючими бекендами і значно кращий за шлях CUTLASS C++, який вимагає повної компіляції через \nvcc. Цей бекенд побудований на такій самій абстракції, що й CUTLASS C++, написаний на Python, швидше компілюється, легше підтримується і вже довів свою потужність у FP8 GEMM та об’єднанні Epilogue. Команда зосереджена на оптимізації GEMM (матричного множення), оскільки воно займає основну частку обчислень у моделях Transformer. CuteDSL генерує низькорівневий код за допомогою вручну оптимізованих шаблонів, уникаючи складнощів написання ядра з нуля, і повністю відкриває доступ до потоків і ієрархії пам’яті, підтримуючи функції, специфічні для архітектури. (Джерело: InFoQ)

Переглянути оригінал
Ця сторінка може містити контент третіх осіб, який надається виключно в інформаційних цілях (не в якості запевнень/гарантій) і не повинен розглядатися як схвалення його поглядів компанією Gate, а також як фінансова або професійна консультація. Див. Застереження для отримання детальної інформації.
  • Нагородити
  • Прокоментувати
  • Репост
  • Поділіться
Прокоментувати
Додати коментар
Додати коментар
Немає коментарів
  • Закріпити