21.01.2019, 14:58
Hallo timo,
ich habe erhebliche Zweifel, daß dein kleines Programm zur vergleichenden Integer-Rechenleistungsmessung gut geegnet ist.
1. Der Overhead ist gegenüber den 4 Integer-Rechen-Operationen zu groß.
2. Es ist vermutlich nicht gewährleistet, daß auf allen Systemen intern die Funktion rand() gleich implementiert ist.
Ich habe das Programm heute mal mehrfach modifiziert und die Resultate notiert:
1. Die 4 Integer-Operationen im switch/case Konstrukt rauskommentiert: 323292370 , 325201677. CPU-Last : 25 %
2. rand() rausgenommen und in iOperation durch lCtr ersetzt, in lValue durch 97: 361672969 , 368135889. CPU-Last : 25 %
3. Die 4 Integer-Operationenn auch noch rausgenommen: 412930731 CPU-Last: 25 %
4, Compiler ohne Optimierugen: 415242457 !? > (3) Zufall ? ja. bei 2tem Versuch 408747182. CPU-Last: 25 %
Danach nochmal den Originalcode : 314392679 , 306533248. CPU-Last : 25 %.
MfG Kai
ich habe erhebliche Zweifel, daß dein kleines Programm zur vergleichenden Integer-Rechenleistungsmessung gut geegnet ist.
1. Der Overhead ist gegenüber den 4 Integer-Rechen-Operationen zu groß.
2. Es ist vermutlich nicht gewährleistet, daß auf allen Systemen intern die Funktion rand() gleich implementiert ist.
Ich habe das Programm heute mal mehrfach modifiziert und die Resultate notiert:
1. Die 4 Integer-Operationen im switch/case Konstrukt rauskommentiert: 323292370 , 325201677. CPU-Last : 25 %
2. rand() rausgenommen und in iOperation durch lCtr ersetzt, in lValue durch 97: 361672969 , 368135889. CPU-Last : 25 %
3. Die 4 Integer-Operationenn auch noch rausgenommen: 412930731 CPU-Last: 25 %
4, Compiler ohne Optimierugen: 415242457 !? > (3) Zufall ? ja. bei 2tem Versuch 408747182. CPU-Last: 25 %
Danach nochmal den Originalcode : 314392679 , 306533248. CPU-Last : 25 %.
MfG Kai