Hi,
ich habe ein Perl Programm geschrieben, bzw. bin noch drann, bei dem ich jetzt so langsam dazu komme, die Dinge die jetzt so laufen wie ich es gerne haette zu optimieren. Da mein Script u.U. auch mit grossen Datenmengen (ich hab's mal mit 2 Eingabedateien a 170MB getestet) zurecht kommen muss, wuerde ich gerne mal mitloggen, wie der Speicherverbrauch meines Scriptes ist. Erstmal wuerde mir ausreichen wenn ich den "Spitzenverbrauch" angezeigt bekommen wuerde. Ich gehe halt davon aus, das eine neue Funktion die ich die Tage eingebaut habe sich sehr nachteilig auf den Speicherverbrauch auswirkt. Wenn natuerlich jemand eine Idee hat, wie ich den Verbrauch auf einelne Funktionen/Befehle meines Perl Scriptes runterbrechen koennte, um so schoener.
Danke
Speicherauslastung eines Programms loggen
Speicherauslastung eines Programms loggen
Roland
"Aber wenn du schon so unwissend bist, davon noch nicht gehört zu haben,
so will ich es doch als gut ansehen, daß du lieber einmal töricht fragst,
als weiterhin nichts von etwas zu wissen, das man doch wissen sollte."
aus "Die Edda des Snorri Sturluson", "Gylfis Täuschung"
"Aber wenn du schon so unwissend bist, davon noch nicht gehört zu haben,
so will ich es doch als gut ansehen, daß du lieber einmal töricht fragst,
als weiterhin nichts von etwas zu wissen, das man doch wissen sollte."
aus "Die Edda des Snorri Sturluson", "Gylfis Täuschung"
- Six
- Beiträge: 8069
- Registriert: 21.12.2001 13:39:28
- Lizenz eigener Beiträge: MIT Lizenz
- Wohnort: Siegburg
Ich habe außer einem 2-stündigen Theorieseminar exakt keine Erfahrung mit Perl, aber nach einen kurzen Blick in die Unterlagen kann ich sagen, daß es Devel::DProf gibt, was die üblichen Profiling-Aufgaben erfüllt, d. h. Laufzeit- und Speicherkomplexität verfolgt. Da ich gute Erfahrungen mit anderen Profilern (hmh, eigentlich nur Haskells...) gemacht habe, könnte das vielleicht helfen
Be seeing you!
Hi six,
die Laufzeit monitore ich bereits so, da wird schoen nach Funktion aufgeschluesselt wie oft sie aufgreufen wurde, und wieviel Zeit dafuer draufgegangen ist. Was Laufzeit angeht, habe ich mit dem Wissen wo die Zeit verballert wird, schon betraechtlichen steigerungen erreicht. Aber ich sehe da nix bezueglich der Speicherauslastung:
die Laufzeit monitore ich bereits so, da wird schoen nach Funktion aufgeschluesselt wie oft sie aufgreufen wurde, und wieviel Zeit dafuer draufgegangen ist. Was Laufzeit angeht, habe ich mit dem Wissen wo die Zeit verballert wird, schon betraechtlichen steigerungen erreicht. Aber ich sehe da nix bezueglich der Speicherauslastung:
Code: Alles auswählen
Total Elapsed Time = 0.117460 Seconds
User+System Time = 0.117460 Seconds
Exclusive Times
%Time ExclSec CumulS #Calls sec/call Csec/c Name
40.0 0.047 0.047 6 0.0078 0.0078 main::BEGIN
13.6 0.016 0.016 2 0.0080 0.0080 main::trim_delete_space
12.7 0.015 0.015 2 0.0075 0.0075 main::read_csv
10.2 0.012 0.010 1000 0.0000 0.0000 main::cmp_data
0.00 0.000 0.000 2 0.0000 0.0000 Exporter::Heavy::heavy_export
0.00 - -0.000 1 - - Exporter::Heavy::_rebuild_cache
0.00 - -0.000 1 - - Config::TIEHASH
0.00 - -0.000 1 - - Config::import
0.00 - -0.000 1 - - warnings::BEGIN
0.00 - -0.000 1 - - warnings::import
0.00 - -0.000 1 - - bytes::import
0.00 - -0.000 1 - - Data::Dumper::bootstrap
0.00 - -0.000 1 - - Getopt::Std::getopts
0.00 - -0.000 2 - - DynaLoader::dl_undef_symbols
0.00 - -0.000 2 - - DynaLoader::dl_install_xsub
Roland
"Aber wenn du schon so unwissend bist, davon noch nicht gehört zu haben,
so will ich es doch als gut ansehen, daß du lieber einmal töricht fragst,
als weiterhin nichts von etwas zu wissen, das man doch wissen sollte."
aus "Die Edda des Snorri Sturluson", "Gylfis Täuschung"
"Aber wenn du schon so unwissend bist, davon noch nicht gehört zu haben,
so will ich es doch als gut ansehen, daß du lieber einmal töricht fragst,
als weiterhin nichts von etwas zu wissen, das man doch wissen sollte."
aus "Die Edda des Snorri Sturluson", "Gylfis Täuschung"