Dans Prime95, pourquoi les petites FFT génèrent-elles le plus de chaleur, malgré un processeur à 100% pour toutes les options?

9

Je viens de construire un nouveau PC Skylake , et je vais voir un peu d'overclocking avec Prime95 comme testeur de stress.

Cela fonctionne bien en utilisation normale, mais avec Prime95, je remarque un peu de limitation du processeur sous certaines charges.

Si les 4 cœurs (8 threads) sont bloqués à 100%, pourquoi le paramètre Small FFT dans Prime95 atteint-il une température plus élevée que l'option 'Blend'?

ChrisA
la source

Réponses:

13

Le code vectorisé, en particulier AVX, augmente naturellement la production de chaleur du processeur car le processeur doit fonctionner à une tension plus élevée pour exécuter ces instructions. Les petites FFT nécessitent moins de mémoire que le mode de fusion, de sorte que le processeur passe plus de temps à traiter les données et moins de temps à attendre les données.

  • L'architecture x86-64 offre des capacités étendues de traitement vectoriel , en particulier sur les derniers processeurs. Le traitement vectoriel permet aux applications d'effectuer simultanément des opérations mathématiques sur plusieurs éléments de données et est utilisé par de nombreuses applications gourmandes en calcul plus récentes pour augmenter le débit de traitement.

  • Le code vectorisé, en particulier les instructions AVX utilisées par Prime95, nécessite que le processeur fonctionne à une tension plus élevée que la normale. Il en résulte une consommation d'énergie et une production de chaleur supérieures à ce qui se produit sous des charges de travail normales. Pour cette raison, Intel avertit que les charges AVX lourdes peuvent faire étrangler le processeur ou ne pas maintenir les fréquences d'horloge Turbo Boost complètes (note de bas de page 1):

    Les extensions vectorielles avancées Intel® (Intel® AVX) sont conçues pour obtenir un débit plus élevé pour certaines opérations en nombres entiers et en virgule flottante. En raison des différentes caractéristiques de puissance du processeur, l'utilisation des instructions AVX peut entraîner a) certaines pièces à fonctionner à une fréquence inférieure à la fréquence nominale et b) certaines pièces dotées de la technologie Intel® Turbo Boost 2.0 pour ne pas atteindre de fréquences turbo maximales.

    Intel explique cela plus en détail dans ce livre blanc . En particulier, il note:

    Intel AVX est conçu pour atteindre un débit plus élevé pour certaines opérations à nombre entier et à virgule flottante. L'utilisation de ces instructions peut entraîner le fonctionnement des processeurs à une fréquence inférieure à la fréquence TDP indiquée. Ces réductions de fréquence se produisent car les instructions Intel AVX haute puissance nécessitent une tension et un courant électrique supplémentaires.

    • Ma conjecture quant à la raison pour laquelle le renforcement du noyau V est nécessaire pour les instructions AVX est que les unités d'exécution AVX sont plus complexes que les autres parties du processeur, ce qui entraîne des étapes de pipeline correspondantes qui prennent plus de temps à se terminer (voir cette réponse pour plus d'informations techniques sur les pipelines et d'autres aspects de la conception du processeur). Si une étape de pipeline particulière est lente, la fréquence d'horloge maximale de l'ensemble du processeur est limitée car chaque étape du pipeline doit se terminer au cours de chaque cycle d'horloge.

    • Pour la même raison, des tensions plus élevées augmentent les fréquences maximales pouvant être atteintes lors de l'overclocking (les transistors peuvent commuter plus rapidement à des tensions plus élevées), l'augmentation de la tension permet de garantir que les étages de pipeline plus longs peuvent se terminer à temps.

  • Le mode Small FFT utilise uniquement des éléments de données plus petits qui peuvent tenir dans le cache du processeur , contrairement au mode Blend qui fonctionne à la fois sur des valeurs petites et grandes qui peuvent ne pas tenir dans le cache. L'accès à la mémoire étant lent par rapport au simple traitement des données, le processeur passera moins de temps à traiter les données en mode Blend, ce qui réduira la production de chaleur. Les petites FFT n'impliquent pas autant d'accès à la mémoire, ce qui entraîne un travail plus réel pour le processeur, ce qui augmente la consommation d'énergie et la production de chaleur.

bwDraco
la source
Merci @DragonLord, cela rend les différents modes Prime95 très clairs. Veuillez amplifier votre réponse pour expliquer pourquoi le moniteur de ressources lit à 100% dans les deux cas? Pourquoi ne lit-il pas moins de 100% en mode Blend, par exemple, s'il attend des données plus souvent qu'en mode Small FFT?
ChrisA
1
Le CPU occupé à attendre de la mémoire est toujours signalé comme occupé par le système d'exploitation, si je comprends bien.
bwDraco