Zelf processor-prestaties bepalen

Daniel Dupré
0

In het artikel Professioneel benchmarken (c’t 9/2020, p.66) gebruiken jullie de tool Flops. Hoe kan ik controleren of mijn processor-prestaties ook maximaal zijn?

De tool Flops, die verkrijgbaar is voor Windows en voor Linux, meet de floatingpoint-prestaties van desktop-, laptop- en serverprocessors met verschillende moderne instructiesetuitbreidingen zoals AVX (Advanced Vector Extensions) en FMA3 (Fused multiply-add met drie operators). Typisch worden bij cpu’s de prestaties vergeleken op basis van double-precision met 64-bit (FP64, Double Precision/ DP) in de eenheid Flops (Floating Point Operations Per Second).

Floating point performance berekenen

Die waarde kan worden geverifieerd omdat de maximale floatingpoint-performance van een cpu eenvoudig kan worden berekend. De formule daarvoor is: aantal processorkernen × klokfrequentie in GHz × cpu-instructies per klokcyclus = rekenkracht in gigaflops. Het aantal kernen verwijst naar de fysieke kernen – SMT en Hyperthreading worden niet meegeteld. De kloksnelheid van moderne cpu’s is echter niet zo eenvoudig te bepalen omdat die kan schommelen door de turbo, waarbij de processor-prestaties maximaal zijn, maar die ook afhankelijk van de belasting van de verwerkingseenheden en het beschikbare TDP kan variëren.

Tools zoals CPU-Z en HWInfo64 tonen de actuele kloksnelheid, en de weergave van Taakbeheer van Windows 10 is daar niet betrouwbaar genoeg voor. Bij een Ryzen 9 3900X met twaalf cores kwam de kloksnelheid bij volle belasting met AVX2/FMA3 ongeveer op 4,15 GHz uit.

Flops; processor-prestaties

De tool Flops meet de snelheid van de pc-processor (hier een Intel Core i5-4460) aan de hand van verschillende instructies en helpt op die manier om een inschatting te maken van diens prestaties.

Processor architectuur

Het aantal instructies per klokcyclus bepaalt de architectuur: de twee 256 bit brede FMA-eenheden van een Zen 2-kern kunnen elk twee operations uitvoeren, wat resulteert in een totaal van 16 FP64-bewerkingen per klokcyclus. Die waarde geldt ook voor Intels Core i-4000 tot Core i-10000 serie desktop- en laptop-cpu’s, en voor de Core i-1000G Ice Lake mobiele processors. Die laatste hebben slechts één FMA-unit, maar die kan via AVX-512 twee keer zo brede instructies uitvoeren. De Core X-cpu’s halen met twee van dergelijke eenheden 32 flops per klokcyclus. Ryzen-processors uit de eerste twee generaties (Zen, Zen+) halen slechts 8 FP64-operaties.

Door de 12 kernen van de Ryzen 3900X te vermenigvuldigen met 4,15 GHz-kloksnelheid en 16 bewerkingen per klokcyclus, kom je op 796,8 GFlops uit, wat vrij dicht in de buurt komt van onze meting van 788 miljard floatingpoint-operations per seconde.

(Deze tekst is eerder verschenen in c’t 1-2/2021, p.140)

 

Wil je op de hoogte blijven van het laatste IT-nieuws en de nieuwste online-artikelen? Meld je dan hier aan voor onze nieuwsbrief:

Meer handige tips lees je in c't magazine mei/2021

Meer over

Processors

Deel dit artikel

Lees ook

Pc testen en benchmarken: meet je processor performance

Je kunt je pc testen en benchmarken met gratis programma's. Lees welke tests wij ook gebruiken en meet zelf je processor performance.

0 Praat mee
avatar
  Abonneer  
Laat het mij weten wanneer er