// VPS

vCore ou vCPU, c'est quoi ? Bien comparer les CPU d'un VPS

vCore ou vCPU, c'est quoi ? Bien comparer les CPU d'un VPS

Qu'est-ce qu'un vCore ? Chez la plupart des hébergeurs, un vCore, aussi appelé vCPU, est un thread d'un cœur physique de processeur que l'hyperviseur planifie pour toi, et non un cœur entier. La quantité de travail qu'abat un tel vCore dépend du processeur qui se trouve derrière : deux vCores sur un Xeon de 2014, ce n'est pas la même chose que deux vCores sur un Ryzen 9 récent.

Qu'est-ce qu'un vCore ? Cœur, thread et vCPU en bref

Dans les offres VPS, quatre notions se mélangent. Voici comment elles s'articulent :

  • Cœur : une unité de calcul physique sur le processeur. Un processeur serveur en compte aujourd'hui souvent 16 ou plus.
  • Thread : avec le SMT (simultaneous multithreading, Hyper-Threading chez Intel), un cœur exécute deux threads en même temps. Un processeur de 16 cœurs a alors 32 threads. Les deux threads d'un cœur partagent toutefois les unités de calcul et le cache de ce cœur.
  • vCPU ou vCore : un processeur virtuel que l'hyperviseur attribue à ton VPS. Ce sont deux noms pour la même chose. Chez la plupart des hébergeurs, un vCore correspond à un thread.
  • Processeur logique : c'est ainsi que Windows appelle chaque thread ou vCore qu'il voit ; Linux parle de CPU. Un VPS avec 4 vCores voit 4 processeurs.

Entre vCore et cœur, le vCore est donc généralement la plus petite unité. Deux threads sur un cœur rendent ensemble plus qu'un seul thread, mais pas le double, car ils partagent le même cœur. « 2 vCores » ne veut donc pas dire « 2 cœurs complets ».

Schéma : qu'est-ce qu'un vCore ? Un cœur physique exécute deux threads grâce au SMT, que l'hyperviseur attribue comme vCores à ton VPS
Un vCore est généralement un thread d'un cœur physique, planifié par l'hyperviseur.

Pourquoi « 2 vCores » n'est pas partout pareil

Deux offres avec « 2 vCores » peuvent être très éloignées l'une de l'autre. Ce qu'un vCore fait par seconde dépend du processeur : sa fréquence et la quantité de travail que l'architecture accomplit par cycle d'horloge. On le voit bien avec nos propres offres d'entrée de gamme :

GammeProcesseurFréquence max.Mémoire2 vCores dès
VPS pas cherIntel Xeon E5-2699 v3jusqu'à 3,6 GHzDDR42,00 € par mois (1 Go)
VPS KVMAMD EPYC 7443Pjusqu'à 4,0 GHzDDR43,40 € par mois (2 Go)
VPS PremiumAMD Ryzen 9 9950X*jusqu'à 5,7 GHzDDR55,00 € par mois (2 Go)

Les trois ont 2 vCores, mais près de dix ans d'évolution des processeurs séparent le Xeon de 2014 et le Ryzen 9. La fréquence maximale reste une valeur de pointe : selon AMD, la fréquence qu'atteint un cœur lors d'un travail bref sur un seul thread. Sous pleine charge, elle est plus basse, quel que soit le processeur.

Si tu compares des offres VPS, regarde quatre choses :

  1. Le modèle de processeur. S'il n'est pas indiqué, tu ne sais pas vraiment ce que tu achètes.
  2. La génération. Une architecture plus récente en fait généralement plus par cycle d'horloge.
  3. Partagé ou dédié. Les vCores partagés coûtent moins cher, les cœurs dédiés sont toujours libres pour toi.
  4. La mémoire qui va avec. Souvent, la RAM s'épuise avant la puissance de calcul.

* ou AMD Ryzen 9 7950X3D, selon le nœud.

Partagé ou dédié : ce que signifient des vCores partagés

Avec un VPS, tu partages les cœurs physiques avec d'autres VPS sur le même nœud. L'hyperviseur planifie les vCores de tous les VPS sur les threads disponibles. Tant qu'il y a de la marge, tu ne remarques rien. Si beaucoup de VPS réclament en même temps toute leur puissance de calcul, ton vCore doit parfois attendre un instant.

Ce temps d'attente s'appelle le steal time. Tu le vois dans top sous la valeur st de la ligne %Cpu(s) ; le manuel de top le décrit comme « time stolen from this vm by the hypervisor ». Quelques pour cent de temps en temps, c'est normal sur du matériel partagé. S'il reste élevé alors que ta propre charge ne change pas, tu es nettement en concurrence pour le temps de calcul.

Avec un VDS, c'est différent : les cœurs te sont attribués de façon fixe. Cela coûte plus cher, le VDS avec cœurs dédiés commence à 28,00 € par mois pour 2 cœurs dédiés et 8 Go, mais ta puissance de calcul ne dépend alors plus des autres. La différence est expliquée dans VDS ou VPS : que veut vraiment dire « dédié » ?, et quand le passage vaut le coup dans Du VPS au VDS : quand est-il temps de franchir le pas ?

De combien de vCores as-tu besoin ?

Plus de vCores n'aident que si ton logiciel peut les utiliser. Notre conseil, avec les recommandations de mémoire de nos pages boutique :

  • Site web, bot Discord, VPN ou monitoring : 2 vCores, c'est largement suffisant, car ce type de logiciel passe surtout son temps à attendre. La plus petite offre de chaque gamme en a 2, et le VPS pas cher dès 2,00 € suffit souvent ici.
  • Un serveur Minecraft : le tick du monde tourne sur un seul thread principal, donc la vitesse par cœur prime sur le nombre. 2 vCores conviennent pour un petit serveur, 4 vCores laissent de la marge pour le chargement des chunks, le garbage collection et les plugins. Mémoire : dès 4 Go, avec des mods dès 8 Go.
  • FiveM : jusqu'à 64 slots, 8 à 16 Go. Prends 4 vCores si une base de données tourne aussi sur le même VPS.
  • Plusieurs serveurs sur un VPS : compte environ un vCore rapide par serveur lourd pour la boucle principale, plus un peu pour le système, et additionne la mémoire. 6 vCores avec 16 Go sur le VPS Premium (28,00 € par mois) sont alors un point de départ logique.
  • Windows Server : Windows consomme lui-même plus qu'un Linux nu. Compte au minimum 4 Go et de préférence 4 vCores. Windows est possible sur le VPS KVM, le VPS Premium et le VDS, pas sur le VPS pas cher ; aucune licence n'est incluse.

Pour tout ce qui est limité par la vitesse d'un seul cœur, choisis le VPS Premium avec Ryzen 9. Si tu hésites sur la gamme qui convient à ton projet, lis Quel serveur VPS choisir ?

Comment vérifier ce que tu obtiens

Après ta commande, tu vérifies en une minute ce que voit ton VPS. Connecte-toi en SSH (voir Comment me connecter en SSH à mon VPS ?) et lance :

nproc
lscpu | grep -E "^CPU\(s\)|Thread\(s\) per core|Model name"
top
  • nproc donne le nombre de processeurs que ton VPS peut utiliser. Il doit correspondre à ton nombre de vCores.
  • lscpu affiche le nombre de CPU et souvent le modèle. Selon le manuel de lscpu, les cœurs par socket peuvent différer sur du matériel virtuel ; fie-toi donc à CPU(s), pas à la topologie.
  • Dans top, appuie sur 1 pour voir chaque vCore séparément, avec sur chaque ligne le steal time dans st.

Sous Windows Server, ouvre le Gestionnaire des tâches, onglet Performance, rubrique Processeur. Tu y vois combien de processeurs (virtuels) Windows détecte.

Quand plus de vCores n'aident pas

Le malentendu classique : le serveur lag, donc il faut ajouter des vCores. Regarde d'abord dans htop. Si un vCore est à 100 % alors que les autres ne font pas grand-chose, ton serveur attend la vitesse d'un seul cœur. Plus de vCores n'y changent rien, un cœur plus rapide, si. Pour comprendre pourquoi, lis Ryzen ou EPYC pour ton serveur de jeu ?

Si au contraire tous les vCores sont saturés, il t'en faut plus. Au sein d'une gamme, tu passes à une offre plus grande depuis l'espace client et tu paies la différence pour le reste de ta période. Si tu veux changer de gamme, par exemple du VPS KVM au VPS Premium, contacte-nous à l'avance et prévois de devoir migrer ton serveur.

Si la mémoire est pleine ou le steal time élevé, la cause est ailleurs et des vCores supplémentaires n'aident pas davantage. La marche à suivre est expliquée dans VPS lent ou lag ? Trouve la cause en 10 minutes.

Questions fréquentes

Qu'est-ce qu'un vCore, et quelle est la différence avec un cœur ?

Un vCore (ou vCPU) est un processeur virtuel que l'hyperviseur attribue à ton VPS. Chez la plupart des hébergeurs, un vCore correspond à un thread d'un cœur physique, et avec le SMT, un cœur exécute deux threads. Un vCore représente donc généralement moins qu'un cœur entier.

Un vCPU, est-ce la même chose qu'un vCore ?

Oui. vCPU et vCore sont deux noms pour le même processeur virtuel ; le nom qu'utilise un hébergeur est une question d'habitude. Plus important que le nom : le processeur qui se trouve derrière, et le fait que les vCores soient partagés ou dédiés.

De combien de vCores ai-je besoin pour un serveur Minecraft ?

Pour un seul serveur, 2 vCores suffisent pour commencer et 4 vCores sont confortables. Le tick du monde tourne sur un seul thread principal, donc la vitesse par cœur compte plus que le nombre. Côté mémoire, compte au minimum 4 Go, 8 Go avec des mods et 12 Go pour les gros modpacks.

Que signifie le steal time ?

Le steal time est le temps pendant lequel ton vCPU était prêt à calculer, mais a dû attendre parce que l'hyperviseur a donné le processeur physique à autre chose. Tu le vois dans top sous la valeur st. S'il reste durablement élevé, tu es en concurrence pour le temps de calcul et un VDS avec cœurs dédiés peut être la solution.

À lire aussi

// ESSAYEZ VOUS-MÊME
Votre serveur Minecraft en ligne en 60 secondes
Voir les offres →