PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : The Counting Benchmark


Geldmann3
2013-09-22, 14:59:09
The Counting Benchmark 0.6 (http://pics4free.de/Progs/TheCountingBenchmark0.6.exe)

Ich empfehle euch, während der Benchmark läuft keine anderen Anwendungen geöffnet zu haben und die Maus nicht zu bewegen. Der Benchmark ist sehr empfindlich und reagiert auch auf kleine Hintergrundprozesse mit Schwankungen. Am besten mehrmals Benchen und den Durchschnitt posten.

AMD Ahtlon 2 X4 620 @2,6Ghz (5 Runs Schnitt)
Singlethread = 101% Performanceindex
Multithread = 98% Performanceindex

AMD Phenom 2 X6 1055T @2,8Ghz (5 Runs Schnitt)
Singlethread = 110% Performanceindex
Multithread = 175% Performanceindex


Was macht der Benchmark? Im Grunde zählt er nur hoch... Bei Multithreading machen das mehrere Threads gleichzeitig... Eigentlich müsste es hier also rein auf die Taktrate/die Geschwindigkeit der Volladdierer in der CPU ankommen oder?

Skurril ist, wenn ich den Chrome im Hintergrund habe, bekomme ich glatt mal 50% weniger Punkte beim Multithreading.

Einige Sicherheitsprogramme schlagen bei dem Benchmark Alarm, sollte jedoch keinen Virus enthalten, habe ich nämlich selbst programmiert.

rob]SK[
2013-09-22, 17:05:06
hi

wieviel threads unterstützt der test ? wenn ich zu hause bin kann ich den mal testen.

mfg rob

NikLaw
2013-09-22, 17:07:27
Phenom II x4 3Ghz
Single: 117%
Multi: 180%

Beim Multithread-Benchmark, kommt erst "keine Rückmeldung" und der Test läuft in 3-4 Schritten durch, d.h. der Fortschrittsbalken bleibt kurz stehen.

@3,4 Ghz:

Single: 133%
Multi: 209%

@3,6 Ghz

Single: 140%
Multi: 239%

Geldmann3
2013-09-22, 18:02:47
Beim Multithread-Benchmark, kommt erst "keine Rückmeldung" und der Test läuft in 3-4 Schritten durch, d.h. der Fortschrittsbalken bleibt kurz stehen.
Das ist normal. Normalerweise sieht man das Phänomen, wenn bei solchen Tests, die Oberfläche und der Test im selben Thread laufen, doch hier ist es einfach so, dass die Benchmark-Threads so viel CPU Leistung beanspruchen, dass für die GUI nichts übrig bleibt. Ich hätte dem Thread der Oberfläche eine höhere Priorität geben können, doch dann wäre ich vielleicht das Risiko eingegangen, dass sie den Benchmark bremst.

Der Benchmark profitiert theoretisch noch von über 20 Kernen.

RoNsOn Xs
2013-09-22, 18:12:35
TheCountingBenchmark.exe versucht Verbindung zum Internet aufzunehmen.
224.0.0.253 - IGMP

Erklärung?


C2D @3,32Ghz
SingleThread 135%
Multi 66%

Echtzeit: (ob das so eine gute Idee ist?)
Multi:
http://s7.directupload.net/images/130922/xk4fe68k.png (http://www.directupload.net)

Ich glaube ihr könnt alle einpacken! :ulol:

Geldmann3
2013-09-22, 18:50:37
HAHA
OK, oooook - Daran werd ich noch arbeiten. :freak:
Ist noch ein sehr frühes Testkonzept^^


Generell wird die nächste Version wohl 100x stabilere Werte ausgeben.

Komisch, bei mir will es keine Verbindung zum Internet aufbauen. Eventuell ist dieser Multicast etwas, was Microsoft Visual Studio noch da reingeknüppelt hat. Vielleicht ist es auch das NetFramework.

Edit: Habe den Link nun ausgetauscht. Diese Version ist deutlich verlässlicher.

rob]SK[
2013-09-23, 13:46:36
single

http://abload.de/thumb/test-singlefbcbj.jpg (http://abload.de/image.php?img=test-singlefbcbj.jpg)

multi

http://abload.de/thumb/test-multiwyfjz.jpg (http://abload.de/image.php?img=test-multiwyfjz.jpg)


mfg rob

Lyka
2013-09-23, 13:52:54
9,344 Sekunden
CPU-Singlethread-Performance 116%

38,735 Sekunden
CPU-Multithread-Performance 88%

neuer Test:

33,93 Sekunden
CPU-Multithread-Performance 101%


wat?

AMD X4 640

rudl
2013-09-23, 16:34:17
phenomII X4 925 2,8Ghz Linux mint 15 64 bit wine ^^

bewegung von mauszeiger, Firefox + flash video in hd, htop
so gut wie gar keine Auswirkung zumindest beim single test. Immer bei 74-75%

http://abload.de/thumb/wineh3cjj.png (http://abload.de/image.php?img=wineh3cjj.png)

RoNsOn Xs
2013-09-23, 16:45:00
TheCountingBenchmark.exe versucht Verbindung zum Internet aufzunehmen.
224.0.0.253 - IGMP

Erklärung?


C2D @3,32Ghz
SingleThread 135%
Multi 66%

Version 0.3
120%
und 78%

aufkrawall
2013-09-23, 16:56:24
Die Ergebnisse schwanken bei mir recht deutlich, um bis zu 20% (als absolute Angabe) und noch mehr.

2500k@4,8
Single: 273%
Multi: 287%

Morpheus2200
2013-09-23, 18:59:17
Hallo

i3 3225 Standardtakt

Single: 182%
Multi: 122%

mfg Richard

Geldmann3
2013-09-23, 20:30:28
Wäre toll, wenn ihr die Anzahl der Runs aus der ihr den Schnitt errechnet habt dazuschreiben könntet. Ein einzelner Durchlauf ist nicht zwingend aussagekräftig...

Bisherige Ergebnisse:
http://geldmann3.no-ip.biz/Anonymous/Bilder/Performance.png

HarryHirsch
2013-09-23, 21:16:17
3960x @ 5 GHz, Version 0.3

http://abload.de/img/1h7kjd.jpg (http://abload.de/image.php?img=1h7kjd.jpg) http://abload.de/img/2y5k4q.jpg (http://abload.de/image.php?img=2y5k4q.jpg)

aufkrawall
2013-09-23, 21:33:26
Wäre toll, wenn ihr die Anzahl der Runs aus der ihr den Schnitt errechnet habt dazuschreiben könntet. Ein einzelner Durchlauf ist nicht zwingend aussagekräftig...

Hatte mehrere gemacht und mir die besten rausgepickt. :freak:

Hobby
2013-09-23, 21:42:56
AMD FX 6300 def 3500 Coreboost 4100
Coreboost disabled
oc. 25 x 200
5 Ghz

3 runs

Priorität = niedrig

Single 199 %
Multi 237 %

Geldmann3
2013-09-23, 21:46:21
Also wollen wir lieber doch einfach den besten Run bewerten, der zu erreichen war? Ist wohl aussagekräftiger.

Ich frage mich, wie das so stark schwanken kann, der Benchmark macht immer das selbe. Er zählt bis zu einer gewissen Zahl hoch und anschließend vergleicht er die Startzeit mit der Endzeit um die Differenzzeit zu errechnen. (Das ganze ist nicht mal mit der GUI gekoppelt, um sich nicht bremsen zu lassen.) Ich lasse die Zeit extra nicht von einem Thread zählen, sondern die Differenz der Systemzeit ermitteln, weil der Thread verlangsamt werden könnte, die Systemzeit aber nicht. Der Zählwert sollte also stimmen.

Hobby
2013-09-23, 22:27:17
Also wollen wir lieber doch einfach den besten Run bewerten, der zu erreichen war? Ist wohl aussagekräftiger.

Ich frage mich, wie das so stark schwanken kann, der Benchmark macht immer das selbe. Er zählt bis zu einer gewissen Zahl hoch und anschließend vergleicht er die Startzeit mit der Endzeit um die Differenzzeit zu errechnen. (Das ganze ist nicht mal mit der GUI gekoppelt, um sich nicht bremsen zu lassen.) Ich lasse die Zeit extra nicht von einem Thread zählen, sondern die Differenz der Systemzeit ermitteln, weil der Thread verlangsamt werden könnte, die Systemzeit aber nicht. Der Zählwert sollte also stimmen.

Die Schwanlkungen treten bei mir nur beim Multithreadbench auf. Die Singlethread sind überaus stabil.

Hab den Bench auch gerade mal im abgesicherten Modus laufen lassen = gleiches BIld = nur beim Multi Schwankungen.

Nachtrag:

Priorität beim "Multi" auf niedrig scheint hier das Problem der Schwankungen zu beheben.

Geldmann3
2013-09-25, 23:10:04
So, habe jetzt Version 0.6 des Benchmarks (http://pics4free.de/Progs/TheCountingBenchmark0.6.exe) hochgeladen.
Die Version ist etwa 10% stabiler, als 0.3 und es ist nun möglich im Vorraus eine beliebige Anzahl von Runs anzugeben um die Genauigkeit zu verbessern. Ich empfehle 5, besser noch ein paar mehr.

Nachdem der Test abgeschlossen ist bekommt man des Weiteren umfangreiche Statistiken zu den Resultaten geboten. Man kann sie direkt als Text kopieren, um sie beispielsweise hier im Forum einzufügen.

AMD Phenom 2 X6 1055T @2,4Ghz
http://geldmann3.no-ip.biz/Anonymous/Bilder/Counting.png

last results:
Number of runs: 10
Singlethreading Performance - Min: 91% ;Max: 94% ;AVG: 93%
Multithreading Performance - Min: 133% ;Max: 156% ;AVG: 138%

- CPS Counts per second in million-

Singlethreading - Min CPS: 8,4 ;Max CPS: 8,7 ;AVG CPS: 8,6
Multithreading - Min CPS: 38,9 ;Max CPS: 45,6 ;AVG CPS: 40,3

all singlethreading results: Run 1: 93%; 8,6CPS, ;Run 2: 93%; 8,5CPS, ;Run 3: 93%; 8,5CPS, ;Run 4: 93%; 8,5CPS, ;Run 5: 93%; 8,6CPS, ;Run 6: 92%; 8,5CPS, ;Run 7: 94%; 8,7CPS, ;Run 8: 93%; 8,6CPS, ;Run 9: 93%; 8,6CPS, ;Run 10: 91%; 8,4CPS, ;
all multihreading results: Run 1: 135%; 39,4CPS, ;Run 2: 145%; 42,6CPS, ;Run 3: 133%; 38,9CPS, ;Run 4: 137%; 40,0CPS, ;Run 5: 134%; 39,1CPS, ;Run 6: 156%; 45,6CPS, ;Run 7: 134%; 39,1CPS, ;Run 8: 133%; 39,0CPS, ;Run 9: 138%; 40,5CPS, ;Run 10: 135%; 39,5CPS, ;

KinGGoliAth
2013-09-26, 01:33:12
ganzen tag scheiss wetter, jetzt immernoch, also warum nicht hinhocken und ne runde zählen (lassen)?

Core 2 Quad Q8400 (@ default 2666mhz)

Number of runs: 10
Singlethreading Performance - Min: 100% ;Max: 111% ;AVG: 109%
Multithreading Performance - Min: 110% ;Max: 122% ;AVG: 118%

- CPS Counts per second in million-

Singlethreading - Min CPS: 9,2 ;Max CPS: 10,2 ;AVG CPS: 10,0
Multithreading - Min CPS: 32,3 ;Max CPS: 35,6 ;AVG CPS: 34,6

all singlethreading results: Run 1: 111%; 10,2CPS, ;Run 1: 111%; 10,2CPS, ;Run 2: 111%; 10,2CPS, ;Run 3: 109%; 10,0CPS, ;Run 4: 109%; 10,0CPS, ;Run 5: 109%; 10,0CPS, ;Run 6: 111%; 10,2CPS, ;Run 7: 111%; 10,2CPS, ;Run 8: 100%; 9,2CPS, ;Run 9: 111%; 10,2CPS, ;Run 10: 111%; 10,2CPS, ;
all multihreading results: Run 1: 124%; 36,2CPS, ;Run 1: 119%; 34,8CPS, ;Run 2: 118%; 34,7CPS, ;Run 3: 119%; 34,8CPS, ;Run 4: 116%; 33,9CPS, ;Run 5: 120%; 35,2CPS, ;Run 6: 122%; 35,6CPS, ;Run 7: 119%; 34,9CPS, ;Run 8: 121%; 35,4CPS, ;Run 9: 118%; 34,5CPS, ;Run 10: 110%; 32,3CPS, ;

pest
2013-09-26, 08:23:26
simple arithmetik ist praktisch von der speicherbandbreite limitiert und mehr "testet" man hier auch nicht

Geldmann3
2013-09-26, 12:08:02
Intel Pentium 4 @2,4Ghz Singlecore
last results:
Number of runs: 5
Singlethreading Performance - Min: 39% ;Max: 41% ;AVG: 40%
Multithreading Performance - Min: 15% ;Max: 15% ;AVG: 15%

- CPS Counts per second in million-

Singlethreading - Min CPS: 3,6 ;Max CPS: 3,8 ;AVG CPS: 3,7
Multithreading - Min CPS: 4,3 ;Max CPS: 4,4 ;AVG CPS: 4,3

all singlethreading results: Run 1: 39%; 3,6CPS, ;Run 2: 41%; 3,7CPS, ;Run 3: 41%; 3,8CPS, ;Run 4: 40%; 3,7CPS, ;Run 5: 39%; 3,6CPS, ;
all multihreading results: Run 1: 15%; 4,3CPS, ;Run 2: 15%; 4,3CPS, ;Run 3: 15%; 4,3CPS, ;Run 4: 15%; 4,4CPS, ;Run 5: 15%; 4,3CPS, ;



Intel Core 2 Duo E6550 @2,33Ghz Dualcore
last results:
Number of runs: 5
Singlethreading Performance - Min: 91% ;Max: 97% ;AVG: 95%
Multithreading Performance - Min: 59% ;Max: 60% ;AVG: 60%

- CPS Counts per second in million-

Singlethreading - Min CPS: 8,4 ;Max CPS: 8,9 ;AVG CPS: 8,8
Multithreading - Min CPS: 17,4 ;Max CPS: 17,7 ;AVG CPS: 17,5

all singlethreading results: Run 1: 96%; 8,8CPS, ;Run 2: 96%; 8,9CPS, ;Run 3: 97%; 8,9CPS, ;Run 4: 97%; 8,9CPS, ;Run 5: 91%; 8,4CPS, ;
all multihreading results: Run 1: 59%; 17,4CPS, ;Run 2: 60%; 17,7CPS, ;Run 3: 60%; 17,5CPS, ;Run 4: 60%; 17,5CPS, ;Run 5: 60%; 17,5CPS, ;

RoNsOn Xs
2013-09-26, 19:15:14
Intel Core i3 3110-m 2,4Ghz
last results:
Number of runs: 2
Singlethreading Performance - Min: 130% ;Max: 134% ;AVG: 132%
Multithreading Performance - Min: 88% ;Max: 90% ;AVG: 89%

- CPS Counts per second in million-

Singlethreading - Min CPS: 12,0 ;Max CPS: 12,4 ;AVG CPS: 12,2
Multithreading - Min CPS: 25,9 ;Max CPS: 26,4 ;AVG CPS: 26,2

all singlethreading results: Run 1: 134%; 12,4CPS, ;Run 2: 130%; 12,0CPS, ;
all multihreading results: Run 1: 90%; 26,4CPS, ;Run 2: 88%; 25,9CPS, ;

Hobby
2013-09-26, 19:16:12
WIN 7 64 Prof. SP1
16 GB Mem. 1600 / 4 x 4 GB

------

AMD FX 6300 def. 3500 Coreboost 4100

def. settings

last results:
Number of runs: 5
Singlethreading Performance - Min: 158% ;Max: 161% ;AVG: 160%
Multithreading Performance - Min: 151% ;Max: 168% ;AVG: 162%

- CPS Counts per second in million-

Singlethreading - Min CPS: 14,5 ;Max CPS: 14,8 ;AVG CPS: 14,7
Multithreading - Min CPS: 44,1 ;Max CPS: 49,2 ;AVG CPS: 47,5

all singlethreading results: Run 1: 161%; 14,8CPS, ;Run 2: 158%; 14,6CPS, ;Run 3: 158%; 14,5CPS, ;Run 4: 161%; 14,8CPS, ;Run 5: 160%; 14,7CPS, ;
all multihreading results: Run 1: 151%; 44,1CPS, ;Run 2: 162%; 47,6CPS, ;Run 3: 168%; 49,2CPS, ;Run 4: 166%; 48,6CPS, ;Run 5: 165%; 48,2CPS, ;

-------------------------------------------------------------

AMD FX 6300 def. 3500 Coreboost 4100

oc. 4200 - 21x200 ( Coreboost disabled )

last results:
Number of runs: 5
Singlethreading Performance - Min: 164% ;Max: 166% ;AVG: 166%
Multithreading Performance - Min: 195% ;Max: 231% ;AVG: 206%

- CPS Counts per second in million-

Singlethreading - Min CPS: 15,1 ;Max CPS: 15,3 ;AVG CPS: 15,2
Multithreading - Min CPS: 57,2 ;Max CPS: 67,5 ;AVG CPS: 60,0

all singlethreading results: Run 1: 166%; 15,3CPS, ;Run 2: 166%; 15,3CPS, ;Run 3: 164%; 15,1CPS, ;Run 4: 166%; 15,3CPS, ;Run 5: 166%; 15,3CPS, ;
all multihreading results: Run 1: 201%; 58,9CPS, ;Run 2: 231%; 67,5CPS, ;Run 3: 203%; 59,5CPS, ;Run 4: 195%; 57,2CPS, ;Run 5: 198%; 58,1CPS, ;

-------------------------------------------------------------

AMD FX 6300 def. 3500 Coreboost 4100

oc. 50000 - 25x200 ( Coreboost disabled )

last results:
Number of runs: 5
Singlethreading Performance - Min: 197% ;Max: 200% ;AVG: 199%
Multithreading Performance - Min: 208% ;Max: 228% ;AVG: 219%

- CPS Counts per second in million-

Singlethreading - Min CPS: 18,2 ;Max CPS: 18,4 ;AVG CPS: 18,3
Multithreading - Min CPS: 60,8 ;Max CPS: 66,6 ;AVG CPS: 63,8

all singlethreading results: Run 1: 200%; 18,4CPS, ;Run 2: 200%; 18,4CPS, ;Run 3: 200%; 18,4CPS, ;Run 4: 200%; 18,4CPS, ;Run 5: 197%; 18,2CPS, ;
all multihreading results: Run 1: 228%; 66,6CPS, ;Run 2: 211%; 61,6CPS, ;Run 3: 208%; 60,8CPS, ;Run 4: 220%; 64,4CPS, ;Run 5: 226%; 66,2CPS, ;

senator
2013-09-27, 19:35:57
Xeon E3-1230V2
last results:
Number of runs: 1
Singlethreading Performance - Min: 205% ;Max: 205% ;AVG: 205%
Multithreading Performance - Min: 241% ;Max: 241% ;AVG: 241%

- CPS Counts per second in million-

Singlethreading - Min CPS: 18,9 ;Max CPS: 18,9 ;AVG CPS: 18,9
Multithreading - Min CPS: 70,6 ;Max CPS: 70,6 ;AVG CPS: 70,6

all singlethreading results: Run 1: 205%; 18,9CPS, ;
all multihreading results: Run 1: 241%; 70,6CPS, ;

kam 4 mal das selbe Ergebnis

Geldmann3
2013-09-28, 02:03:24
4x das selbe Ergebnis ist schon komisch, hab den Benchmark noch nie so stabil gesehen. Liegt das etwa an der Server-CPU?

Bisherige Ergebnisse:

http://geldmann3.no-ip.biz/Anonymous/Bilder/Performance2.png

Oldschool CPU's wie der alte AMD Athlon 64 sowie die neuen 8 Kerner/4 Moduler von AMD wären ganz interessant.

rudl
2013-09-28, 19:52:35
phenom2X4 925 2,8 GHz 4Gb DDR2 667 :freak:
irgendwie kackt mein rechner bei multithreaded performance ziemlich ab :confused:

last results:
Number of runs: 1
Singlethreading Performance - Min: 119% ;Max: 119% ;AVG: 119%
Multithreading Performance - Min: 105% ;Max: 105% ;AVG: 105%

- CPS Counts per second in million-

Singlethreading - Min CPS: 10,9 ;Max CPS: 10,9 ;AVG CPS: 10,9
Multithreading - Min CPS: 30,9 ;Max CPS: 30,9 ;AVG CPS: 30,9

all singlethreading results: Run 1: 119%; 10,9CPS, ;
all multihreading results: Run 1: 105%; 30,9CPS, ;

Geldmann3
2013-09-28, 20:20:05
Wenn du damit meinst, dass die Anzeige sich nur sporadisch aktualisiert und alle anderen Anwendungen nur noch sehr stockend funktionieren. Das ist normal.
Ich schätze, die Frequenz des verwendeten Arbeitsspeichers ist zu vernachlässigen, selbst der L3 Cache scheint schon keinen signifikanten Unterschied mehr zu machen. Ich könnte mich aber auch irren, korregiert mich, wenn ich falsch liege.

Butterfly
2013-09-28, 20:25:31
...sowie die neuen 8 Kerner/4 Moduler von AMD wären ganz interessant.
FX-8350@5GHz

http://abload.de/img/countingbench_5ghzfxkwe.jpg

Geldmann3
2013-09-28, 20:33:26
Danke!
Aufgrund der Schwankungen ist 1 einzelner Run jedoch leider nicht sehr aussagekräftig.

Butterfly
2013-09-28, 21:33:40
@Geldmann3
Gut das war der best case Wert, hier mal der worst case Wert:
http://abload.de/thumb/countingbench_bug4jofp.jpg (http://abload.de/image.php?img=countingbench_bug4jofp.jpg)

Und 2 weitere Durchläufe:
http://abload.de/thumb/countingbench_5ghz_3m2pcd.jpg (http://abload.de/image.php?img=countingbench_5ghz_3m2pcd.jpg) http://abload.de/thumb/countingbench_5ghz_2vzopx.jpg (http://abload.de/image.php?img=countingbench_5ghz_2vzopx.jpg)

Könntest ja ein Counter einbauen... :freak:

Tyrann
2013-09-28, 22:26:36
last results:
Number of runs: 5
Singlethreading Performance - Min: 250% ;Max: 257% ;AVG: 254%
Multithreading Performance - Min: 280% ;Max: 292% ;AVG: 286%

- CPS Counts per second in million-

Singlethreading - Min CPS: 23,0 ;Max CPS: 23,6 ;AVG CPS: 23,3
Multithreading - Min CPS: 81,9 ;Max CPS: 85,3 ;AVG CPS: 83,7

all singlethreading results: Run 1: 256%; 23,5CPS, ;Run 2: 254%; 23,4CPS, ;Run 3: 252%; 23,1CPS, ;Run 4: 250%; 23,0CPS, ;Run 5: 257%; 23,6CPS, ;
all multihreading results: Run 1: 291%; 85,0CPS, ;Run 2: 280%; 81,9CPS, ;Run 3: 292%; 85,3CPS, ;Run 4: 285%; 83,3CPS, ;Run 5: 283%; 82,8CPS, ;


2600k @ 4,4GHz

Geldmann3
2013-09-28, 22:30:57
@Butterfly

Oh, sorry :confused:

Wie ist das passiert? Kannst du den Fehler reproduzieren?

ENKORE
2013-09-29, 03:34:25
Sinnlosester Benchmark seit ... langem.

Schon fast bemerkenswert, dass der JIT nicht dein "for(int x = 0; x < 1000000000; x++);" wegoptimiert.

/edit: Oh wow, ich hätte mir nicht den Code anschauen sollen. Das ist ja ein einziges Massaker :(

Absolutes Highlight:
public static void Thread01()
{
decimal limit = new decimal(0x2faf07fL);
Zahl01 = decimal.One;
while (ObjectFlowControl.ForLoopControl.ForNextCheckDec(Zahl01, limit, decimal.One))
{
Zahl01 = decimal.Add(Zahl01, decimal.One);
}
}
Das dann mal 20. Die 20 Threads die der Autor ansprach sind nämlich hardgecodet durch 20 mal diese Methode plus 20 Member ZahlXX.

Also ganz ehrlich, ich will dich nichtmal boshaft runtermachen oder so, aber bitte bitte lern erstmal anständig coden bevor du mit ner fixen Idee und ohne irgendwelche Ahnung anfängst "Benchmarks" zu schreiben deren Ergebnisse vom Wetter abhängen... am Ende hält das etwa noch jemand für aussagekräftig. Die reihenweise gemachten Fehler (und das fängt schon bei der Wahl von .NET als Plattform für einen Benchmark an — dafür ist die Plattform überhaupt nicht gedacht!) sind dagegen sehr aussagekräftig.

Übrigens meckert die Firewall, weil du dich beim Programm zusammenklicken ver-klickt hast und wohl ausversehen nen leeren SOAP-Webservice ins Projekt gepackt hast. Der tut aber nix.

Butterfly
2013-09-29, 13:20:29
@Butterfly

Oh, sorry :confused:

Wie ist das passiert? Kannst du den Fehler reproduzieren?
Heute konnte ich den .net Fehler nicht mehr reproduzieren, gestern ist er insgesamt 3 mal vor gekommen kurz nach dem Start.
Ich hab noch den Fehler Text, falls du was damit Anfangen kannst, schreib mir eine PN ich lass dir die TXT Datei zukommen.

Hab heute sogar den besten Wert überboten:

http://abload.de/img/countingbench_5ghz_4rzpyi.jpg

@ENKORE
:wink:

Geldmann3
2013-09-29, 13:46:23
Sinnlosester Benchmark seit ... langem.
Naja, so ganz sinnlos ist er ja nicht, denn er bringt ja CPU entsprechende und mit mehreren Runs reproduzierbare Ergebnisse.

Schon fast bemerkenswert, dass der JIT nicht dein "for(int x = 0; x < 1000000000; x++);" wegoptimiert.
HAHA, ich habe mir am Anfang auch sorgen gemacht, dass er es einfach überspringt, weil es sau dumm ist :freak: Aber er macht es brav. Mal abgesehen davon, dass der Variablentyp nicht gut gewählt ist.

Übrigens meckert die Firewall, weil du dich beim Programm zusammenklicken ver-klickt hast und wohl ausversehen nen leeren SOAP-Webservice ins Projekt gepackt hast. Der tut aber nix.
Wo kann ich das ausschalten? Hab da sicher nichts rein-gezogen, ist das vielleicht die Standardeinstellung?

Sorry, bin kein Programmierer. Das Zählen würd' ich auch noch mit C hinbekommen aber sollte das nicht unabhängig von Net. Framework funktionieren, wenn es erstmal ausgeführt wird?

Das es mit einer fixen Anzahl von Threads nicht optimal ist, ist mir auch klar. Anfangs habe ich so viele erstellt, wie CPU Kerne da sind. Habe aber festgestellt, dass mit noch mehr Threads die Leistung "noch besser" wird. Dann habe ich mir gedacht, ich nehme die CPU Kerne mal X Threads. Doch dann fand ich es auch irgendwie unfair, dass wenigere CPU-Kerne weniger Threads bekommen. Und was ist mit den "HT Kernen"?. Dann wäre es ja nicht mehr genau vergleichbar. UND, eine große Zahl mit 1 zu addieren kann mehr Rechenleistung brauchen, als eine kleine mit 1 zu addieren. Es wäre also nicht vergleichbar, wenn 20 Threads bis 50 Zahlen, wie wenn 5 bis 200 Zählen. Mit dieser Lösung muss sich jede CPU genau der gleichen Aufgabe stellen und gucken, wie sie diese löst. Also habe ich fürs erste einfach mal diese 20 Threads da reingehauen.

:D Ist ja auch noch nicht die FINAL, alles wird besser, alles wird besser :D

Und solange man den Code außer Acht lässt, sieht die Oberfläche ganz ordentlich aus finde ich ;D


//Nehm mich nicht immer ernst, ich mach schon manchmal hohle Sachen und das ist mir bewusst ;)

Es tut mir leid, ich arbeite daran, den Code zu optimieren. Wie hättest du es grob gelöst? Mit einem und mit mehreren Threads zu zählen?

ENKORE
2013-09-29, 14:12:10
Wegen dem SOAP-Dingen: Ich weiß nicht, wieviel VS/Visual Basic da versteckt, mitm Reflector finde ich den im .My-Namespace. Das dadrin sieht mir aber alles automatisch generiert aus... weiß nicht, ob du das direkt bearbeiten kannst.

Die Sache mit der Schleife ist auch einfach die, dass es ja unterschiedliche Implementierungen von .NET gibt, z.B. Microsofts .Net FW oder Mono, die unterschiedlich optimieren [dürfen].

Generell würde ich das erstmal in C/C++ schreiben, mit .NET hast du einfach das Problem, dass der erzeugte und letztlich abgearbeitete Maschinencode unterschiedlich sein kann in Abhängigkeit von der .NET Implementierung, gesetzten Standardeinstellungen etc. ; das vermeidest du durch die direkte Verwendung von nativem Code.

Das Threading hast du ja schon angesprochen, hier sollte man wirklich in Abhängigkeit von den real vorhandenen Cores gehen. Da es unnötig ist die Thread-Main für jeden Thread in den Code zu schreiben (Stichwort Array/Liste für Thread-Handles, die den gleichen Code ausführen), kann man das wunderbar zur Laufzeit machen ohne beim Schreiben eine obere Grenze für die Anzahl der Threads festzulegen.

Moderne CPUs sind superskalar, d.h. sie führen pro Taktzyklus mehrere unabhängige Befehle der Befehlssequenz gleichzeitig aus. Das wäre bei so einem einfachen Benchmark ein interessanter Aspekt: Man zählt nicht nur, sondern führt eine Reihe von Operationen hintereinander aus, die dann je nach CPU mehr oder weniger parallel bearbeitet werden. (hier wäre dann Inline-Assembler sehr sinnvoll, um die exakten Operationen gezielt festzulegen).

Bei Benchmarks bringt man in die Benchmarkschleife meist noch eine lustige Datenabhängigkeit rein, sodass nicht der Compiler auf die Idee kommt die Schleife wegzuoptimieren. Wichtig ist auch, dass man Abhängigkeiten zwischen Benchmarkschleife und "Runschleife" einfügt, der ICC (andere inzwischen vielleicht auch) kommen sonst auf blöde Ideen ala Loop-Exchange, die den Benchmark elegant umgehen ;)

eine große Zahl mit 1 zu addieren kann mehr Rechenleistung brauchen, als eine kleine mit 1 zu addieren.
Nee, das dauert immer gleich lang — der ALU-Takt ist fix in Relation zum Kerntakt.

Tesseract
2013-09-29, 14:20:21
Sinnlosester Benchmark seit ... langem.
dem muss ich mich leider voll und ganz anschließen. der benchmark misst nichts relevantes, setzt auf ein unnötiges und falsch konfiguriertes framework und ist scheinbar nicht sehr robust und schlecht designt.

Geldmann3
2013-09-29, 14:57:31
Ich stimme in allen Punkten selbst zu, außer in einem.
Er misst nichts relevantes? Er misst, wie schnell eine CPU eine einfache, dumme Aufgabe erledigen kann. Und Multithreading trennt schon jetzt CPU's die autonom mit vielen Threads zurechtkommen, von denen, die es nicht können. Und wenn man sich das Ergebnis ansieht, korreliert das Skaling mit den physikalischen Kernen.

Nee, das dauert immer gleich lang — der ALU-Takt ist fix in Relation zum Kerntakt.
Müssen bei größeren Zahlen nicht pro Addition mehr Daten übertragen, gespeichert und Addierer hinzugezogen werden?

ENKORE
2013-09-29, 15:02:06
Müssen bei größeren Zahlen nicht pro Addition mehr Daten übertragen, gespeichert und Addierer hinzugezogen werden?
Nee, die Zahlen sind immer gleich groß (32 oder 64 Bit). Für ein 32-Bit Addierwerk ist es komplett egal ob du 1+1 oder 76000+1923300 berechnest... beides geht gleich schnell.

Geldmann3
2013-09-29, 15:03:54
Interessant, das wusste ich nicht.
Wie viele Threads kann man pro Kern nehmen?

ENKORE
2013-09-29, 20:21:00
Kann man pauschal nicht sagen.

EL_Mariachi
2013-09-29, 20:31:13
http://abload.de/img/unbenanntxirk6.jpg

i7 2600k @ 4200 Mhz

.

RoNsOn Xs
2013-09-30, 07:32:33
AMD Sempron 3600+
2,01Ghz


last results:
Number of runs: 1
Singlethreading Performance - Min: 68% ;Max: 68% ;AVG: 68%
Multithreading Performance - Min: 22% ;Max: 22% ;AVG: 22%

- CPS Counts per second in million-

Singlethreading - Min CPS: 6,2 ;Max CPS: 6,2 ;AVG CPS: 6,2
Multithreading - Min CPS: 6,5 ;Max CPS: 6,5 ;AVG CPS: 6,5

all singlethreading results: Run 1: 68%; 6,2CPS, ;
all multihreading results: Run 1: 22%; 6,5CPS, ;

Geldmann3
2014-01-04, 18:16:08
Hab meinen ollen Benchmark noch mal ausgepackt um zu sehen, wie sich mein Xeon E3-1230 @3,6Ghz schlägt.
last results:
Number of runs: 4
Singlethreading Performance - Min: 207% ;Max: 210% ;AVG: 208%
Multithreading Performance - Min: 235% ;Max: 255% ;AVG: 246%

- CPS Counts per second in million-

Singlethreading - Min CPS: 19,1 ;Max CPS: 19,3 ;AVG CPS: 19,2
Multithreading - Min CPS: 68,9 ;Max CPS: 74,6 ;AVG CPS: 72,0

all singlethreading results: Run 1: 207%; 19,1CPS, ;Run 2: 207%; 19,1CPS, ;Run 3: 210%; 19,3CPS, ;Run 4: 210%; 19,3CPS, ;
all multihreading results: Run 1: 252%; 73,9CPS, ;Run 2: 235%; 68,9CPS, ;Run 3: 255%; 74,6CPS, ;Run 4: 242%; 70,7CPS, ;

Immerhin zählt er im Singlethread fast doppelt so schnell wie der alte Phenom2 X6 @2,8Ghz. Im Multithread auch +40%

Annator
2014-01-04, 21:05:29
2500K@4500Mhz

last results:
Number of runs: 10
Singlethreading Performance - Min: 237% ;Max: 248% ;AVG: 238%
Multithreading Performance - Min: 233% ;Max: 250% ;AVG: 240%

- CPS Counts per second in million-

Singlethreading - Min CPS: 21,8 ;Max CPS: 22,8 ;AVG CPS: 21,9
Multithreading - Min CPS: 68,3 ;Max CPS: 73,1 ;AVG CPS: 70,3

all singlethreading results: Run 1: 248%; 22,8CPS, ;Run 2: 237%; 21,8CPS, ;Run 3: 237%; 21,8CPS, ;Run 4: 238%; 21,9CPS, ;Run 5: 238%; 21,9CPS, ;Run 6: 237%; 21,8CPS, ;Run 7: 238%; 21,9CPS, ;Run 8: 237%; 21,8CPS, ;Run 9: 237%; 21,8CPS, ;Run 10: 237%; 21,8CPS, ;