Найти тему
Борис Державец

Как проверить, поддерживает ли ваша Linux система AVX и AVX2

В этом кратком кратком документе содержатся инструкции, как проверить, поддерживает ли ваша система Linux инструкции AVX и AVX2 из командной строки. Проверка поддержки AVX/AVX2 в вашем ЦП необходима при работе с программным обеспечением или рабочими нагрузками, которые могут извлечь выгоду из возможностей параллелизма данных и векторной обработки, предлагаемых этими расширениями набора команд. Это также является основным требованием для запуска больших языковых моделей (LLM) в вашей системе.

AVX означает расширенные векторные расширения. Это набор расширений набора команд архитектуры набора команд x86 для микропроцессоров Intel и AMD. AVX предоставляет новые инструкции и функции ЦП, которые позволяют эффективно выполнять векторные операции с большими наборами данных. Конкретно:
AVX представляет 256-битные векторные регистры и инструкции, которые могут выполнять параллельные операции с 256-битными векторами данных, например, четыре 64-битных значения с плавающей запятой двойной точности или восемь 32-битных значений с плавающей запятой одинарной точности. Он расширяет возможности SIMD (одна инструкция, несколько данных), позволяя одной инструкции выполнять одну и ту же операцию с несколькими элементами данных одновременно. Этот параллелизм может обеспечить значительное повышение производительности приложений, которые могут использовать векторную обработку, таких как мультимедийные, научные вычисления и рабочие нагрузки машинного обучения.
AVX — это расширение более ранних 128-битных векторных расширений, таких как SSE (Streaming SIMD Extensions).
AVX был впервые представлен Intel с микроархитектурой Sandy Bridge в 2011 году, а затем принят AMD.
Расширение AVX2, представленное в 2013 году с микроархитектурой Intel Haswell и микроархитектурой AMD Excavator, добавляет дополнительные инструкции и функциональные возможности.
Эти векторные расширения особенно полезны в рабочих нагрузках, требующих интенсивного параллелизма данных, таких как обработка изображений и видео, физическое моделирование, криптография и глубокое обучение.
Многие современные программные библиотеки и платформы, в том числе используемые для машинного обучения и искусственного интеллекта, могут использовать преимущества AVX и AVX2 для ускорения вычислений на поддерживаемом оборудовании.
Вы также можете использовать следующие варианты команды grep, чтобы проверить, поддерживает ли ваш процессор инструкции AVX и AVX2:
$ cat /proc/cpuinfo | grep -i 'avx'
Или,
$ grep --color=always -i 'avx' /proc/cpuinfo
Здесь опция --color=always используется для различения строк, содержащих «avx».
Используйте утилиту lscpu
Утилита lscpu — отличный инструмент для получения подробной информации о вашем процессоре в Linux. Он предустановлен в большинстве дистрибутивов Linux.
Чтобы проверить, поддерживает ли ваш процессор AVX или AVX2, запустите:
$ lscpu | grep avx
Найдите строки с упоминанием AVX и AVX2 в разделе «Флаги». Если они присутствуют, ваш процессор поддерживает эти расширения.

$ lscpu | grep avx2
$ lscpu | grep avx2