В современном мире высокопроизводительных вычислений важность технологии SIMD (Single Instruction, Multiple Data) трудно переоценить. SIMD-инструкции позволяют процессорам параллельно обрабатывать несколько данных за один такт, что значительно повышает скорость вычислений в таких областях, как компьютерная графика, машинное обучение и обработка мультимедиа. Однако задача портирования кода с одной SIMD-архитектуры на другую становится серьезным вызовом для разработчиков. Именно в этой сложной области и появляется решение — SIMD.ai, специализированная модель большого языка (LLM), созданная для автоматизации и упрощения процесса портирования SIMD-кода между разными архитектурами.
Еще с 2020 года разработчики и инженеры сталкивались с проблемой отсутствия четкой и простой в использовании мэппинга между различными SIMD-интринсиками — такими как SSE, AVX, NEON и VSX. Каждая архитектура имеет свои уникальные инструкции и подходы к их реализации, а попытки перевести функции с одной платформы на другую нередко приводили к путанице, ошибкам и значительным затратам времени. Общие большие языковые модели, такие как ChatGPT, Claude и DeepSeek, изначально не справлялись с этой задачей. Несмотря на их впечатляющие способности в кодогенерации, при попытке работы с SIMD-кодом они часто порождали неправильные функции, пропускали нужные инструкции или создавали некорректную логику. Проблема лежала глубже — эти модели не были обучены на специализированных данных из области SIMD-программирования.
Для решения этой проблемы команда SIMD.ai разработала собственную тщательно курируемую базу данных simd.info. Это сжатый, высоко структурированный и специализированный справочник по основным SIMD-архитектурам, включающий в себя не только сами инструкции, но и полные описания функций, прототипы, соответствия с ассемблерными командами и примечания, специфичные для каждой архитектуры. Данные представляют собой около 12 миллионов токенов, что на первый взгляд может показаться не очень большим объемом, но именно качество и структура информации позволили добиться выдающихся результатов.
После создания надежного информационного фонда команда приступила к обучению собственной модели, названной SIMD-ai-2506-1. Опираясь на модели Devstral с открытой лицензией, которая уже демонстрировала хорошие результаты без дополнительной дообучения, разработчики запустили процесс тонкой настройки с применением современных методов, таких как LoRA и PEFT. Обучение проходило на мощных GPU NVIDIA A100 и продолжалось около нескольких месяцев, что позволило сбалансировать точность перевода SIMD-инструкций с сохранением общих способностей модели к программированию и поддержанию безопасности кода. Результатом стал 24-миллиардный параметрический LLM, который превосходит все протестированные открытые и проприетарные модели по точности портирования SIMD-кода как на уровне отдельных инструкций, так и при переводе полноценных функций. Помимо самой модели был создан и уникальный инструмент оценки — открытый benchmarking suite под названием LLaMeSIMD.
Это первая в своем роде система тестирования, специально ориентированная на измерение эффективности LLM в задаче трансляции SIMD-кода между архитектурами. Она поддерживает SSE4.2, NEON и VSX, а в будущем планируется добавление AVX2, AVX-512 и других платформ. Основные метрики сравнения включают в себя сходство с эталонными решениями, как например Levenshtein similarity, анализ структуры AST и перекрытие токенов, что позволяет разработчикам честно и объективно оценивать различные модели и их решения. LLaMeSIMD разработан с удобным интерфейсом и интеграциями с популярными платформами, такими как Ollama и Hugging Face, а также поддерживает работу с проприетарными моделями через API, что существенно расширяет возможности сообщества разработчиков SIMD-кода.
На данный момент доступ к SIMD.ai открыт в формате бета-тестирования и предлагается по приглашениям. Команда проекта активно собирает отзывы и готова к сотрудничеству с заинтересованными специалистами, что говорит о живости и динамичности развития технологии. В числе ближайших планов — интеграция с Visual Studio Code через API, поддержка новых SIMD-архитектур, таких как Loongson, MIPS и RISC-V, а также расширение возможностей самого benchmarking suite. Инициатива SIMD.
ai стала настоящим прорывом в области оптимизации многопоточных вычислений и портирования низкоуровневого кода. Специализированный подход к обучению моделей и внимательное отношение к качеству данных позволили создать эффективный инструмент, который экономит немало времени и усилий программистов по всему миру. В условиях постоянного развития аппаратных решений и появления все новых процессорных платформ, наличие такого сервиса становится ключевым конкурентным преимуществом для компаний и разработчиков, стремящихся создавать эффективные и переносимые программные решения. Будущее за такими проектами, которые соединяют глубокое понимание аппаратуры и возможности современных методов машинного обучения. SIMD.
ai — яркий пример того, как качественные данные и продуманная инфраструктура могут трансформировать сложнейшую техническую задачу в удобный и надежный инструмент повседневной работы.