1 votes

La GPU n'est pas pleinement utilisée?

J'ai joué à The Witness, et j'ai remarqué que le jeu est en retard sans utiliser pleinement ma carte graphique.

Mon installation est assez ancienne à ce stade (HD 5850 et i7-930). Le jeu est resté à un taux de rafraîchissement semi-stable de 60 ips en réglages Normaux, mais il y avait quelques hoquets lors de la course ou en pivotant rapidement la caméra.

Cependant, la charge de ma GPU n'a à peine dépassé 60-70% pendant le jeu, et la charge de mon CPU était d'environ 30%. Je n'ai vu aucune pointe sur le graphique de charge (MSI Afterburner).

Pour comparer, j'ai essayé de charger le jeu en réglages Élevés et l'utilisation de ma GPU était de plus de 80%. J'ai également essayé de jouer à Minecraft l'autre jour avec un pack de shaders, et l'utilisation de la GPU était de 90% tout le temps avec un taux de rafraîchissement stable (bien que <60) fps.

Ma question : est-il normal qu'un jeu rame si votre GPU et votre CPU ne sont pas pleinement sollicités?

2 votes

L'utilisation du GPU peut être trompeuse, selon la manière dont vous la mesurez. Pour Windows, consultez Process Explorer pour la mesure par moteur GPU. Exemple avec un seul moteur en cours d'exécution avec une 2D sur le bureau. En résumé, seule une partie du GPU (bien que assez importante) est destinée aux jeux en 3D. Si un seul cœur est à son maximum, cela pourrait créer un goulot d'étranglement pour tout le reste.

1 votes

"Survoler près de 60" avec vsync activé peut faire chuter considérablement votre framerate, car si le jeu manque une image, il doit attendre pour rattraper son retard. Cela signifie que votre taux d'images par seconde ne descend pas à 59, mais chute à 30, puis à 15, etc. De plus, le streaming à partir du disque peut causer des saccades qui, encore une fois, entraînent des baisses de framerate. Certaines personnes appellent cela du lag.

2voto

nic ferrier Points 663

Scénario courant lorsque vous disposez d'un moteur de jeu/conception technique qui est mauvais. Cela est très significatif d'un tel problème, car le débit GPU n'est pas maintenu au maximum.

Si vous considérez ce qui se passe, le GPU a besoin de recevoir des trames préparées du CPU, mais s'il ne les reçoit pas, il ne sera pas pleinement utilisé.

Le CPU, à son tour, doit générer les tampons d'image et les pousser pour le rendu, mais si un moteur de jeu s'arrête pour une raison quelconque (le plus courant est qu'il est monoprocesseur et que l'accent mis aujourd'hui sur moins de vitesse par processeur le bloque) ou reste bloqué en attendant certaines données ou des deadlocks, alors le tampon d'image ne sera pas rempli à temps.

Le scénario idéal pour les performances est un scénario 1:1, où le tampon d'image à rendre est prêt du CPU dès que le GPU a terminé de rendre la tranche précédente.

Mon hypothèse dans ce cas est que le jeu est principalement mono-threadé (comme la plupart des applications) et qu'il utilise en fait beaucoup de CPU sur un seul cœur, mais qu'il n'arrive toujours pas à suivre en raison du traitement trop intense entre le code de rendu (probablement en raison d'un codage bâclé).

Mesurez la charge par cœur et vous devriez voir si c'est le cas. Il pourrait également s'agir de temps d'attente dans la boucle de jeu, de sorte que pour une raison quelconque, certaines opérations prennent beaucoup de temps à s'exécuter, donc l'utilisation du CPU ne monte pas (car aucune charge réelle n'est effectuée) mais cela reste bloqué, en attendant quelque chose d'inefficace (comme une ressource non mise en cache en streaming à partir du disque).

3 votes

Généralement bon, mais vous n'avez pas besoin de le qualifier de "mauvais codage". Comme vous l'avez dit, un seul cœur est la norme pour les logiciels, ce que l'OP semble voir (l'OP a un quad core à 30%, donc 20-25% pour le jeu, le reste pour les services, etc). De plus, la synchronisation verticale (par défaut pour ce jeu) est un limiteur de trame, et donc si le GPU peut faire 60 images par seconde à 60% d'utilisation, alors pourquoi avoir besoin de 100%.

AlleGamers.com

AlleGamers est une communauté de gamers qui cherche à élargir la connaissance des jeux vidéo.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X