matlab mkl tweak codepath améliore considérablement les performances de amd ryzen mkl - Matlab

MATLAB MKL Codepath Tweak améliore considérablement les performances d'AMD Ryzen MKL

MATLAB is a popular math computing environment in use by engineering firms, universities, and other research institutes. Some of its operations can be made to leverage Intel MKL (Math Kernel Library), which is poorly optimized for, and notoriously slow on AMD Ryzen processors. Reddit user Nedflanders1976 devised a way to restore anywhere between 20 to 300 percent performance on Ryzen and Ryzen Threadripper processors, by forcing MATLAB to use advanced instruction-sets such as AVX2. By default, MKL queries your processor's vendor ID string, and if it sees anything other than 'GenuineIntel…, ' it falls back to SSE, posing a significant performance disadvantage to 'AuthenticAMD' Ryzen processors that have a full IA SSE4, AVX, and AVX2 implementation.

Le tweak, destiné à être appliqué manuellement par les utilisateurs d'AMD Ryzen, oblige MKL à utiliser AVX2 quel que soit le résultat de la requête d'ID de fournisseur de CPU. Le tweak est aussi simple que puissant. Un simple fichier batch Windows de 4 lignes avec un ensemble d'arguments démarre MKL en mode AVX2. Vous pouvez également rendre le réglage «permanent» en créant une variable d'environnement système. La variable d'environnement s'appliquera à toutes les instances de MATLAB, et pas seulement à celles générées par le fichier de commandes. Nedflanders1976 a également publié un script de référence qui met en évidence l'impact sur les performances d'AVX2, mais vous pouvez utiliser vos propres scripts et publier les résultats.
Source: Nedflanders1976 (Reddit)