Prog zum Benchen von CP

fright

Commodore Special
Mitglied seit
19.04.2003
Beiträge
442
Renomée
0
Standort
Würzburg
Hi, hab heute ein kleines Prog geschrieben mit dem man die sec/timesteps messen kann.

CPbench v3.0 Download



und hier noch ein Bild:


prognew.jpg




viel Spaß 8)
 
Zuletzt bearbeitet:
Hi fright !

Wollte mal testen, aber Proggi läuft bei mir nicht! :(

Bekomme "run time Error 52" zurück "Bad File Name or Number"

Liegts daran das ich CP nicht unter C: installiert hab und das mit der Pfadangabe nicht hinhaut ??

lg
Defenseless (Der wo zu faul ist um mit der Hand zu stoppen ;) )
 
Schau mal ob du folgende Datei hast:

Climate Prediction\dataout\yabsd.out
Durch diese Datei kann ich feststellen wieviele Timesteps durchlaufen.


Des ist egal wo du CP installiert hast. Ich habs bei mir auf d: drauf.
Hast du CP als Dienst laufen? Und welche Version hast du?




hab auch gleich mal ne neue Version dabei.
Schaut mal oben nach
 
bei mir funzt es super, hast echt ganze arbeit geleistet :-*

hier nen paar verbesserungsvorschläge:
1. vielleicht wäre es ja möglich, das dein Prog ne vorgeschriebene Zeit durchläuft, und man ihn net selbst stoppen kann, dadurch kommen manchmal "tolle" Zeiten bei raus
-> bessere Vergleichbarkeit, zu vorherigen Messungen.

2.das Optimum wäre natürlich, wenn dein Proggie erst zu messen starten würde, wenn der Radiation Timestep (7er) durchgelaufen ist, auch wenn ich glaube das das schwer zu realiseren ist
-> ultimative Vergleichbarkeit ;D

MfG
Erdnuss (der wo schon auf Platz 31 ist *buck*)
 
Nettes Programm.

Getestet - funktioniert.

Gemessen - 2,38 ;D - und das ohne Optimierungen
 
@ erdnuss

Danke für die Vorschläge. Punkt eins werde ich gleich umsetzten und den Link oben aktualisieren. ;)




Wenn ihr das Programm testet, schreibt bitte obs funktioniert bzw. nicht funkt und was für ein Fehler aufgetreten ist.
 
Hi,
dein Prog funzt super. Der Vorschlag mit der Zeit wäre echt super. Zur Umsetzung der Laufzeit könnte man ja auch eine Laufzeitauswahl machen, um es auch mal laufen zu lassen wenn andere Programme gestartet und damit gearbeitet wird.

thx für deine Arbeit.

Gruss
JenSeiLee
 
Original geschrieben von JenSeiLee
Hi,
dein Prog funzt super. Der Vorschlag mit der Zeit wäre echt super. Zur Umsetzung der Laufzeit könnte man ja auch eine Laufzeitauswahl machen, um es auch mal laufen zu lassen wenn andere Programme gestartet und damit gearbeitet wird.

thx für deine Arbeit.

Gruss
JenSeiLee



Danke

Einstellbare Zeit hab ich eben eingebaut.
Meinst du das das Programm die CPU Zeit von CP mist?

Das bekomm ich nämlich nicht hin. :-[
 
Coole Idee und funktioniert auch. Zumindest der erste Durchlauf. Der erste waren die default 5min (2,414s/TS). Danach wollte ich 1min benchen, aber das Prog hat auch nach 2min nicht aufgehört und einen Wert angezeigt.
Danach Neustart und eine Minute gebencht (2,22s/TS). Dann mit 2min. Irgendwann stand was von 120sec oben links und einige Zeit später 166sec. Ist das richtig, daß das immer weiter zählt? Bug, oder Feature? ;-)

Auch noch problemematisch:
- Angabe des DIRs. In der Registry steht an mehreren Stellen der Pfad. Such Dir eine aus ;-)
- Die App hat weder einen Eintrag im Taskbar noch ist sie beim Taskwechsel mittels ALT+TAB sichtbar.

Vorschlag: wie wäre es, mit einer Dauerüberwachung? Sprich eine Anzeige der Werte für die letzte(n) 1,5,10,30,60,1440 Minute(n)?
 
Original geschrieben von fright
Schau mal ob du folgende Datei hast:

Climate Prediction\dataout\yabsd.out
Durch diese Datei kann ich feststellen wieviele Timesteps durchlaufen.


Des ist egal wo du CP installiert hast. Ich habs bei mir auf d: drauf.
Hast du CP als Dienst laufen? Und welche Version hast du?


Bin im Moment nicht auf meinem Rechner, aber werd die Datei checken !
Versionsnummer muß ich auch mal gucken.

Als Dienst hab ichs jedenfalls nicht laufen.

Werde mir am Abend mal deine neue Version ziehen, und dann nochmal berichten.

Danke jedenfalls für deine Mühen. Und bei den anderen scheints ja problemlos zu laufen.

lG
Defenseless
 
Bei mir funzt das Prog auch nicht!
Als Fehlermeldung kommt:

Run-time error '13':
Type mismatch
 
Original geschrieben von fright
Danke

Meinst du das das Programm die CPU Zeit von CP mist?

Das bekomm ich nämlich nicht hin. :-[

Hi
Ich mein eigentlich normale Programme mit denen man eben so arbeitet, nur um eben mal sehen zu können wie sich die Zeiten bei bestimmten Anwendungen so verhalten.

Gruss
JenSeiLee
 
Original geschrieben von Northman
Coole Idee und funktioniert auch. Zumindest der erste Durchlauf. Der erste waren die default 5min (2,414s/TS). Danach wollte ich 1min benchen, aber das Prog hat auch nach 2min nicht aufgehört und einen Wert angezeigt.
Danach Neustart und eine Minute gebencht (2,22s/TS). Dann mit 2min. Irgendwann stand was von 120sec oben links und einige Zeit später 166sec. Ist das richtig, daß das immer weiter zählt? Bug, oder Feature? ;-)

Auch noch problemematisch:
- Angabe des DIRs. In der Registry steht an mehreren Stellen der Pfad. Such Dir eine aus ;-)
- Die App hat weder einen Eintrag im Taskbar noch ist sie beim Taskwechsel mittels ALT+TAB sichtbar.

Vorschlag: wie wäre es, mit einer Dauerüberwachung? Sprich eine Anzeige der Werte für die letzte(n) 1,5,10,30,60,1440 Minute(n)?



Des hab ich auch heute bemerkt das er dann weiter zählt. Hab ich eben behoben und den Link oben aktuallisiert.
Hab auch noch einige andere Bugs behoben.

Das Programm ist jetzt auch in der Taskbar sichtbar.
und das mit der Registry schau ich jetzt mal nach :-*
 
läuft bei mir auch wunderbar.
bei 5min kamen 3 timesteps/s raus, bei 2min 2,8 und bei 1min 2,5.

was ich nicht schlecht fände, wenn das als SysTray erscheint und dauernd gebencht wird. CPU Auslastung liegt ja ohnehin bei 0%, von daher kein Problem.

Im SysTray sollte das natürlich als Zahl erscheinen, so wie bei MBM.

gruß
SKFink, der gerade von Trodat überholt wurde 8-(


EDIT: ach ja, eine zweite Nachkommastelle wäre auch nicht schlecht. (Um Feintuning betreiben zu können ;) )
 
Zuletzt bearbeitet:
Auf meinem Zweitrechner kommt jetzt immer "Das war zu kurz" , obwohl es 1h lief.

EDIT: Ups. Hatte auf dem Zweitrechner den Clienten auf pause. *buck*
 
Zuletzt bearbeitet:
Schön wenn jemand so schnell auf Feedback reagiert und neue Versionen bereitstellt :-)

Die CPU Zeit soll irgendwo in HKEY_PERFORMANCE_DATA stehen. Allerdings habe ich noch keine Anleitung zum Auslesen dieses virtuellen Schlüssels gefunden (Werte werden erst beim Zugriff auf den Schlüssel erzeugt und stehen nicht wirklich in der Registry).
Das Platform SDK von MS hat ein paar Hinweise dazu, konnte ich aber wegen Zeitmangel noch nicht genau nachlesen (das gibt es bei MS zum kostenlosen Download. Sind allerdings 342MB...)

Es gibt aber noch eine andere Möglichkeit, die ich auch schon eingesetzt habe. Kennst Du die PSTools von www.sysinternals.com? Dazu gehört ein Tool namens PSLIST, welches alle Prozzesse auflistet. Beispiel (nur ein Auszug):

PsList v1.2 - Process Information Lister
Copyright (C) 1999-2002 Mark Russinovich
Sysinternals - www.sysinternals.com

Process information for NORTHSRV:

Name.........Pid.Pri.Thd..Hnd....Mem.....User Time...Kernel Time...Elapsed Time
Idle...........0...0...1....0.....16...0:00:00.000...0:01:19.003...12:47:14.412
seti........1780...4...1...17..15892...0:34:44.787...0:00:08.121....0:36:36.017


Die User Time ist der gleiche Wert, den man im Taskmanager angezeigt bekommt. Elapsed Time ist die Zeit, die der Prozess schon läuft. Sprich mein Rechner hatte zu dem Zeitpunkt eine Uptime von 12:47:14.412 (hh:mm:ss.ms, Elapsed Time vom "Idle-Prozess")
Wenn man die Ausgabe in eine Datei umleitet kann man sich die Werte rausholen.
Das ist zwar wenig professionell, aber als Übergangslösung machbar ;-)


Wie mißt Du die Zeit? Startest Du einfach einen Timer mit x*60000ms?
OK. Diese Frage hat sich soeben mit einem Blick auf CPBench erledigt. Beim zweitem Druck auf Start stand dort statt 300sec nur noch 263sec. Oder beziehst Du das FileDatum mit in die Berechnung ein?


PS: Normalerweise sind natürlich keine Punkte in der Ausgabe, aber diese dreckelige Boardsoftware meint mehrfache Leerzeichen entfernen zu dürfen... Kann man der das irgendwie abgewöhnen? Solche Formatierungen sind sonst nicht möglich.
 
Ok hab jetzt einiges geändert:

- es ist möglich während des benches zu Stoppen und sich das Ergebnis sofort anzeigen zu lassen
- das Fenster fürs Installationsverzeichnis kommt jetzt nurnoch beim ersten Start. Eingabe wird in der Datei "c:\CPbench" gespeichert
- Anzeige der Sekunden habe ich enfernt --> überflüssig





@skfink
das Ergebniss wir mit drei Stellen nach dem Komma angegeben. Oder meinst du die sec?
Die gibt jetzt nicht mehr ;)
Das mit dem Systray ist ne gute Idee aber ich hab keine Ahnung wie man das macht :-[


@Northman
Dauerüberwachung hab ich ausprobiert. Es wird aber bei jeder Ausgabe für ca 1s 10% der Rechenleistung benötigt. Deswegen hab ich es wieder rausgenommen.
Das Datum der Datei wird nicht mit einbezogen. PSTools kenn ich nicht. Hab auch nicht vor die CP CPU Zeit mit ein zu beziehen.


@ICEMAN
hast du die Datei "Climate Prediction\dataout\yabsd.out" und läuft CP als Dienst?
Ich kann das Prog leider nur an dem Rechner testen an dem ich es auch programmiert habe.
Deswegen kanns sein das es bei einigen nicht läuft wegen irgendwelchen falschen Variablen *noahnung*
 
Hi

Original geschrieben von skfink
was ich nicht schlecht fände, wenn das als SysTray erscheint und dauernd gebencht wird. CPU Auslastung liegt ja ohnehin bei 0%, von daher kein Problem.

Im SysTray sollte das natürlich als Zahl erscheinen, so wie bei MBM.


Das wird wohl auch nicht funktionieren, weil CP zwischen den einzelnen Phasen ne Pause macht (5-10min). Ich hab CPbench mal bei 99,...% der Phase 2 gestartet und es wurde dann im Phasenwechsel mit einem "runtime error" abgeschossen.

Gruss
JenSeiLee
 
Original geschrieben von fright
@ICEMAN
hast du die Datei "Climate Prediction\dataout\yabsd.out" und läuft CP als Dienst?
Ich kann das Prog leider nur an dem Rechner testen an dem ich es auch programmiert habe.
Deswegen kanns sein das es bei einigen nicht läuft wegen irgendwelchen falschen Variablen *noahnung*
Die Datei habe ich! Und als Dienst habe ich es nicht gestartet, sondern ganz normal. *noahnung*
 
Original geschrieben von ICEMAN
Die Datei habe ich! Und als Dienst habe ich es nicht gestartet, sondern ganz normal. *noahnung*


ich habs grad ausprobiert. Des ist egal ob man CP als Dienst startet oder manuel bzw. Autostart.


Welche Version hast du von CP? Ich hab die 2.2.23
 
Original geschrieben von JenSeiLee
Hi



Das wird wohl auch nicht funktionieren, weil CP zwischen den einzelnen Phasen ne Pause macht (5-10min). Ich hab CPbench mal bei 99,...% der Phase 2 gestartet und es wurde dann im Phasenwechsel mit einem "runtime error" abgeschossen.

Gruss
JenSeiLee


Also der runtime error tritt nur beim Phasenwechsel auf.
muss ich auch mal ausprobieren wenn ich einen Phasenwechsel habe. Fehlen noch ca 20%


Läufts jetzt bei jedem?
 
Zurück
Oben Unten