S’il y a une chose primordiale quand on monte un PC gaming, c’est de choisir correctement ses composants. Tout d’abord pour avoir le construire, le PC qui correspond au besoin. On doit également aiguiser ses choix pour maitriser la dépenser. Mais enfin, pour éviter le bottleneck. C’est-à-dire d’éviter de tomber dans la situation ou l’un des composants (principalement la carte graphique ou le processeur) ne soit trop (ou pas assez puissant) ou point d’être limité par l’autre. On donne généralement une petite règle simple. On recommande de prendre une carte graphique qui coute 2 à 3 fois plus que le processeur. Il est souvent question d’orienter ses choix en fonction des titres, de la résolution et de la fréquence d’affichage visée. Pour autant, selon la situation, je ne suis pas forcément d’accord avec ça.

En pratique

En effet, pour décider s’il y a bottleneck ou non, les quelques tests proposés me semblent incomplets. Le plus souvent, on propose de réduire les options graphiques ou la résolution. Cela a pour effet de réduire la charge de la carte graphique et augmenter la pression sur le processeur. Avec des images plus faciles à générer, la carte graphique peut donc en envoyer plus pour l’affichage jusqu’à saturer la capacité du processeur à les afficher, c’est le « bottleneck CPU » c’est-à-dire que la carte graphique n’est plus utilisée à 90% ou plus. À l’inverse, en mettant les options au max et en montant la résolution, les images sont plus longues à générer, donc la carte graphique n’est pas capable d’envoyer autant par seconde, c’est ce que l’on appelle être « GPU limited« . Si l’on compare le nombre d’images par seconde en moyenne sur plusieurs jeux en faisant ces tests, on obtient une basse de performances.

Cependant, pour moi, c’est relativement biaisé aux extrêmes. En montant en 4k, même une 4090 se retrouvera limitée. À l’inverse, cette même 4090 en 1080p se retrouvera bridée par le meilleur des i9 et Ryzen 9. Via ces tests, on se retrouve à toujours prendre un processeur bien plus performant que ce qu’il faudrait. On se retrouve également à une carte graphique parfois surdimensionnée et sous-utilisée. En outre, selon l’optimisation des jeux et selon leurs utilisations des coeurs. On peut se retrouver avec des situations dans lesquelles une carte graphique déjà utilisée à 100% peut produire des images supplémentaires avec un processeur avec des cœurs plus performants. Et c’est d’autant plus vrai à haute résolution, contrairement à ce que l’on pourrait croire.

Le cas pratique

En schématisant avec Starfield, un Ryzen 5600 couplé à une 4080, offrira 70 fps en 1080p, 70 en 1440p et 60 en 4k. Si l’on prend à l’inverse un 7800X3d avec cette même 4080, on obtiendra 100 fps en 1080p, 90 en 1440p et 60 en 4k.  Si l’on remplace la 4080 par une 4070, le 7800X3d offrira 70 fps en 1080p, 60 en 1440p et 40 en 4k. La 1ère chose que l’on peut se dire est que si l’on joue en 4k, on peut faire l’économie sur le processeur pour s’offrir une meilleure carte. Car en 4k, le bottleneck n’existe pas (sur des CPU moyen/haut-de-gamme). Et bien en fait oui et non. Si on s’intéresse en 1% d’images par seconde les plus basses (donc l’impression de fluidité générale du jeu), l’écart entre les processeurs augmente et c’est là où le bottleneck arrive à mes yeux. C’est-à-dire qu’en fonction de jeu et de la scène, le processeur est plus ou moins à ses limites. On peut considérer que par jeu et type de scène, il existe un nombre maximal d’images que le processeur est capable de gérer.

Cela se voit d’autant plus sur des jeux moins bien optimisés ou plus exigeants. Je ne parle même pas d’options comme le Ray Tracing.

 

Mais alors, on fait quoi, comment ?

La manière la fiable pour observer le bottleneck, est d’utiliser un logiciel de monitoring comme PresentMon d’Intel. Ce logiciel permet de mesurer le temps de rendu entre le moment où il y a une entrée au clavier et son apparition à l’écran. Le logiciel permet également d’indiquer, en moyenne pour image rendue, le temps de travail CPU/GP. Et le temps durant lequel l’un attend l’autre. L’outil permet ainsi d’affiner au mieux les réglages graphiques. A priori, on souhaite maximiser l’utilisation du GPU. Et donc avoir le minimum de temps durant lequel le GPU est en attente des traitements du processeur pour afficher l’image. L’idéal étant d’avoir moins de 1 ms d’attente du GPU pour l’exploiter au maximum.

By tech

Laisser un commentaire

Votre adresse e-mail ne sera pas publiée. Les champs obligatoires sont indiqués avec *