PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : Hamming-Benchmark


Godmode
2006-06-01, 19:55:34
Ein kleiner Benchmark von mir, damit der Conroe was zu tun hat ^^ und natürlich auch die anderen CPUs.

H-Bench berechnet die Hammingfolge bis 1*10^19 = 10 Trilliarden. Die Berechnung erfolt 1000 mal, wobei in das Endergebnis nur die letzten 800 Durchläufe einfließen und darüber dann das arithmetische Mittel gebildet wird.

Die Hammingfolge, benannt nach ihrem Erfinder Richard Hamming, ist wie folgt definiert:
• Die Zahl 1 ist das erste Element der Folge.
• Wenn h ein Element der Folge ist, so sind auch 2h, 3h und 5h Elemente der Folge.
• Keine andere Zahl ist Element der Folge.

meine Ergebnisse:
Opteron 144 @ 2,55 GHz, FSB 285 MHz Multi 9x, 1024 kb L2
Hamming(10.000.000.000.000.000.000): 0.0012435713 sec.

und hier könnt ihr das Teil herunterladen
http://members.aon.at/bans3i/H-Bench.exe

#include <stdio.h>
#include "pTimer.h"

#define TENTRIL 10000000000000000000
#define M 20

double MAX = TENTRIL;


double arr[15000]; /*storage for the hamming numbers*/
double stackcounter; /*how many activation sets are created?*/
int i; /*couter of hamming numbers*/

//prototype
void Swap(double *a, double *b);

/*ultra fastes hamming algorithm*/
void Hamming(double base, double mul)
{
/*calc new number*/
double number = base * mul;
//stackcounter++;

if(number > MAX)
return;
/*put new number in array*/
arr[i] = number;
i++;

if(mul <= 2.0)
{
//if((number * 2.0) <= MAX)
Hamming (number, 2.0);
}//if

if(mul <= 3.0)
{
//if((number * 3.0) <= MAX)
Hamming (number, 3.0);
}

/*optimization: check if the next number is larger then max*/
if((number * 5.0) <= MAX)
Hamming (number, 5.0);

return;
}/*Hamming*/

void qsort_ins(int l, int r){
int i, j;
double tmp;
if(r-l > M)
{ //Quicksort
i=l-1; j=r;
for(;;)
{
while(arr[++i]<arr[r]);
while(arr[--j]>arr[r]);
if(i>=j) break;
//Swap(&arr[i],&arr[j]); //to slow
tmp=arr[i]; arr[i]=arr[j]; arr[j]=tmp;
}//for
tmp=arr[i]; arr[i]=arr[r]; arr[r]=tmp;
//Swap(&arr[i],&arr[r]); //to slow

qsort_ins(l, i-1);
qsort_ins(i+1, r);
}//if
else{ //insertion sort
for(i=l+1; i<=r; ++i){
tmp=arr[i];
for(j=i-1; j>=l && tmp<arr[j]; --j)
arr[j+1]=arr[j];
arr[j+1]=tmp;
}//for
}//else
}//qsort_ins

Hobby
2006-06-01, 20:17:08
A64 + 3800 NC ( default = 12 x 200 )

0.0029129862 sec.

AnarchX
2006-06-01, 20:21:43
Pentium 4 Northwood @ 3000MHz
Hamming(10.000.000.000.000.000.000): 0.0036209420sec.

Da sieht man mal wieder wie toll doch der Prescot war.. ;)

Mr. Lolman
2006-06-01, 20:29:47
San Diego 3700+ @ 3GHz: 0.0022974176 sec.

Lol, so flott wie n Prescott:

Palomino XP2000+ @ 1.66GHz: 0.0046057164 sec.

Black-Scorpion
2006-06-01, 20:46:23
Venice 3000+ (1800MHz) - 0.0039655574 s

huha
2006-06-01, 20:53:12
Athlon XP 2700+ TBred-B (2'171 Mhz): 0.0037616236s

256K L2 cache, 166 Mhz FSB

-huha

edit: Vergleichbar wäre das also mit dem Northwood auf 3 Ghz.


Ist bekannt, inwiefern der Benchmark von unterschiedlichen Ausstattungsmerkmalen (Cachegröße, Takt, FSB, ...) profitiert?

Thowe
2006-06-01, 20:55:09
Core Duo 1.666 - Hamming(10.000.000.000.000.000.000): 0.0042067380 sec

Godmode
2006-06-01, 20:59:27
huha[/POST]']
Ist bekannt, inwiefern der Benchmark von unterschiedlichen Ausstattungsmerkmalen (Cachegröße, Takt, FSB, ...) profitiert?

Nein, eigentlich aber wenn wir verschiedene CPUs vergleichen mit verschiedenem Cache, dann müsste man das schnell herausfinden können.

misterh
2006-06-01, 21:03:28
Laptop
Turion64 1.6Ghz

0.0044865125

AnarchX
2006-06-01, 21:04:22
Pentium 4 Northwood @ 2000MHz (FSB 133MHz)
Hamming(10.000.000.000.000.000.000): 0.0038644684 sec.

Pentium 4 Northwood @ 1544MHz (FSB 102MHz)
Hamming(10.000.000.000.000.000.000): 0.0038965127 sec.

:|
Fazit: Der Bench ist leider für die Tonne...

huha
2006-06-01, 21:04:27
bans3i[/POST]']Nein, eigentlich aber wenn wir verschiedene CPUs vergleichen mit verschiedenem Cache, dann müsste man das schnell herausfinden können.

Wäre es dann nicht sinnvoll, entsprechende Angaben in die Postings zu packen?

Ich habe meins mal dementsprechend editiert.
-huha

Godmode
2006-06-01, 21:12:39
AnarchX[/POST]']Pentium 4 Northwood @ 2000MHz (FSB 133MHz)
Hamming(10.000.000.000.000.000.000): 0.0038644684 sec.

Pentium 4 Northwood @ 1544MHz (FSB 102MHz)
Hamming(10.000.000.000.000.000.000): 0.0038965127 sec.

:|
Fazit: Der Bench ist leider für die Tonne...


komisch, also bei skaliert er recht schön?

AnarchX
2006-06-01, 21:21:56
Pentium 4 Northwood @ 3000MHz (FSB 200MHz)

paralleller Lauf:

1. Hamming(10.000.000.000.000.000.000): 0.00503 sec.
2. Hamming(10.000.000.000.000.000.000): 0.00501 sec.

Eco
2006-06-01, 22:11:46
3000+ Venice @ 2,2 GHz (3500+): 0.0032050941

Sonyfreak
2006-06-01, 22:19:09
Athlon XP Barton 2300Mhz(11,5x200)

0,0033660045s

mfg.

Sonyfreak

Ronny G.
2006-06-01, 22:26:34
A64 3000+ (Venice 754) @ 2450Mhz

0,0028316591 s

Aqualon
2006-06-01, 23:03:46
0.0054118764 s

A64 Clawhammer@1.4 GHz@1.1V

Aqua

AnarchX
2006-06-01, 23:05:02
bans3i[/POST]']komisch, also bei skaliert er recht schön?

Auf den A64er scheint er in der Tat realistisch zu skalieren, aber die Intel Ergebnisse scheinen alle doch sehr merkwürdig.

fl_li
2006-06-01, 23:11:17
Auf meinem P4EE (Gallatin) 3.4GHz:

0.0030872584

Reproduzierbar ist das Ergebnis auf jedenfall. ;)

Raff
2006-06-01, 23:11:36
AnarchX[/POST]']Auf den A64er scheint er in der Tat realistisch zu skalieren, aber die Intel Ergebnisse scheinen alle doch sehr merkwürdig.

In der Tat. Ich komme mit 1.992 MHz auf gigantische 0,00402... Sekunden. :|

MfG,
Raff

AnarchX
2006-06-01, 23:15:21
Raff[/POST]']In der Tat. Ich komme mit 1.992 MHz auf gigantische 0,00402... Sekunden. :|


Wie skaliert er den bei dir nach oben/unten?

JanZ
2006-06-01, 23:15:29
Beinahe hätte ich mir das hier gesaugt, aber wenn ich das so lese, vergeht mir die Lust und ich hinterfrage den Sinn. Hab den Abend jetzt eh mit Aquamark verbracht :)
Hat sich aber gelohnt :D

MFG
Jan

PS: Ein Benchmark in dem Sinne ist das Programm nicht oder ? Kann man ja schlecht miteinander verlgeichen xD

€dit:
Juhu, ich konnte mic hinreißen lassen :|
0.0030402096 (248x11 / 2x512MB @ 248 MHz @ 2,5/2/2/9)
Benchmark"king" :uking:
Aha -,-. Der Opteron im Eingangspost hat mich schon geschlagen.
Bin gefrustet und geh pennen, Nacht :frown:

san.salvador
2006-06-01, 23:27:56
Celeron-M @ 2547:
0,0032540542 s

Godmode
2006-06-02, 10:45:07
JanZ[/POST]']
PS: Ein Benchmark in dem Sinne ist das Programm nicht oder ? Kann man ja schlecht miteinander verlgeichen xD


Hm keine Ahnung ich weiß nicht wie man einen Benchmark definiert. Aber ich kann ja den Code offenlegen und dann könnt ihr mir sagen ob es ein Benchmark ist oder nicht. Code ist oben im Eingangspost.

Rente
2006-06-02, 10:51:20
Opteron 146@2630

Alte Version: 0.0026371644 s
Neue Version: 0.0012153729 s

AnarchX
2006-06-02, 11:06:00
Ich hab jetzt mir noch mal die Anomalie auf meinem System angeschaut:

3000MHz -> 0.00347sec -> mit Stopuhr gemessene Zeit für Gesammtdurchlauf: 3.74 sec

2000MHz -> 0.00348sec -> mit Stopuhr gemessene Zeit für Gesammtdurchlauf: 5.61 sec

:|

Taktraten wurden alle unter Windows mit Clockgen verändert.
Verwendest du irgenwelche Performancetimer, die den Starttakt von Windows XP verwenden?
Wenn ja müsste sich trotzdem das Ergebniss verändern, z.B. schneller werden, obwohl der Takt gesenkt wird.

Godmode
2006-06-02, 11:11:32
Ja es wird ein Performancetimer verwendet. Ich habe jetzt den Code nochmal compiliert mit Optimierungen auf maximalen Speed und konnte mein Ergebenis nochmal halbieren, siehe oben.

AnarchX
2006-06-02, 11:20:30
Hamming Speed

Pentium 4 Northwood @ 3000MHz (FSB 200MHz) 512kB L2
Hamming(10.000.000.000.000.000.000): 0.001705sec

nichts verändert:
Hamming(10.000.000.000.000.000.000): 0.001681sec ;D

Mr. Lolman
2006-06-02, 11:39:17
San Diego 3700+ @ 3GHz: 0.0010398564 sec.

AnarchX
2006-06-02, 11:49:42
Hamming Speed

Pentium 3 @ 500MHz (FSB 100MHz) 512kB L2
Hamming(10.000.000.000.000.000.000): 0.0056661796sec

Erstaunliche Pro-MHz-Leistung... ;)

Joker (AC)
2006-06-02, 12:05:09
hab auf nem 930@3800 254 1:1 (2,5-2-2-5) und 865 Chipsatz unglaubliche
0,0017687565 sec
http://img95.imageshack.us/img95/9872/hbench9zt.th.jpg (http://img95.imageshack.us/my.php?image=hbench9zt.jpg)

Black-Scorpion
2006-06-02, 12:29:13
Neu: Venice 3000+ (1800MHz) - 0.0017460054 s
Alt: Venice 3000+ (1800MHz) - 0.0039655574 s

Eco
2006-06-02, 22:32:05
Venice 3000+ @ 2,2 GHz (3500+)
Neu: 0.0014608152
Alt: 0.0032123439

diedl
2006-06-02, 23:50:28
P-M730@1704 MHz

neu

Windows XP SP2 0,0015941150 s
Windows 98 SE...0,0021803946 s

mfg diedl

Joker (AC)
2006-06-03, 09:32:47
P-M@ 3150 / P4C800 / cl 2-2-2-5

Achill
2006-06-03, 11:32:48
Pentium 4 NW @3200MHz (FSB 200MHz)
Gentoo mit Wine:
0.0017990178 sec.

Coda
2006-06-03, 11:50:12
Irgendwie vermute ich, dass die Zeitmessung zu ungenau ist.

Hobby
2006-06-03, 11:57:07
A64 + 3800 NC ( default = 12 x 200 )

0.0013381739 sec. ( Werte korrigiert auf neue Version )

und mal ein wenig übertaktet

stav0815
2006-06-03, 12:22:25
A64 3000+ @ 2450Mhz:
0.0012905532sec.

predprey
2006-06-03, 13:22:12
Wäre es denn nicht besser als Bench score die gesamte Zeit der 1000 durchläufe zu nehmen ?

BAGZZlash
2006-06-03, 13:27:51
Meine Rechner:

Venice 3.200+ @ 2.200 MHz (2.5-3-3-8-1T): 0.0015499068 sec.
Celeron 400 (Slot 1 auf Asus P2B): 0.0160947393 sec. :-)

Godmode
2006-06-03, 13:53:14
Coda[/POST]']Irgendwie vermute ich, dass die Zeitmessung zu ungenau ist.

Ja c&c könnte ein Problem machen, aber eher das MS OS, hier der Thread dazu wie das ganze eigentlich enstanden ist, hier ist auch das Timer Modul beschrieben:
http://www.forum-3dcenter.org/vbulletin/showthread.php?t=254718&highlight=hamming

Godmode
2006-06-03, 13:54:18
predprey[/POST]']Wäre es denn nicht besser als Bench score die gesamte Zeit der 1000 durchläufe zu nehmen ?

Eher nicht, weil die ersten Durchläufe sind langsamer als die weiteren und dies würde den Durchschnitt drücken.

BK-Morpheus
2006-06-03, 15:11:43
A64 3000+ @ 2,3Ghz
2x512MB DDR Ram cl3-3-3-6@256mhz

http://img459.imageshack.us/img459/8868/hemmingbench6oh.png

Stirling
2006-06-03, 19:03:09
siehe Sig.

0.0014187751

Ronny G.
2006-06-03, 19:12:38
Hier das Ergebnis der neueren Version

A64 3000+ Venice 754 @ 2450Mhz 0,0013180617s (erster Durchlauf, falls das relevant ist)

Gruß Ronny G.

Matrix316
2006-06-03, 19:56:23
A64 3000+ NC 512 kb cache S754 @ 2400 MHz, 1 GB 200/400 MHz Speicher, nforce4 MB

0.0014449190 sec (beim ersten durchlauf)

beim zweiten

0.0013805168

beim dritten ;)

0.0014053331

misterh
2006-06-03, 20:08:32
kann nur fehler sein? vorher war 0.0011xxx

und neuere version kommt so raus.

Holgi
2006-06-03, 22:05:13
A64 3200+ 2.00GHz // 1GB Ram

0,0016102123

tombman
2006-06-03, 22:49:05
Conroe. 3150mhz: 0.0007697334 ;)

Tjo, damit bin ich am schnellsten, schätze ich ;)

erwingage
2006-06-03, 23:06:13
tombman[/POST]']Conroe. 3150mhz: 0.0007697334 ;)

Tjo, damit bin ich am schnellsten, schätze ich ;)

freu dich :rolleyes:

onkel2003
2006-06-03, 23:10:03
notebook
2 Ghz Dothan / 2 * 512 MB DDR2 266 cl 4.4.4.12

0.0013711429

zw3nk4u
2006-06-04, 19:35:24
test 1: average calculation time for Hamming(10.000.000.000.000.000.000): 0.0012610244 s
ec.
test 2: average calculation time for Hamming(10.000.000.000.000.000.000): 0.0012529386 s
ec.

x2 @ 2,5ghz