Willkommen Gast. Bitte einloggen oder registrieren. Haben Sie Ihre Aktivierungs E-Mail übersehen?
26.03.2019, 01:58:50

.
Einloggen mit Benutzername, Passwort und Sitzungslänge

Mitglieder
Statistiken
  • Beiträge insgesamt: 581252
  • Themen insgesamt: 47067
  • Heute online: 430
  • Am meisten online: 992
  • (17.11.2018, 20:17:55)
Benutzer Online
Mitglieder: 2
Gäste: 336
Gesamt: 338

Autor Thema:  wie lässt sich programm start zeiten "messen"?  (Gelesen 641 mal)

0 Mitglieder und 1 Gast betrachten dieses Thema.

wie lässt sich programm start zeiten "messen"?
« am: 17.12.2018, 21:02:26 »
grüß euch

wie lässt sich programm start zeiten "messen"?
damit meine ich vom klick auf den knopf bis man mit der anwendung arbeiten kann?
ich hab da so gar keine idee :(
weiß von euch einer was?

Re: wie lässt sich programm start zeiten "messen"?
« Antwort #1 am: 17.12.2018, 21:38:32 »
Stoppuhr?

secureIT

  • Gast
Re: wie lässt sich programm start zeiten "messen"?
« Antwort #2 am: 17.12.2018, 22:41:45 »
ohne Stoppuhr im Terminal etwa so  ;D :

#!/bin/bash
#Messung der Startzeit einer Anwendung
start=$(date +%s)
# In der nächsten Zeile die zu startende Anwendung eintragen
firefox

end=$(date +%s)
runtime=$(python -c "print '%u:%02u' % ((${end} - ${start})/60, (${end} - ${start})%60)")
echo "Runtime was $runtime"

edit: Nachdem die Anwendung gestartet ist, diese wieder schliessen und im Terminal "return" geben........
« Letzte Änderung: 17.12.2018, 22:55:09 von secureIT »

Re: wie lässt sich programm start zeiten "messen"?
« Antwort #3 am: 18.12.2018, 10:09:33 »
diese wieder schliessen und im Terminal "return" geben........
das ist das problem, mal bin ich schneller, mal das gegenteil und jedes mal mit einem anderen ergebnis:(
danke dir :)
aber so gehts leider nicht :(

vielleicht gings, wenn man mit einem timer das programm terminieren könnte, dann bräucht man blos die zeit vom timer abziehen und dann bliebe die startzeit übrig.

Re: wie lässt sich programm start zeiten "messen"?
« Antwort #4 am: 18.12.2018, 10:34:50 »
systemd-analyze blameund systemd-analyze

Re: wie lässt sich programm start zeiten "messen"?
« Antwort #5 am: 18.12.2018, 11:04:03 »
systemd-analyze blameund systemd-analyze
lieb gemeint, aber leider nicht die antwort auf meine frage ;)
 ich will wissen, wie lange zb der ff braucht bis man ihn benutzen kann, systemd-analyze kann das leider nicht.

Re: wie lässt sich programm start zeiten "messen"?
« Antwort #6 am: 18.12.2018, 11:36:17 »
~ $ /usr/bin/time -v soffice --writer
Command being timed: "soffice --writer"
User time (seconds): 1.82
System time (seconds): 0.11
Percent of CPU this job got: 18%
Elapsed (wall clock) time (h:mm:ss or m:ss): 0:10.69
...
User time und System time zusammen dürfte die Startzeit des Programms ergeben.

secureIT

  • Gast
Re: wie lässt sich programm start zeiten "messen"?
« Antwort #7 am: 18.12.2018, 19:31:27 »
Ist ein sehr guter Ansatz bringt aber 3x hintereinander 3 verschiedene Ergebnisse für User time ........
@ brikler brauchst Du es wirklich sooooo genau ?
4,25 sec.
4,08 sec.
3,99 sec.
mit ca. 4 Sekunden kann man doch leben ?

Re: wie lässt sich programm start zeiten "messen"?
« Antwort #8 am: 18.12.2018, 19:35:54 »
@ brikler brauchst Du es wirklich sooooo genau ?
leider schon 8)
ich experimentiere zur zeit mit upx komprimierten binaries und da möchte ich den unterschied schon erkennen können

secureIT

  • Gast
Re: wie lässt sich programm start zeiten "messen"?
« Antwort #9 am: 18.12.2018, 22:50:02 »
Zitat
wie lässt sich programm start zeiten "messen"?
damit meine ich vom klick auf den knopf bis man mit der anwendung arbeiten kann?

Du brauchst also die Zeitmessung für Experimente mit upx.
Dann wäre es doch eher angebracht, statt der Startzeit der Anwendung, die Zeit zu messen, die upx braucht, um das binary zu dekomprimieren .... also zum Start zur Verfügung zu stellen ?
Wäre das nicht im Grunde auch ein Ansatz, den man für Deine Vergleiche nutzen könnte ?

Re: wie lässt sich programm start zeiten "messen"?
« Antwort #10 am: 19.12.2018, 06:55:08 »
bringt aber 3x hintereinander 3 verschiedene Ergebnisse für User time
Grob umrissen wird ja die Zeit angezeigt, in welcher die CPU zunächst mit dem Programm beschäftigt ist, was dann der Zeit entsprechen dürfte, die das Programm zum Starten benötigt. Dass das jetzt nicht immer exakt die gleiche Zeit sein wird, war eigentlich zu vermuten.
Wobei die Werte bei mir ein wenig dichter zusammenliegen als bei dir (Beispiel oben):
User time (seconds): 1.81
System time (seconds): 0.15
...
User time (seconds): 1.84
System time (seconds): 0.14
...
User time (seconds): 1.84
System time (seconds): 0.11

Re: wie lässt sich programm start zeiten "messen"?
« Antwort #11 am: 19.12.2018, 08:36:40 »
@ brikler brauchst Du es wirklich sooooo genau ?
leider schon 8)
...

Wie wäre es mittels

top
die benötigte CPU Zeit des Programmes nach dessen Start zu erfassen?

Es lässt sich sehr fein konfigurieren, so dass man sich die kumulierte konsumierte CPU Zeit anzeigen lassen kann. Diese dürfte mit dem Start des Programmes am höchsten sein und sollte danach steil abfallen - was man als "bereit zur Eingabe" werten kann. Man muss natürlich berücksichtigen, dass ein Programm (z.B. Spotify) mit mehreren Instanzen startet (PIDs), so dass diese wiederum mit in Betracht gezogen werden müssen/können.

Beispiel Simple Scan:

henrik@henrik-ESPRIMO-P720 ~ $ top | grep simple-scan
 5489 henrik    20   0  732444  42264  33676 S   6,0  0,5   0:00.18 simple-scan
 5489 henrik    20   0  946728  50272  40104 S   3,3  0,6   0:00.28 simple-scan
 5489 henrik    20   0  946728  50416  40220 S   0,3  0,6   0:00.29 simple-scan
 5489 henrik    20   0  946728  50416  40220 S   0,3  0,6   0:00.30 simple-scan


In der vorletzten Spalte sieht man die kumulierte CPU Zeit, die nach dem Start des Programms schnell steigt, danach tut sich aber fast nichts mehr.

Auszug aus der man page von top:

   29. TIME  --  CPU Time
           Total CPU time the task has used since it started.  When Cumu‐
           lative  mode  is  On, each process is listed with the cpu time
           that it and its dead children have used.  You  toggle  Cumula‐
           tive mode with `S', which is both a command-line option and an
           interactive command.  See  the  `S'  interactive  command  for
           additional information regarding this mode.

       30. TIME+  --  CPU Time, hundredths
           The same as TIME, but reflecting more granularity through hun‐
           dredths of a second.

Re: wie lässt sich programm start zeiten "messen"?
« Antwort #12 am: 19.12.2018, 11:10:29 »
@isolator und @tml
die reine cpu zeit reicht nicht, weil auch einiges an I/O wait gibt und das gehört auch dazu

Zitat
wie lässt sich programm start zeiten "messen"?
damit meine ich vom klick auf den knopf bis man mit der anwendung arbeiten kann?

Du brauchst also die Zeitmessung für Experimente mit upx.
Dann wäre es doch eher angebracht, statt der Startzeit der Anwendung, die Zeit zu messen, die upx braucht, um das binary zu dekomprimieren .... also zum Start zur Verfügung zu stellen ?
Wäre das nicht im Grunde auch ein Ansatz, den man für Deine Vergleiche nutzen könnte ?
jein, ich möchte auch die start zeit vom unkomprimierten binary, damit ich sagen kann: mit upx komprimiert startet es um X% schneller/langsamer.

secureIT

  • Gast
Re: wie lässt sich programm start zeiten "messen"?
« Antwort #13 am: 19.12.2018, 19:34:58 »
Evtl. auch eine Möglichkeit?

https://github.com/paypal/gnomon

Re: wie lässt sich programm start zeiten "messen"?
« Antwort #14 am: 20.12.2018, 19:28:40 »
Evtl. auch eine Möglichkeit?

https://github.com/paypal/gnomon
das schaut gut aus, gibts da ein paket?