PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : CPU- und Memory-Verbrauch eines Programms



samsara
24-08-2003, 20:17
Hi All!

Wie kann ich den Rechenzeit- und Speicherbedarf eines Programms herausfinden (z.B. Perl-Skript)?

Danke,

Samsara

bischi
24-08-2003, 20:21
Under Windows:

CRTL + ALT + DEL , Links, Links, ENTER

MfG Bischi

anda_skoa
24-08-2003, 20:34
Unter Unix console mit top, unter KDE mit KSysGuard (STRG+ESC)

Ciao,
_

peschmae
25-08-2003, 13:01
Original geschrieben von bischi
Under Windows:

CRTL + ALT + DEL , Links, Links, ENTER


das ist [Computer sperren] du Depp :rolleyes:

MfG Peschmä

bischi
25-08-2003, 13:03
das ist [Computer sperren] du Depp

Das ist Herunterfahren (du Depp :) )

Hab ein Links vergessen ;)

MfG Bischi

peschmae
25-08-2003, 13:04
Links ist links und nicht rechts oder sonstwas

ausserdem gehts links nicht weiter da du schon links bist du depp :rolleyes:

übrigens nur W2k

MfG Peschmä

bischi
25-08-2003, 13:05
Du hast auch noch nie was von Tastatur auf den Kopf stelllen gehört ;)

MfG Bischi

peschmae
25-08-2003, 13:07
auf den Kopf gestellt stimmts immer noch nicht (wenn du 180°-Drehen meinst)

Aber eigentlich drücke ich alle Tasten aufs mal...

muss man Windows so bedienen? :D :D :D

MfG Peschmä

bischi
25-08-2003, 13:09
auf den Kopf gestellt stimmts immer noch nicht (wenn du 180°-Drehen meinst)

Aber eigentlich drücke ich alle Tasten aufs mal...

muss man Windows so bedienen?

MfG Peschmä

Kommt draufan, in welche Richtung ;)

Nein, so bedienst du Windows im Normalfall nicht (Zitat: Klicki-Bunti). Du bist inkonsequent...

MfG Bischi

peschmae
25-08-2003, 13:11
also in welche denn?

Zuerst - nein geht auch nicht! Du musst 4 mal rechts oder runter drücken oder zweimal rechts und zweimal runter oder - egal

Wie kommst du denn darauf Windows so abartig zu "bedienen"? Mach besser klicki-bunti - die Tastatur bekommt dir offenbar nicht gut

MfG Peschmä

TrollSlayer
25-08-2003, 13:59
Follgendes Skript enthällt eine Methode getMemAndTimeUsage die die CPU-Zeit(nicht die Zeit die seit dem Aufruf vergangen ist, sondern nur die Zeit in der der Prozess die CPU benutzt hat!) und den Speicherverbrauch eines Programms zurückgibt:



#!/usr/bin/perl -w

use strict;

sub getMemAndTimeUsage {
if ($_[0] eq "") { return undef; };
use Proc::ProcessTable;
my @results;
my $proc = Proc::ProcessTable->new;
my %fields = map { $_ => 1 } $proc->fields;
return undef unless exists $fields{'fname'};
foreach (@{$proc->table}) {
if($_->fname eq $_[0]) {
push (@results, $_->size) if exists $fields{'size'};
push (@results, $_->time) if exists $fields{'time'};
};
};
return @results;
}

print join("\n", &getMemAndTimeUsage("DateiNameDeinesProgramms"));
exit(0);

Weiere Infos zu ProcessTable: http://search.cpan.org/author/DURIST/Proc-ProcessTable-0.38/Process/Process.pm

samsara
26-08-2003, 01:19
Hey danke, TrollSlayer!

Werd's bald mal ausprobieren, wenn ich wieder an der Linuxkiste sitze! :)

Herzlich gegruesst,

Samsara