Si tout le monde se focalise sur Windows 10 à l'occasion du support de nouveaux processeurs, qu'en est-il sous Linux ? Pour le savoir, nous avons tenté d'installer différentes distributions et hyperviseurs sur une carte mère X570 Taichi d'ASRock équipée d'un Ryzen 7 3700X afin de voir si tout fonctionnait sans accroc.
Depuis le lancement de ses Ryzen de première génération, puis des Threadripper pouvant aller jusqu'à 32 cœurs via quatre dies dans un même packaging, AMD a dû faire un gros travail d'optimisation logicielle, notamment avec Microsoft pour Windows 10. On l'a vu lors de notre analyse, la May 2019 Update apporte d'ailleurs son lot d'optimisations.
Mais qu'en est-il de Linux ? Sur ce point, le constructeur donne peu de détails, mais on sait qu'il travaille assez ouvertement sur des patchs et autres améliorations du noyau et des pilotes pour assurer le bon fonctionnement de ses CPU et GPU. Suffisant pour assurer un support dans différentes distributions et/ou hyperviseurs ?
C'est ce que nous avons voulu vérifier.
CentOS 7, Debian 10, Ubuntu 18.04 LTS/18.10 : ça marche
Nous avons commencé par les cas les plus souvent complexes : les distributions à évolution lente. Celles qui utilisent un noyau un peu daté, qui ne sont pas de dernière fraîcheur. Nous les avons installées sur une machine équipée d'un Ryzen 7 3700X sur une carte mère X570 Taichi avec son BIOS/UEFI 1.41 et 16 Go de DDR4 à 3,2 GHz.
AMD a de la chance avec Debian, puisque sa dixième itération (Buster), vient de sortir avec un noyau 4.19 bien plus récent. Tout fonctionne donc parfaitement, de l'installation à nos tests de compilation de Blender et de performances avec le rendu headless de la scène BMW27 ou le test intégré d'OpenSSL.
Idem pour Ubuntu 18.04 LTS/18.10 où tout se passe sans accroc. Même CentOS 7 (1810), pourtant un cas souvent compliqué, n'a pas vraiment posé de problème. Nous avons bien eu une alerte ou deux avant que le système ne soit opérationnel concernant le CPU qui ne serait pas parfaitement reconnu. Mais au final, tout roule.
Dans ces trois cas, nous avons un bon niveau de performances, identique à ce que nous relevons sous Windows dans des conditions similaires. Meilleur même pour la compilation puisque nous n'avons pas à faire avec l'impact négatif sur le système de fichiers du sous-système Linux actuel (qui sera bientôt remplacé).
Seule exception : nous n'avons pas pu compiler Blender sous CentOS 7, la version de GCC (entre autres) fournie par défaut sur ce système étant trop datée.
OpenSSL - Signatures par secondes :
- CentOS 7 : 309
- Debian 10 : 304
- Ubuntu 18.04 LTS : 306
OpenSSL - Vérifications par secondes :
- CentOS 7 : 20 098
- Debian 10 : 19 812
- Ubuntu 18.04 LTS : 20 147
Compilation Blender :
- Debian 10 : 118 s
- Ubuntu 18.04 LTS : 126 s
Rendu Blender headless - BMW27 :
- Debian 10 : 132 s
- Ubuntu 18.04 LTS : 135 s
Fedora 30, Manjaro, Ubuntu 19.04 : c'est compliqué
Un problème survient par contre avec des versions plus récentes de ces distributions. Nous l'avons rencontré avec la dernière mouture de Fedora. Idem pour Manjaro ou Ubuntu 19.04.
Dans tous les cas, le symptôme est le même : de multiples erreurs de démarrage des services via systemd dès l'installation ou à l'initialisation du système d'exploitation :

Des patchs sont déjà en préparation et devraient régler rapidement la situation, en attendant l'intégration à une nouvelle version des ISO. Avec une installation de type netboot, l'utilisateur téléchargera en effet la version corrigée des paquets concernés, de quoi éviter le souci une fois la mise à jour distribuée.
Proxmox, VMWare ESXi : virtualisez comme vous voulez
Il y a un autre environnement où la compatibilité avec Linux peut rapidement montrer ses limites, c'est celui de la virtualisation. Nous avons donc activé les options nécessaires de la carte mère (SVM, IOMMU) puis installé deux hyperviseurs : la version gratuite d'ESXi de VMWare (6.7 Update 2), et Proxmox (5.4) qui se base sur le duo Debian/KVM.
Notre carte mère a été parfaitement reconnue dans les deux cas, tout comme le CPU. Nous avons ainsi pu installer un Windows 10 virtualisé et l'utiliser sans problème. Il nous est pour le moment impossible d'utiliser une carte graphique en passtrough sous Proxmox en raison des groupes IOMMU de la carte mère. Nous tâcherons de mieux cerner le souci dans un second temps, notamment avec une carte mère serveur comme la X470D4U. Aucun problème en revanche avec ESXi.
Les performances relevées sont proches de celles sous Windows, excepté pour ESXi puisque le système virtualisé doit se contenter de huit cœurs au maximum dans sa version gratuite.