Linux, hyperviseurs : quelles distributions pour les Ryzen de 3ème génération ?

Patch needed
Linux, hyperviseurs : quelles distributions pour les Ryzen de 3ème génération ?

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 :

Ryzen 3700X Erreurs Systemd

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. 

  • AMD Ryzen 7 3700X Proxmox
  • AMD Ryzen 7 3700X Proxmox
  • AMD Ryzen 7 3700X Proxmox
  • AMD Ryzen 7 3700X ESXi
  • AMD Ryzen 7 3700X ESXi
  • AMD Ryzen 7 3700X ESXi
  • AMD Ryzen 7 3700X ESXi
Ce contenu est désormais en accès libre

Il a été produit grâce à nos abonnés, l'abonnement finance le travail de notre équipe de journalistes.

ou choisissez l'une de nos offres d'abonnement :

32 commentaires
Avatar de NSophis Abonné
Avatar de NSophisNSophis- 12/07/19 à 07:03:39

J'étais justement en train de préparer une machine linux pour accueillir le ryzen 2 qui arrive par la poste.

Merci pour cet article :yes:

Avatar de NSophis Abonné
Avatar de NSophisNSophis- 12/07/19 à 07:16:01

(Impossible d'éditer mon message ci-dessus désolé.)

Je viens de lire l'article, vous ne parlez pas de virtualbox (que j'ai l'habitude d'utiliser sur mes machines windows), il y a une raison pratique à cela ? (genre gros problème sous linux ?)

Et merci pour les test, je vais rester en LTS et attendre les patchs avant de passer à Disco.

Avatar de Balooforever Abonné
Avatar de BalooforeverBalooforever- 12/07/19 à 07:26:33

Concernant Proxmox, en 5.4 sur ma Asus prime x470 + Ryzen 2700x, impossible également de faire du gpu passtrough avec le dernier bios de la cm. D après les forums, noyau trop ancien, ça ne serait pas identique en x570 ? J ai du downgrader le bios , s était loin d une partie de plaisir !

Avatar de David_L Équipe
Avatar de David_LDavid_L- 12/07/19 à 07:31:07

(quote:42513:NSophis) Je viens de lire l'article, vous ne parlez pas de virtualbox (que j'ai l'habitude d'utiliser sur mes machines windows), il y a une raison pratique à cela ? (genre gros problème sous linux ?)

VB est plutôt du côté utilisateur, un peu comme VMWare Player/Workstation. C'est une application plus qu'un OS à installer (contrairement à Proxmox/ESXi), du coup le support de la VT dépend surtout de l'OS plus que d'un lien profond avec le noyau.

(quote:42515:Balooforever) Concernant Proxmox, en 5.4 sur ma Asus prime x470 + Ryzen 2700x, impossible également de faire du gpu passtrough avec le dernier bios de la cm. D après les forums, noyau trop ancien, ça ne serait pas identique en x570 ? J ai du downgrader le bios , s était loin d une partie de plaisir !

Disons que pou le moment j'attend que les choses se tassent côté BIOS/UEFI avant de rententer de me plonger là dedans en profondeur :D

Avatar de bidou.bidou Abonné
Avatar de bidou.bidoubidou.bidou- 12/07/19 à 07:34:08

Pour compiler blender sous centos 7, il y a SCL yum install centos-release-scl yum install devtoolset-7 scl enable devtoolset-7 bash Et hop on passe de gcc 4.8 à gcc 7.3

Avatar de NSophis Abonné
Avatar de NSophisNSophis- 12/07/19 à 07:36:10

(quote:42517:David_L) VB est plutôt du côté utilisateur, un peu comme VMWare Player/Workstation. C'est une application plus qu'un OS à installer (contrairement à Proxmox/ESXi), du coup le support de la VT dépend surtout de l'OS plus que d'un lien profond avec le noyau.

Merci pour ces précisions

Avatar de David_L Équipe
Avatar de David_LDavid_L- 12/07/19 à 07:41:42

(quote:42518:bidou.bidou) Pour compiler blender sous centos 7, il y a SCL yum install centos-release-scl yum install devtoolset-7 scl enable devtoolset-7 bash Et hop on passe de gcc 4.8 à gcc 7.3

Oui comme dit c'est juste que ce n'était pas présent "from scratch" les performances étaient de toutes façons du même niveau sur les trois distributions (comme on le voit avec OpenSSL). De toutes façons il faudra sans doute attendre un noyau plus récent pour que toutes les fonctionnalités de Zen 2 soient implémentées, j'attend des confirmations là dessus :chinois:

Édité par David_L le 12/07/2019 à 07:41
Avatar de Balooforever Abonné
Avatar de BalooforeverBalooforever- 12/07/19 à 07:43:52

(quote:42517:David_L) VB est plutôt du côté utilisateur, un peu comme VMWare Player/Workstation. C'est une application plus qu'un OS à installer (contrairement à Proxmox/ESXi), du coup le support de la VT dépend surtout de l'OS plus que d'un lien profond avec le noyau.Disons que pou le moment j'attend que les choses se tassent côté BIOS/UEFI avant de rententer de me plonger là dedans en profondeur :D

J'ai d'ailleurs la même limitation sur Unraid et les gens parlent de la version 5 du noyau. J'espère que la 4.19 suffit car l'attente risque d'être longue :D

Avatar de HPact Abonné
Avatar de HPactHPact- 12/07/19 à 07:47:28

Merci! Des informations très intéressantes et qu'on ne retrouve pas partout: des tests d'os de virtualisation. Les cartes mères grand public ne sont pas les plus simples pour le passthrough avec des groupes IOMMU généralement assez peu nombreux donc rassemblant souvent trop de choses. :(

Avatar de David_L Équipe
Avatar de David_LDavid_L- 12/07/19 à 07:51:49

(quote:42524:HPact) ...

Disons que ce qui m'étonne c'est que ça fonctionne sous ESXi mais pas Proxmox, m'enfin comme dit par Balooforever, ça peut tenir de détails côté support logiciel.

Il n'est plus possible de commenter cette actualité.
Page 1 / 4

Votre commentaire

Avatar de lecteur anonyme
Avatar de lecteur anonyme

2000 - 2019 INpact MediaGroup - SARL de presse, membre du SPIIL. N° de CPPAP 0321 Z 92244.

Marque déposée. Tous droits réservés. Mentions légales et contact