Компьютерные новости
Все разделы
Энтузиаст ускорил работу MATLAB в системах с AMD Ryzen на 20% – 300%
Программа MATLAB широко используется студентами, инженерами, исследователями и прочими специалистами. Однако для некоторых своих операций она задействует библиотеку Intel MKL (Math Kernel Library), которая плохо оптимизирована под AMD Ryzen. В результате системы с процессорами AMD переходят на более старые и медленные инструкции SSE1, даже если они поддерживают SSE3-SSE4 или AVX1/2. Из-за этого страдает уровень производительности в вычислительных задачах.
Решение этой проблемы предложил пользователь под ником «nedflanders1976» на Reddit. Для систем с процессорами AMD Ryzen и AMD Ryzen Threadripper он предлагает создать текстовый файл с таким кодом:
@echo off
set MKL_DEBUG_CPU_TYPE=5
call "%MKLROOT%\bin\mklvars.bat" MKL_DEBUG_CPU_TYPE=5
matlab.exe
А затем сохранить его с расширением .bat. После запуска этого файла программа MATLAB стартует с автоматическим переводом MKL в режим AVX2. При желании можете скачать уже готовый файл с облачного хранилища автора. Прирост производительности находится в пределах от 20% до 300%.
Если вам понравится работать с ускоренным MATLAB на AMD Ryzen и AMD Ryzen Threadripper, то можно активировать этот режим на постоянной основе, чтобы каждый раз не запускать вышеуказанный bat-файл. Для этого в «Настройках системы» (System Properties) следует перейти в раздел «Переменные среды» (Environment Variables) и создать новую «Системную переменную» (System Variable) с названием MKL_DEBUG_CPU_TYPE и значением 5.