Оптимізація множення квантованих однобітних матриць для великих мовних моделей - Сальніков, Дмитро Валентинович; Васильченков, Олег Георгійович; Караман, Дмитро Григорович (Національний університет “Полтавська політехніка імені Юрія Кондратюка”, 2025)
У зв’язку з активним розвитком та вдосконаленням систем штучного інтелекту останнім часом обробка природної мови стала однією з найбільш актуальних та затребуваних задач. Засоби та алгоритми на базі великих мовних моделей, що забезпечують обробку природної мови та перетворення мови в текстові данні, активно застосовуються для реалізації методів автоматизації різноманітних повсякденних задач, а також систем обслуговування та оперативної взаємодії з людиною. Для швидкого та адекватного опрацювання природної мови, з врахуванням синтаксичних та національних особливостей необхідно використовувати досить складні мовні моделі. Але великі мовні моделі потребують значних обсягів пам’яті та обчислювальної потужності, що ускладнює їх повсякденне використання на пристроях з обмеженими ресурсами, таких як мобільні пристрої з автономним живленням, вбудовані системи та пристрої Інтернету речей. Таким чином, оптимізація алгоритмів роботи мовних моделей та зниження апаратних витрат на їх реалізацію є як ніколи актуальною задачею. Для пришвидшення виконання та зменшення необхідних об’ємів пам’яті використовують алгоритми квантування коефіцієнтів мовних моделей. В даній роботі сформульовано проблеми, що виникають під час виконання квантованих операцій множення матриць, розглянуто популярні підходи до реалізації алгоритму множення матриць на графічних прискорювачах, та реалізовано оптимізоване за швидкістю виконання ядро множення квантованих 1-бітних матриць.

With the rapid development and improvement of artificial intelligence systems, natural language processing has recently become one of the most relevant and in-demand tasks. Tools and algorithms based on large language models (LLMs) that enable natural language processing and speech-to-text conversion are actively used for automating various everyday tasks, as well as for service systems and real-time human interaction. Efficient and accurate natural language processing, taking into account syntactic and linguistic peculiarities, requires highly complex language models. However, large language models demand significant memory and computational resources, making their widespread use challenging on resource-constrained devices such as battery-powered mobile devices, embedded systems, and Internet of Things (IoT) devices. Thus, optimizing language model algorithms and reducing hardware costs for their deployment is an increasingly pressing issue. To accelerate execution and minimize memory requirements, quantization algorithms for language model parameters are employed. This work formulates key challenges associated with performing quantized matrix multiplication operations, explores popular approaches to implementing matrix multiplication algorithms on GPUs, and presents an optimized high-performance kernel for 1-bit quantized matrix multiplication.
Optimization of 1-bit quantized matrix multiplication for large language models
Keywords: квантовані операції; множення матриць; трансформери; великі мовні моделі; CUDA; GPU; LLM; Pytorch; нейронні мережі; quantized operations; matrix multiplication; transformers; large language models; CUDA; GPU; LLM; PyTorch; neural networks