Entwickler-Ecke
Freeware Projekte - Performance der Prozessoren ...!
Hochhaus - Mi 22.01.14 15:43
Titel: Performance der Prozessoren ...!
Hallo allerseits !
das Quadratwurzelprogramm in der Beilage frisst enorm Ressourcen. Und da bitte ich um Eure Mithilfe: Würdet Ihr bitte die Quadratwurzel aus 2 auf 10'000 Nachkommastellen von Euren PC's berechnen lassen, und das Ergebnis (Zeit in sec.) hier posten ? Natürlich mit Angabe des Prozessors und der Taktfrequenz.
Besten Dank für Eure Mithilfe !
Dies hilft, den besten Mathe-Rechner ausfindig zu machen.
Hochhaus
Mein Ergebnis: Core 2 Duo 2.93 GHz: 4.638 sec.
Lelf - Mi 22.01.14 16:09
Ergebnis von sqrt(2) 10'000 Stellen: 2,953 sec.
CPU: Intel Core i7 3770K @ 3.50GHz Ivy Bridge 22nm Technologie
RAM: 8,00GB Dual-Kanal DDR3 @ 800MHz
Am Ende kommt eine Fehlermeldung: "Dateizugriff verweigert". Damit fange ich nichts an.
Gruß Lelf
Horst_H - Mi 22.01.14 16:23
Hallo,
5,242 sec. auf AMD Phenom II X955 3.2 Ghz mit 4 Gb Speicher.
11 Mb während der Ausführung im Taskmanager. Läßt sich nicht stoppen.Auch Dateizugriffsfehler.
Gruß Horst
Hochhaus - Mi 22.01.14 16:27
Lelf hat folgendes geschrieben : |
Am Ende kommt eine Fehlermeldung: "Dateizugriff verweigert". Damit fange ich nichts an.
Gruß Lelf |
Das Proggi versucht, das Ergebnis im Verzeichnis der EXE-Datei zu speichern. Je nach Zugriffsmöglichkeiten kommt dann dieser Fehler - z.Bsp. auch, wenn es ab CD läuft.
Hochhaus
Marc. - Mi 22.01.14 17:13
Horst_H hat folgendes geschrieben : |
5,242 sec. auf AMD Phenom II X955 3.2 Ghz mit 4 Gb Speicher. |
Ich hätte es gar nicht mehr ausführen müssen. Wir haben im Grunde die gleichen CPUs, die Algorithmus-Laufzeit skaliert sehr gut mit dem Takt:
AMD Phenom II X4 945 4x 3GHz 8GB RAM: 5.538s
und um 600 MHz übertaktet: 4.633s
3.6/3 ~ 5.538/4.633 ~ 1.2
Gruß Marc
Hochhaus - Mi 22.01.14 17:20
Lelf hat folgendes geschrieben : |
Ergebnis von sqrt(2) 10'000 Stellen: 2,953 sec.
CPU: Intel Core i7 3770K @ 3.50GHz Ivy Bridge 22nm Technologie
Gruß Lelf |
Ok. Du hast ganz offensichtlich die beste CPU bis jetzt ! Ich bin mal gespannt, was die weiteren Ergebnisse sind ...
Lelf - Mi 22.01.14 17:26
Hallo Hochhaus,
Du hast recht: Wenn man die entpackte EXE in ein anderes Verzeichnis kopiert wird das Ergebnis im Protokoll angezeigt, sowie als Wurzel.Doc-Datei auf die Festplatte geschrieben. Aber warum doppelt?
Gruß Lelf
Hochhaus - Mi 22.01.14 17:36
Lelf hat folgendes geschrieben : |
Aber warum doppelt?
Gruß Lelf |
Damit man das Ergebnis optisch sofort sieht und man es nicht per Copy + Paste selbst in eine Datei kopieren muss .
Hochhaus
jfheins - Mi 22.01.14 18:43
Ich habe das gerade mal auf mehreren Rechnern ausprobiert. Leider lastet es nur einen Kern aus, gerade auf dem letzten könnte es multithreaded wesentlich flotter laufen.
Alle Zeiten für 10k Stellen:
AMD E2-1800: 11,89 sec
Intel XEON E3-1240: 3,31 sec
Dual Intel XEON E5-2643 @ 3,3GHz : 3,87 sec (braucht 34,9 sec. für 30k Stellen)
Horst_H - Mi 22.01.14 18:44
Hallo,
ich teste nochmal meinen neuen i4330 3.5 Ghz 8 GB ( 1833 Mhz ? ) der braucht für 10000 Stellen 4,188 sec Linux/wine ( Pentomino ist unter wine schneller )
Haswell hin oder her, jetzt bin ich enttäuscht.
Gruß Horst
Hochhaus - Mi 22.01.14 19:04
Horst_H hat folgendes geschrieben : |
Haswell hin oder her, jetzt bin ich enttäuscht.
Gruß Horst |
Sehr wahrscheinlich wäre es ohne Linux - direkt unter Windows - schneller. Vermute ich.
Horst_H - Mi 22.01.14 19:15
Hallo,
ich habe nur linux/wine benutzt und wie geschrieben, pentomino ist unter wine schneller.
Das Programm läuft ja ohne Bildschirm und Dateiarbeit und damit ist die Interaktion mit der WinApi minimal.
Gruß Horst
Hochhaus - Mi 22.01.14 19:16
jfheins hat folgendes geschrieben : |
könnte es multithreaded wesentlich flotter laufen.
|
Es ist nur sehr schwierig, den Algorithmus auf mehrere Kerne zu verteilen.
Hochhaus
Hochhaus - Mi 22.01.14 19:22
Horst_H hat folgendes geschrieben : |
Das Programm läuft ja ohne Bildschirm und Dateiarbeit und damit ist die Interaktion mit der WinApi minimal.
Gruß Horst |
Das Programm schreibt das Ergebnis in eine Datei. Allerdings ist dies eine eher kurze Angelegenheit. Mich würde es interessieren, wenn noch jemand anderes mit Haswell-Prozessor das Programm austesten würde. Unter Windows XP, Vista, 7 oder 8.
Könntest Du die simulierte Windows-Version unter Linux nicht ändern ?
Hochhaus
OlafSt - Mi 22.01.14 21:51
Hab meinen i5 mal damit gequält: 4,135 sec.
CPU ist ein Core-i5 2400 @ 3,2GHz Standard-Takt (Sandy-Bridge), 8GB DDR3-RAM.
Horst_H - Do 23.01.14 00:47
Hallo,
ich dachte mir, Wurzel ziehen aus 2 mittels Heron Verfahren unter Einsatz von GMP müsste doch sehr simpel sein.
Mit freepascal unter linux64 ( da schwirrt ja libgmp sowieso herum, aber gpm.dll für Windows gibt es auch:
gmp-wrapper-for-delphi [
https://code.google.com/p/gmp-wrapper-for-delphi/downloads/list]
Delphi-Quelltext
1: 2: 3: 4: 5: 6: 7: 8: 9: 10: 11: 12: 13: 14: 15: 16: 17: 18: 19: 20: 21: 22: 23: 24: 25: 26: 27: 28: 29: 30: 31: 32: 33: 34: 35: 36: 37: 38: 39: 40: 41: 42: 43: 44: 45: 46: 47: 48: 49: 50: 51: 52: 53: 54: 55: 56: 57: 58: 59: 60: 61: 62: 63: 64: 65: 66: 67: 68: 69: 70: 71: 72: 73: 74: 75:
| program sqrt2gmp; {$IFdef fpc} {$MODE Delphi} {$ELSE} {$APPTYPE CONSOLE} {$ENDIF}
uses sysutils, {$IFdef fpc} gmp; {$ELSE} gmp_lib; {$ENDIF}
const cDigits =100000; var T2,T1,T0: TDateTime; n,cnt : integer; a,Naeherung,erg,die2: mpq_t; f : mpf_t; buf : string; begin mpq_init(die2); mpq_init(a); mpq_init(Naeherung); mpq_init(erg); T0:= Time; try mpq_set_str(die2,'10',2); mpq_set(a,die2); mpq_set(Naeherung,die2); n := round(ln(cDigits*(2-sqrt(2))/sqrt(2))/ln(2)+1)+1; cnt := n; repeat mpq_div(erg,a,Naeherung); mpq_add(Naeherung,erg,Naeherung); mpq_div_2exp(Naeherung,Naeherung,1); dec(cnt); until cnt<0; mpf_init2(f,round(cDigits/0.30103)); mpf_set_q(f,erg);
T1:= Time; setlength(buf,cDigits+7); {$IFDEF FPC} mp_snprintf(PAnsiChar(buf),cDigits,'%.*Ff',cdigits,@f); {$else} gmp_printf(PAnsiChar(buf),'%.*Ff',cdigits,@f); {$endif} T2:= Time; writeln; writeln(buf); writeln( n,' Durchlaeufe'); Writeln('Rechenzeit ',FormatDateTime('NN:SS.ZZZ' ,T1-T0)); Writeln('Ausgabezeit ',FormatDateTime('NN:SS.ZZZ' ,T2-T1)); finally mpf_clear(f); mpq_clear(erg); mpq_clear(Naeherung); mpq_clear(a); mpq_clear(die2); readln end; end. |
der Rest der Ausgabe:
Quelltext
1: 2: 3: 4:
| ...4012197700603576101524970318470624937068864601669535559159840183770081805610147523 17 Durchlaeufe Rechenzeit 00:00.493 Ausgabezeit 00:00.158 |
Gruß Horst
Noch ein Edit, es gibt ja auch die Wurzelfunktion, noch wesentlich schneller siehe auch
http://www.entwickler-ecke.de/viewtopic.php?t=109385 den Beitrag von
Gammatester mparith oder hier mit gmp
Delphi-Quelltext
1: 2: 3: 4: 5:
| .. mpf_init2(f,round(cDigits/0.30103)); mpfset_ui(f,2); mpf_sqrt(f,f); .. |
mandras - Do 23.01.14 00:58
AMD Athlon II XE3 450 3,2GHZ Win 7 6GB Speicher
erster Start:5,226sec, zweiter: 5,241sec.
iKilledKenny - Do 23.01.14 10:15
AMD 64 X2 6000+, 2GB RAM => 5,687 sec.
Hochhaus - Do 23.01.14 14:02
Horst_H hat folgendes geschrieben : |
Hallo,
ich teste nochmal meinen neuen i4330 3.5 Ghz 8 GB ( 1833 Mhz ? ) der braucht für 10000 Stellen 4,188 sec Linux/wine ( Pentomino ist unter wine schneller )
Haswell hin oder her, jetzt bin ich enttäuscht.
Gruß Horst |
Mein Programm rechnet nicht nur sehr intensiv - es braucht auch den Hauptspeicher sehr intensiv. Was hast Du denn für Hauptspeicher eingebaut ?
Hochhaus
baumina - Do 23.01.14 14:21
Hochhaus hat folgendes geschrieben : |
Horst_H hat folgendes geschrieben : | Hallo,
ich teste nochmal meinen neuen i4330 3.5 Ghz 8 GB ( 1833 Mhz ? ) der braucht für 10000 Stellen 4,188 sec Linux/wine ( Pentomino ist unter wine schneller )
Haswell hin oder her, jetzt bin ich enttäuscht.
Gruß Horst |
Mein Programm rechnet nicht nur sehr intensiv - es braucht auch den Hauptspeicher sehr intensiv. Was hast Du denn für Hauptspeicher eingebaut ?
Hochhaus |
Ich rate jetzt mal : 8 GB Arbeitsspeicher :lupe:
Oder meinst es handelt sich evtl. um Chinesenkram?
Ralf Jansen - Do 23.01.14 14:44
Zitat: |
Ich rate jetzt mal : 8 GB Arbeitsspeicher :lupe: |
Intensiv nutzen und viel nutzen ist nicht das gleiche ;) Die Zahl in Klammern könnte interessanter sein.
Wobei ich eher glaube das sich die Datenmengen in Grenzen halten sollte so das alles im CPU Cache passiert.
Hochhaus - Do 23.01.14 15:30
8 Gb Hauptspeicher müsste problemlos reichen. Die Frage ist, wie sie getaktet sind - und mit dem Prozessor zusammenarbeiten. Das Programm nutzt ca. 10 - 15 MB Hauptspeicher - es passiert also nicht alles im Cache. Denke ich.
Hochhaus
papa69 - Do 23.01.14 15:36
so, habe auch mal "getestet":
mehrere Versuche: meistens 5,741 sec
schnellstes Ergebnis nach 5,726 sec.
Prozessor: Inter Core 2 Quad8200
RAM: 6GB
Prozessor-Auslastung war ziemlich "gleichmäßig", wobei aber Kern 3 "mehr" zu tun hatte. Mittlere Auslastung lag bei ca.23% (Kern 3 bei ca.35%)
Horst_H - Do 23.01.14 16:45
Hallo,
wie sieht denn der Quelltext aus?
Wie oben geschrieben, erreiche ich mit gmp 0.077 Sekunden für 100.000 Stellen, denn 10.000 kann ich mit time nicht messen.
Gruß Horst
Hochhaus - Do 23.01.14 16:59
Das Programm ist sehr rechenintensiv, es ist kein ausgeklügelter Algorithmus.
Hochhaus
Code:
Delphi-Quelltext
1: 2: 3: 4: 5: 6: 7: 8: 9: 10: 11: 12: 13: 14: 15: 16: 17: 18: 19: 20: 21: 22: 23: 24: 25: 26: 27: 28: 29: 30: 31: 32: 33: 34: 35: 36: 37: 38: 39: 40: 41: 42: 43: 44: 45: 46: 47: 48: 49: 50: 51: 52: 53: 54: 55: 56: 57: 58: 59: 60: 61: 62: 63: 64: 65: 66: 67: 68: 69: 70: 71: 72: 73: 74: 75: 76: 77: 78: 79: 80: 81: 82: 83: 84: 85: 86: 87: 88: 89: 90: 91: 92: 93: 94: 95: 96: 97: 98: 99: 100: 101: 102: 103: 104: 105: 106: 107: 108: 109: 110: 111: 112: 113: 114: 115: 116: 117: 118: 119: 120: 121: 122: 123: 124: 125: 126: 127: 128: 129: 130: 131: 132: 133: 134: 135: 136: 137: 138: 139: 140: 141: 142: 143: 144: 145: 146: 147: 148: 149: 150: 151: 152: 153: 154: 155: 156: 157: 158: 159: 160: 161: 162: 163: 164: 165: 166: 167:
| Procedure TWurzForm.StartClick(Sender: TObject); Var I, N, P, W: LongInt; Begin
Start.Enabled := False; ZeitX := GetTickCount; ZeitR.Text := '0,000 sec.'; WurzEdit.Text := ''; StelleX.Text := '0'; Go := True;
SetCursor(LoadCursor(0, PChar(idc_Wait))); Y := 'Wurzel.Doc'; AssignFile(Fil, Y);
Z := 0; Zahl := 0.0; Stellen := 1000.0; Summe1 := 0; Summe2 := 0; Q_Test := 0; Q_Wurzel := 0.0;
For I := -1 To 2000000 Do Begin A[I] := 0; End;
For I:=-2 To 4012000 Do Begin S[I] := 0; K[I] := 0; End;
Val(Wurzel.Text, Zahl, R); Val(Stelle.Text, Stellen, R);
N := Trunc(Stellen);
If (Zahl <= 0.0) Or (Zahl >= 1000) Then Begin MessageDlg('Ungültige Zahl', mtError, [mbOk], 0); Stop.Enabled := False; Clear.Enabled := True; Exit; End;
If (Stellen < 1) Or (Stellen > 1000000) Then Begin MessageDlg('Ungültige Anzahl Stellen', mtError, [mbOk], 0); Stop.Enabled := False; Clear.Enabled := True; Exit; End;
P := Trunc(Sqrt(Zahl));
K[-2] := Trunc((P * P)/100); K[-1] := Trunc((P * P)/10) - 10 * Trunc((P * P)/100); K[0] := P * P - 10 * Trunc((P * P)/10); A[-1] := Trunc(P/10); A[0] := P - 10 * Trunc(P/10); S[-2] := K[-2]; S[-1] := K[-1]; S[0] := K[0];
Q_Test := 0; Q_Wurzel := 0.0; Q_Test := Round(10000.0 * Zahl);
If (Sqrt(Q_Test) = Trunc(Sqrt(Q_Test))) Then Begin Q_Wurzel := Sqrt(Q_Test)/100; Str(Q_Wurzel:2:4, StrZ); WurzEdit.Lines[0] := 'Unsinnige Vorgabe, QWurzel = ' + StrZ; Stop.Enabled := False; Clear.Enabled := True; Exit; End;
I := 1;
While (I <= N) And Go Do Begin
Application.ProcessMessages; If (I Mod 100 = 0) Then Begin ZeitY := GetTickCount - ZeitX; ZeitReal := ZeitY / 1000.0; ZeitR.Text := FloatToStrF(ZeitReal, ffFixed, 6, 3) + ' sec.'; Str(I, AnzStel); StelleX.Text := AnzStel; End;
Stop.Enabled := True; Clear.Enabled := False;
For W := -1 To I Do Begin Inc(K[W + I], 2 * A[W]); End;
K[2 * I] := K[2 * I] + 1;
For W := 2 * I DownTo -1 Do Begin Z := 0; While (K[W] > 9) Do Begin Dec(K[W], 10); Inc(Z); End; Inc(K[W - 1], Z); End;
Summe1 := Round(1.0E06 * K[-2] + 1.0E05 * K[-1] + 1.0E04 * K[0] + 1000.0 * K[1]); Summe1 := Summe1 + Round(100.0 * K[2] + 10.0 * K[3] + 1.0 * K[4]); Summe2 := Round(10000.0 * ZAHL);
If (Summe1 >= Summe2) or (A[I] = 9) Then Begin Inc(I); CopyMemory(@K[-2], @S[-2], 2 * I + 3); End
Else Begin Inc(A[I]); CopyMemory(@S[-2], @K[-2], 2 * I + 3); End;
End;
If (Not Go) Then N := I; ZeitY := GetTickCount - ZeitX; ZeitReal := ZeitY / 1000.0;
If (Q_Wurzel = 0.0) Then Begin ReWrite(Fil); Writeln(Fil,'Protokoll:'); Writeln(Fil,'__________'); Writeln(Fil,' '); Writeln(Fil,'Quadratwurzel von ',Zahl:3:4,' auf ',N,' Stellen ist: '); Write(Fil, A[-1], A[0], '.');
For I := 1 To N Do Begin If (I/72) = Trunc(I/72) Then Writeln(Fil, ' '); Write(Fil, A[I]); End;
Writeln(Fil, ' '); Writeln(Fil, ' '); Writeln(Fil, 'Ende des Protokolles.'); CloseFile(Fil); ZeitR.Text := FloatToStrF(ZeitReal, ffFixed, 6, 3) + ' sec.'; WurzEdit.Lines.LoadFromFile(Y);
Stop.Enabled := False; Clear.Enabled := True;
SetCursor(LoadCursor(0, PChar(idc_Arrow))); End; End; |
D.Elphi - Do 23.01.14 18:33
AMD FX-6100 (6x 3,3 GHz), 8 GB RAM: 5,156 Sekunden
MfG
D.Elphi
Jens01 - Do 23.01.14 21:25
i7-4770k, 3,5GHz, 8GB-Ram, Win8-64
--> 3,500 sec
gruss Jens
D.Elphi - Do 23.01.14 22:15
Irgendwie funktioniert das bei mir mit den Nachkommastellen nicht...
Hochhaus - Do 23.01.14 22:24
D.Elphi hat folgendes geschrieben : |
Irgendwie funktioniert das bei mir mit den Nachkommastellen nicht... |
Was funktioniert nicht ? Wenn ein Spruch kommt "Dateizugriff verweigert" muss das Programm in einem Verzeichnis laufen, das Schreibzugriff bietet.
Hochhaus
D.Elphi - Do 23.01.14 22:37
Nein, ich bezog mich auf dieses Problem:
MfG
Hochhaus - Fr 24.01.14 08:15
Ok. Das ist ein arger Bug. Ich werde ihn bald flicken. In der Schweiz gibt man einen Dezimalpunkt ein und KEIN Komma. Dann funktioniert alles normal.
Hochhaus
Tilo - Fr 24.01.14 08:52
Mann ist mein System veraltet (Laptop Okt2006!)
CPU: T2300 auf 1,6 GHz (Dual Core, 32 Bit, "Yonah"
4 Gb Ram
Win 7 32bit
Zeiten:
a) 11,980 sec (dynamisch gedrosselte Leistung),
b) 10,921 sec (max Performance)
Th69 - Fr 24.01.14 11:50
Eigentlich kommt mir mein Notebook (hier auf der Arbeit) immer total träge vor, aber die Zeiten gehen ja: 4,586 sec (bestes: 4,508 sec - langsamstes: 4,712 sec - insg. ca. 10mal hintereinander getestet).
CPU: i5 (Dual Core, je 2,67 GHz)
RAM: 4 GB
Win 7 64bit
Martok - Fr 24.01.14 13:52
Tilo hat folgendes geschrieben : |
Mann ist mein System veraltet (Laptop Okt2006!) |
Oh, ich hab nicht den ältesten ;)
CPU: AMD Turion 64 X2 Mobile TL-58 (Tyler) (@1.9GHz)
RAM: 4 GB PC2-6400 (400 MHz)
Win XP 32bit
11,234 sec.
Hochhaus - Fr 24.01.14 17:41
D.Elphi hat folgendes geschrieben : |
Nein, ich bezog mich auf dieses Problem:
[Bild: Bild]
MfG |
Müsste hiermit behoben sein ! Siehe Beilage.
OlafSt - Fr 24.01.14 19:11
Mein schon recht betagtes Notebook hier ist doch nicht der langsamste ;)
AMD Phenom II N830, 2.1GHz Triple-Core, Einstellung "Performance"
8,518 sec.
Einstellung "Pwr Save"
17,722 sec.
D.Elphi - Sa 25.01.14 12:30
Hochhaus hat folgendes geschrieben : |
Müsste hiermit behoben sein ! Siehe Beilage. |
Klappt jetzt alles wunderbar! Danke! :)
Yankyy02 - Sa 25.01.14 14:11
Hallo, hab mal getestet ....
mehrere Durchläufe 5,203 sec., 5,266 sec., 5,250 sec.
System: Win 8.1
CPU: AMD Athlon x4 640 3.00GHz
RAM: 8 GB
hoffe es hilft weiter ....
MfG
Xion - Sa 25.01.14 15:42
Also zunächst finde ich es absolut faszinierend, wie wenig sich die letzten
10 Jahre bezüglich der Rechenleistung getan hat.
Ich habe hier einen Pentium M (1.6GHz) (Thinkpad T41, also irgendwann zwischen 2003 und 2005 produziert) vor mir, und der braucht gut 11 Sekunden. Gerade mal doppelt so lange wie ein moderner Prozessor (ohne Multithreading natürlich, was oft ohnehin nicht möglich ist). Faktor 2 ist aber meist problemlos aus dem Algorithmus rauszuholen.
Leider muss mich mein T41 bald verlassen, weil ich ein Notebook mit voller OpenGL 1.4 Unterstützung brauche :cry:
Hochhaus hat folgendes geschrieben : |
Dies hilft, den besten Mathe-Rechner ausfindig zu machen. |
Diese Frage finde ich daher reichlich sinnlos. Mathe-Rechner? Wenn du deinen Code änderst, kann es schon wieder ganz anders aussehen. Dann ist z.B. plötzlich der Cache der Flaschenhals (dann kann mein Notebook noch viel besser mithalten :mrgreen: ). Und selbst wenn du den selben Code in C++ oder Java schreibst, kann es komplett anders sein.
Hochhaus - Sa 25.01.14 17:14
Xion hat folgendes geschrieben : |
Also zunächst finde ich es absolut faszinierend, wie wenig sich die letzten 10 Jahre bezüglich der Rechenleistung getan hat. |
Das ist so. Einzig die Änderung vom Pentium 4 zum Core 2 Duo hat einen wesentlichen Performance-Schub gebracht. Mein Programm ist sicher nicht eine Referenz, um den besten Mathe-Rechner zu finden. Einzig ein Anhaltspunkt. Wenn man mehr wissen will, muss man einen Benchmark-Test laufen lassen, der sowohl Prozessor, Speicher, Graphikkarte und Festplatte testet.
Hochhaus
Lelf - Sa 25.01.14 17:29
Meine besonders guten Werte sind mir inzwischen etwas sonderbar vorgekommen. (10.000 Stellen: 2,953 sec 100.000: Stellen 292,781 sec.) Ich hab' mal in meinem Asus-Bios unter Ai-Tweaker nach geschaut, da steht:
Synchronizing Target CPU Turbo-Mode Speed : 4200 MHz
Target DRAM Speed : 1600 MHz
Das heißt doch wohl, daß er übertaktet ist, was mir bisher gar nicht bekannt war. Auch mit dem Programm "System-Explorer" wird dies nicht angezeigt. Also, wie Xion schon sagte, die Processor-Daten allein sind wenig aussagekräftig.
Gruß Lelf
Hochhaus - Sa 25.01.14 18:24
CPU: AMD A4-1250 APU with Radeon(TM) HD Graphics
Memory total: 3525 MB
Memory free : 1091 MB
OS: Microsoft Windows 8 - 6.2.9200 64 Bit
Zeit für 10'000 Stellen: 27.534 sec.
(Netbook für 250 Euro)
Hochhaus
Jens01 - Sa 25.01.14 19:40
@Lelf: "Meine besonders guten Werte sind mir inzwischen etwas sonderbar vorgekommen."
Als ich das sah, hatte ich sowas vermutet, da in allen zu findenen Tests der 4770er etwas schneller sein sollte. (3,5s bei 4770k zu 2,9s bei 3770k)
Hinsichtlich der Geschwindigkeit wird meiner zu 12,5% ausgelastet, d.h. eigentlich es läuft nur ein Thread. Die neueren Prozessoren sind darauf ausgelegt, dass man die Rechenleistung auf die Kerne verteilen muß. Dort spielen sie dann auch erst ihre volle Leistung aus.
OlafSt - Sa 25.01.14 20:15
Hochhaus hat folgendes geschrieben : |
Das ist so. Einzig die Änderung vom Pentium 4 zum Core 2 Duo hat einen wesentlichen Performance-Schub gebracht. |
DAs war auch die letzte, massive Änderung an der Architektur. Bis zum P4 hat man versucht, mit immer mehr MHz, größeren Caches, längeren Pipelines die Leistung zu erhöhen, aber hier stoßen die Chipentwickler langsam an physikalische Grenzen. Also hat man die Idee gehabt, einfach mit mehreren CPUs (oder besser: deren Kernen) die Leistung zu pushen und via Strukturverkleinerung die Probleme beherrschbar zu machen.
Allerdings hat auch die Strukturverkleinerung ihre Grenzen. Bei 5nm Strukturgröße passen nur noch gute 30 Siliziumatome in so eine Struktur und es wird dann sehr schwierig, die Halbleiter-Effekte des Siliziums überhaupt noch zu nutzen, von Leckströmen und Tunneleffekten ganz zu schweigen.
Es wird spannend zu sehen, was passiert, wenn wir dort angekommen sind.
Lelf - Sa 25.01.14 23:36
Ich habe inzwischen die Übertaktung herausgenommen. Die Programme "Speccy" und "System Explorer" zeigen weiterhin 3500MHz an. Im Bios Stand jetzt 3900MHz. Man kann den Angaben also nicht so richtig trauen, wie schon mein alter Physiklehrer sagte: "Wer mißt, mißt Mist".
Neue Werte: 10.000 Stellen 3,375sec 100.000 Stellen 334,062sec = 5m34s
Gruß Lelf
finalizat0r - Sa 25.01.14 23:38
Normal:
CPU: AMD FX8320 3.5GHz (17.5 x 200) mit Asus Crosshair V Formula
RAM: 8GB Corsair Dominator GT 1867
Zeit: 4,496
Getaktet:
CPU: 4.95GHz (23.5 x 211) von 1,34V auf 1,5V
RAM: 1948MHz und von 1.5V auf 1.66V
Zeit: 3.461
Jens01 - So 26.01.14 00:23
@Lelf
Das wäre ja ein Ding, wenn der 3770 schneller wäre als der 4770.
Hat das Board einen Einfluß?
Der 100.000 Test lag beim 4770 bei 342 sec, ungefähr dieselbe Proportion
Lelf - So 26.01.14 00:46
Ich kann nur wiedergeben, was mir "Speccy" ausspuckt:
Motherboard
Hersteller ASUSTeK COMPUTER INC.
Model P8Z77-V LX2 (LGA1155)
Chipsatzhersteller Intel
Chipsatzmodel Ivy Bridge
Chipsatzrevision 09
Southbridgehersteller Intel
Southbridgemodel Z77
Southbridgerevision 04
Systemtemperatur 28 °C
BIOS
Marke American Megatrends Inc.
Version 2202
Datum 12.07.2013
Spannung
CPU CORE 0,936 V
MEMORY CONTROLLER 1,000 V
AVCC 3,328 V
3VCC 3,312 V
VIN4 1,000 V
VIN6 0,968 V
Diese Daten sind für mich böhmische Dörfer. Ich vermute mal, daß meine CPU immer noch übertaktet ist.
Gruß Lelf
Jens01 - Mo 27.01.14 13:27
Habe mir gerade auch dies Speccy gezogen.
De RAM hat bei mir 666MHz bei Dir 800.
Das Board ist ein ASRock.
Und aufgefallen ist mir die Systemtemperatur, die bei mir mit 39°C 10K höher ist.
Ich bin da nicht so bewandert, aber die Temperatur könnte schon eine Rolle spielen.
Marc. - Mo 27.01.14 15:08
Lelf hat folgendes geschrieben : |
Ich kann nur wiedergeben, was mir "Speccy" ausspuckt: |
Die CPU-Spannung variiert ja je nach Last. Was steht denn im BIOS unterm Reiter
Ai Tweaker [
http://www.manualslib.com/manual/415092/Asus-P8z77-V-Lx.html?page=69#manual]?
Wenn der Overclock-Tuner, sowie die anderen dazugehörigen Einstellungen auf "auto" stehen, wird das BIOS die CPU wohl nach besten Gewissen selbst übertakten. :nixweiss:
Jens01 hat folgendes geschrieben : |
Und aufgefallen ist mir die Systemtemperatur, die bei mir mit 39°C 10K höher ist.
Ich bin da nicht so bewandert, aber die Temperatur könnte schon eine Rolle spielen. |
Bei Halbleitern steigt sogar die Leitfähigkeit mit der Temperatur. Davon abgesehen müsstet ihr auch die Temperaturen zu den selben Zeitpunkten, also während der Berechnung vergleichen. Sein System befand sich z.B. bei den 28°C gerade am Idle (erkennbar an der niedrigen Kernspannung).
Lelf - Mo 27.01.14 17:42
Im Ai-Tweaker steht jetzt alles auf Auto und ich habe neu gemessen:
10000 Stellen 3,266 sec.
100000 Stellen 317,969 sec. Die Auslastung lag bei 12,5% und ca. alle 10 sec wechselten die Cores(0..7). Temperatur der CPU lag bei 38°C, die des Motherboards bei 26°C.
Irgendwie scheint mein Computer nach Tagesform zu arbeiten.
Gruß Lelf
Lelf - Mo 27.01.14 18:54
Inzwischen habe ich ein Tool gefunden, mit dem man die CPU-Frequenz ziemlich genau ermitteln kann: Intel Processor Identification Utility.
This Intel(R) processor supports Intel(R) Hyper-Threading Technology. See
http://www.intel.com/info/hyperthreading for more information.
Reported frequency - The speed at which the tested processor is currently operating.
Expected frequency - The highest speed at which the tested processor was manufactured to operate.
Small variations in clock frequencies are common. If there appears to be a significant variation, please contact the PC system manufacturer or microprocessor place of purchase.
Meine Werte jetzt (alle Einstellungen im Bios Ai-Tweaker auf "Auto"):
Reported 3.71 GHz
Expected 3.50 GHz
Gruß Lelf
Jens01 - Mo 27.01.14 19:18
So meine Werte :
Expected Processor Frequency: 3.50 GHz
Reported Processor Frequency: 3.69 GHz
Expected System Bus Frequency: 100 MHz
Reported System Bus Frequency: 100 MHz
Hast Du noch diese Frequenz deines Busses?
Ralf Jansen - Mo 27.01.14 19:19
Hört sich nach normalen Werten für einen Turbo Boost Prozessor an. 3.5 Ghz ist die Basisfrequenz. Wenn die CPU sich ansonsten langweilt (einzelne Kerne befinden sich im Schalfmodus) darf die CPU einzelne Kerne höher Takten solange die sich dann noch im festgelegten TDP bewegen. Bei den i7 Versionen mit einer 7 im Namen (x7xx) biz zu 3.9Ghz. Üblicherweise zerlegt man sich in Windows dieses Verhalten da auch ein Single Thread Process zwischen den Kernen beliebig verschoben wird und somit keiner oder nicht genug Kerne schlafen um ein höhere Taktfrequenz für ~seinen~ Kern zu bekommen.
Versucht mal im Taskmanager die Anwendung genau einem Kern zuzuordnen und denn Rechner ansonsten mit nichts zu belasten dann sollten da vergleichbare Werte mit der maximalen Taktrate rauskommen. Zumindest für alle Turbo Boost oder Turbo Core Prozessoren.
Hochhaus - Mo 27.01.14 19:56
Lelf hat folgendes geschrieben : |
und ich habe neu gemessen:
10000 Stellen 3,266 sec.
100000 Stellen 317,969 sec.
Gruß Lelf |
Der Zeitbedarf ist bei meinem Quadratwurzelprogramm quadratisch:
Für 10 x mehr Stellen rechnet das Proggi 100 x länger.
Hochhaus
Aber Vorsicht: Bei sehr wenigen Stellen stimmt das nicht.
Entwickler-Ecke.de based on phpBB
Copyright 2002 - 2011 by Tino Teuber, Copyright 2011 - 2024 by Christian Stelzmann Alle Rechte vorbehalten.
Alle Beiträge stammen von dritten Personen und dürfen geltendes Recht nicht verletzen.
Entwickler-Ecke und die zugehörigen Webseiten distanzieren sich ausdrücklich von Fremdinhalten jeglicher Art!