5 GHz Iron: une histoire sur la façon de construire un VDS ultra-rapide



Si notre bon vieux tarif «Fast and the Furious» était un homme, maintenant il fumait nerveusement de côté et se souvenait des meilleures années. Mais comme tout a bien commencé. Puis, en 2018, nous avons été les premiers à connecter NVMe et à modifier le tarif avec une évolutivité flexible des ressources, qui nous accompagne depuis 2016. Il était alors le plus rapide de tous nos tarifs. Mais les temps changent, et malgré le fait que le Gold 5115 soit toujours considéré comme un processeur assez rapide, des solutions sont déjà apparues et s'ébattent.

En général, mon histoire raconte comment le Fast and the Furious a dû à contrecœur quitter la plus haute marche du podium et prendre la troisième place en vitesse après deux nouveaux tarifs - "Bitrix.Turbo" et "CPU.Turbo", que nous avons lancés cette année.

Je peux vous promettre qu'il y aura beaucoup de détails sur le matériel, les tests de processeur et (enfin, nécessaires) les machines virtuelles et une cuisine interne. Commençons donc.

Il s'agit d'une course de survie - maintenant ce sera amusant!


En février 2019, nous avons lancé un nouveau tarif Bitrix: Turbo: serveurs avec processeurs Intel Core i9-9900K avec une fréquence d'horloge de 5 GHz en mode Turbo Boost. Nous avons effectué des tests de performances - puis j'ai écrit mon premier article , et les gars du département suivant ont vu la recette pour tirer le meilleur parti de Bitrix . i9 a répondu à nos attentes, le lancement a eu lieu. Merci à tous, divergent ...

En fait, Bitrix Turbo s'est avéré très populaire auprès de nos clients. Jusqu'à présent, nous n'avons que le temps d'ajouter des serveurs au cluster. Nous avons donc tiré des conclusions et décidé de ne pas nous arrêter là, mais de poursuivre nos recherches dans le domaine des processeurs haute fréquence.

Depuis que Bitrix.Turbo a été conçu (et il s'est avéré!) Par un tarif très spécialisé, et que les clients Fast et Furious ont davantage apprécié la flexibilité, il a été décidé de compléter la gamme avec un tarif speed pour tous ceux qui ont besoin "encore plus frais, encore plus vite".

Étant donné que le i9-9900K nous a présenté quelques «surprises», nous avons immédiatement décidé que nous allions lancer sur d'autres processeurs. Oui, c’était comme ça, déjà au stade de la conception d’une solution matérielle pour Bitrix. Turbo, nous avons eu une «expérience fascinante et riche». Eh bien, ou c'est nous. Comme c'est le cas, je vais m'éloigner un peu du récit principal et parler brièvement de cette expérience.

Un serveur standard pour le tarif Bitrix Le turbo est assemblé sur une plate-forme mono-unité: une carte mère basée sur le chipset Intel Q370, un processeur Intel i9-9900K, 64 Go de RAM, deux disques NVMe 2 To en RAID1.

La mise en œuvre d'une telle solution était extrêmement amusante et intéressante. Le fait est que selon Intel, le TDP de ce processeur est de 95 watts. En effet, si vous utilisez des cartes mères, par exemple, avec le chipset H310, le processeur à pleine charge ne dépasse pas ces limites: il accélère tranquillement un cœur à 5 GHz et le reste dans la plage de 4,7 à 4,8 GHz. Mais si la plate-forme utilise un chipset avec une classe supérieure, par exemple, le Q370 et une puissance de processeur améliorée, le processeur accélère vers un plus grand nombre de cœurs jusqu'à 5 GHz: de 2 à 5, et le TDP augmente à près de 200 watts.

Refroidir un tel «poêle» en une seule unité n'est pas une tâche facile. Le processeur a commencé à étrangler et a abaissé la fréquence sur tous les cœurs à 4,4-4,5 GHz. Il était extrêmement difficile de contrôler une telle situation. Pour être honnête, pour la première fois, je suis tombé sur un écart aussi fort entre les spécifications et la mise en œuvre réelle d'un fabricant aussi important et sérieux que les Blues.

En raison du fait qu'à l'époque c'était le seul processeur disponible avec des fréquences nominales aussi élevées, nous avons dû travailler dur avant de nous permettre de l'utiliser pour un nouveau tarif, et recourir à des décisions plutôt banales: utiliser des cas spéciaux avec un puissant refroidissement par air et organiser des baies de refroidissement non moins cool. Tout cela ensemble vous permet de vous assurer que plus de cœurs fonctionnent au maximum à une fréquence de 5 GHz sans surchauffe ni limitation, mais augmente la consommation d'énergie et le bruit, le bruit sauvage.

Malheureusement, à ce moment-là, nous ne pouvions pas introduire le refroidissement liquide: d'une part, il n'y avait pas de solution appropriée dans la bonne quantité pour démarrer, d'autre part, il y avait beaucoup de questions sur la fiabilité des solutions existantes - nous ne voulions vraiment pas noyer les serveurs.

Revenons maintenant à l'histoire principale.

Rake Dancing




Comme vous le savez, les fabricants de processeurs testent leurs solutions sur le marché des ordinateurs de bureau et, en cas de résultat positif, les mettent en œuvre sur le segment des serveurs. On ne pouvait qu'attendre l'apparition du serveur analogique d'Intel i9-9900K. Et presque un an plus tard, un tel analogue est apparu - c'était Intel Xeon E-2288G. Intel a pris en compte les lacunes de son prédécesseur: le processeur est devenu étroitement limité dans le paquet de chaleur (95 W). Comme pour tout processeur de serveur Intel, la mémoire compatible ECC est apparue et la capacité maximale prise en charge est passée à 128 Go.

Nous avons compris le processeur, il est temps de traiter avec la plate-forme serveur. Trouver le bon est devenu un problème sérieux pour nous, car nous en cherchions un qui nous conviendrait selon les caractéristiques tactiques et techniques, avait un coût adéquat et supportait toutes les possibilités d'une pierre aussi rapide.

Le processeur étant nouveau, le choix des plateformes a été très, très limité. Après une étude approfondie et minutieuse, nous avons opté pour trois options: la première est tombée lors des premiers tests, - le fabricant a publié une version brute du firmware de la plate-forme avec prise en charge de l'E-2288G, avec laquelle toute la solution fonctionnait extrêmement instable, et il n'était possible d'attendre qu'une nouvelle version et une stabilisation de la plate-forme. années. Le second n'a pas permis d'organiser un refroidissement complet des circuits de puissance, ce qui est très important pour ce processeur. Le nouveau processeur était trop dur pour eux. Mais le troisième est venu à tous égards. Non seulement rencontré, mais même dépassé nos attentes. Je ne peux pas divulguer de modèles - un secret commercial.

Nous avons également décidé d'abandonner le refroidissement par air extrême au profit du liquide (ci-après dénommé «eau»), auquel nous prévoyons progressivement de transférer des serveurs pour le projet Bitrix.Turbo. Le progrès ne s'arrête pas et c'est merveilleux.

En conséquence, la transition vers le refroidissement par eau a permis d'augmenter les performances des processeurs Intel i9-9900K et Intel Xeon E-2288G, sans dépasser le seuil de température de 65 degrés dans la charge continue maximale dans tous les flux. Après avoir passé beaucoup de temps à étudier toutes les possibilités, ainsi que toutes les situations d'urgence possibles et même impossibles (j'étais très sceptique sur «l'eau»), après avoir effectué de longs tests à des charges maximales, même j'ai été forcé de convenir que cette solution mérite de vivre longtemps et heureusement. Par conséquent, familiarisez-vous avec le nouveau taux de processeur.

Les performances du matériel et des logiciels pour le nouveau tarif

Le fer Plate-forme mono-processeur mono-unité, processeur Intel Xeon E-2288G avec système de refroidissement par eau, 64 Go de RAM ECC, sous-système de disque sur deux disques Intel M.2 NVMe en RAID1.

Doux Étant donné que nous utilisons des panneaux ISPsystem VMmanager 5, le choix du système d'exploitation n'est pas très riche, par conséquent, le système d'exploitation Linux CentOS 7 avec Oracle Unbreakable Enterprise Kernel version 5 (UEK5) 4.14, qemu 2.12, libvirt 4.5.

Test


Cette fois, les tests ont été effectués en deux fois.

Tout d'abord, nous avons comparé les processeurs: i9-9900K sur «air», i9-9900K sur «eau» et E-2288G sur «eau». Nous n'avons pas commencé à effectuer un ensemble complet de tests sur ce dernier avec refroidissement par air en raison de l'insensé de l'entreprise - il était immédiatement clair ce que et comment ce serait. Je n'ai pas non plus testé le processeur Intel Gold 5115, qui est utilisé sur les tarifs Fast et Furious. Ces serveurs viennent dans une configuration à double processeur et dans les tests multi-threads, la pureté de la comparaison est perdue.

Ensuite, nous avons commencé à tester cinq machines virtuelles: une sur le tarif Fast and Furious et quatre sur le processeur Turbo. Les tests ont été effectués avec le processeur hôte émulé sur un serveur parent vide (sans voisin) dans les variations tarifaires «2 cœurs / 4 gig» (c'est la plus populaire de la configuration comparable sur le Fast et le Furious).



Les performances des plates-formes

Tarif Bitrix Turbo

  • Intel i9-9900K
  • Carte mère: Asus PRIME Q370M-C
  • RAM: 16 Go DDR4-2666MT / s Kingston 4 pièces
  • SSD: 2 To Intel NVMe M.2 2 pièces en RAID1

Tarif du processeur Turbo

  • Intel Xeon E-2288G
  • RAM: 16 Go DDR4-2666MT / s Kingston 4 pièces
  • SSD: 2 To Intel NVMe M.2 2 pièces en RAID1

La liste des tests qui ont été effectués:

  1. Geekbench
  2. Sysbench
  3. Phoronix Test Suite

Une description détaillée de ce complexe se trouve dans mon dernier article . Un jour, je rassemblerai mon courage, ajouterai des détails et publierai séparément.


Résultats des tests du processeur




Selon le test Geekbench en mode mono-thread, le Xeon E-2288G est légèrement derrière le i9-9900K - la différence n'est que de 0,8%. En mode multi-thread, le i9-9900k est déjà en retard - de 7,63%.

Autres résultats des tests












Dans tous les tests, à l'exception de GeekBench, le i9-9900K sur «eau» est meilleur que lui-même sur «air». L'E-2288G est meilleur que son "progéniteur" dans tous les tests, à l'exception du test GeekBench à un seul fil et du test Apache. Je crois que les résultats de ces tests ont été affectés par les optimisations internes du processeur, ce qui nous a permis de l'emballer dans un package thermique stable. Dans d'autres tests à un seul thread, les performances sont au même niveau avec une erreur - nous ne sauterons pas au-dessus de 5 GHz :-)

Nous allons plus loin.

Test de serveur virtuel


Nous comparerons jusqu'à cinq machines virtuelles.

Tout d'abord, comme toujours, une machine virtuelle exécutant CentOS Linux 7 avec le noyau de stock 3.10. De plus, étant donné que le serveur hôte utilise le noyau personnalisé Unbreakable Enterprise Kernel Release 5 (UEK5) d'Oracle, qui vous permet d'augmenter les performances sur les nouveaux processeurs, voyons comment les performances d'une machine virtuelle avec CentOS 7 et le noyau UEK5 (4.14) à l'intérieur changeront à la vitesse du processeur. Turbo. Si j'ai déjà fait le test CentOS 7 avec deux noyaux différents, pourquoi ne pas regarder les tests passant par des machines virtuelles sur d'autres systèmes d'exploitation Linux et d'autres versions du noyau? Prenez les dernières versions d'Ubuntu LTS et Debian: Ubuntu 18.04 (noyau 4.15) et Debian 10 (noyau 4.19).

Donc, à la ligne de départ:

  • Fast & Furious CentOS 7 (3.10),
  • CPU Turbo CentOS 7 (3.10),
  • CPU Turbo CentOS 7 (uek5 4.14)
  • CPU Turbo Ubuntu 18.04 (4.15),
  • CPU Turbo Debian 10 (4.19).

Ainsi, nous comparerons deux tarifs, et deux CentOS 7 avec des noyaux différents, et 3 versions d'OS populaires. Je voulais depuis longtemps remuer une telle chose, je ne savais pas quel article mettre :-)

Les tests sont les mêmes, eh bien, je les aime vraiment.

Résultats des tests du serveur virtuel




Selon les résultats du test de Geekbench en mode monothread, la première place est dans le CPU VM Turbo avec le noyau UEK5. De plus, la différence entre Fast et Furious et CPU Turbo (3.10) est déjà de 65,02% et avec le noyau UEK5 - tous de 67,01%. La différence entre CPU, Turbo sur Centos 7 et Debian est de 0,2% en faveur de UEK5.

En mode multi-thread, le CPU est le leader, Turbo Debian. Il devance le CPU. Turbo (3.10) de 2.19% et le CPU. Turbo (UEK) de 1.13%. Dans le même temps, le CPU Turbo (3.10) devance Fast and Furious de 55,48%. La différence entre CPU.Turbo (UEK) et Fast and the Furious atteint 57,13%.

Autres résultats des tests













Dans le test Geekbench mono-thread et multi-thread, ainsi que dans les tests Sysbench, C-ray, OpenSSL, CentOS 7 avec les deux noyaux et Debian 10 sont à peu près au même niveau. Ubuntu est à la dernière place 18.04.

Dans le test de compression: Compress-7zip et Compress-bzip - la première place dans Debian 10, la deuxième place est partagée par CentOS 7 avec les deux noyaux, la troisième place est dans Ubuntu 18.04.

Dans le test d'encodage mp3, les emplacements ont été répartis comme suit: Debian 10, Ubuntu 18.04, CentOS 7 UEK5, CentOS 7 avec le noyau 3.10.

Dans le test Himeno à un seul thread, CentOS 7 3.10 et CentOS 7 UEK5 se classaient premier et deuxième, Debian 10 était le troisième et Ubuntu 18.04 était le quatrième avec un gros décalage.

Dans le test ffmpeg, la première place est sur CentOS 7 UEK5, la seconde sur Debian 10, la troisième place est partagée par CentOS 7 3.10 et Ubuntu 18.04.

Dans le test de John The Ripper, Debian 10 a pris la première place, la seconde avec CentOS 7 avec le même résultat, la troisième avec Ubuntu 18.04.

Dans le test Apache, CentOS7 UEK5 mène par une large marge, suivi par Debian 10, CentOS 7 3.10, Ubuntu 18.04.

Dans le test GCC, la différence entre les VM sur le tarif CPU. Turbo est négligeable.

Dans tous les tests, VM a la dernière place sur le tarif Fast et Furious - il y a une différence de fréquences.



Fait intéressant le test des machines virtuelles. Le retard de VM sur le tarif Fast and Furious était évident. Les résultats pour les machines virtuelles avec CentOS 7 avec différents noyaux étaient également évidents: ils auraient dû être proches ou avec une légère marge vers un noyau plus récent. Seul le test Apache était inattendu. Mais la révélation complète a été les résultats de Debian 10 et d'Ubuntu 18.04 - en tête dans la plupart des tests de Debian 10 et en retard dans la plupart des tests d'Ubuntu 18.04.

Il m'est difficile de dire ce qui influence exactement une telle diffusion des résultats. Peut-être un noyau et un logiciel plus récents. Ou un ensemble de services lancés «prêts à l'emploi»: des tests ont été effectués sur des VM fraîchement déployées sans aucun paramètre. Si Debian 10 après le lancement démarre un très petit nombre de services qui peuvent être comptés sur les doigts des deux mains d'un opérateur de fraiseuse expérimenté, alors Ubuntu 18.04 n'a pas commencé à se regrouper dans un cadre aussi étroit :-)

En général, pour ceux qui décident de leur propre expérience pour s'assurer que le nouveau taux de CPU. Turbo est à juste titre appelé un haut débit, je recommande de prendre en compte deux points. Premièrement, le système d'exploitation - sur Debian, ce sera plus rapide sans chamanisme, avec CentOS 7, c'est aussi génial, mais si vous conjurez avec le noyau, c'est super. Qui se soucie d'installer UEK5 sur CentOS 7 - dans les commentaires. Et deuxièmement, il convient de rappeler que nous avons toujours testé sur des nœuds vides. Et cela signifie que, sous charge, les résultats seront légèrement différents, mais toujours élevés. Bon à tous.

Jusqu'au 3 octobre, les serveurs sont au tarif CPU, Turbo peut être commandé sur le site firstvds.ru avec une remise de 25% pendant 1 mois en utilisant le code promotionnel HABR_TURBO . Le code promotionnel brûlera à minuit le 4 octobre 2019. Vous pouvez également prendre le serveur pour un test gratuit de trois jours.



PS Dans toutes les photos, notre généraliste RH Sonya.

Testé et rédigé pour vous par Trashwind , administrateur système senior du département des opérations.

Source: https://habr.com/ru/post/fr468003/


All Articles