-
Notifications
You must be signed in to change notification settings - Fork 16
/
time_times.txt
122 lines (106 loc) · 6.88 KB
/
time_times.txt
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
TIME_TIMES
time COMMANDES #Imprime par défaut des informations relatives au temps
#d'exécution de COMMANDES, sur stderr. Par défaut,
#imprime :
# - real [M]MmS[S].NNNs
# user [M]MmS[S].NNNs
# sys [M]MmS[S].NNNs
#[M]Mm etc. indique le format des secondes, etc. Le m
#est littéral.
#Dans l'ordre :
# - real est le temps d'exécution de COMMANDES
# - user est le temps passé par COMMANDES à utiliser le
# CPU en user mode
# - sys est le temps passé par COMMANDES à utiliser le
# CPU en system mode
# - l'opération real - (user + sys) donne le temps
# passé par COMMANDES à utiliser autre chose que le
# CPU (exemple : GPU)
# - la division de real et ce dernier chiffre donne le
# pourcentage d'utilisation du CPU
#COMMANDES peut être tout subshell : un bloc de
#commandes, ou une structure, une commande, etc.
TIMEFORMAT ==> #Si cette variable est initialisée, imprime son contenu
#plutôt que le comportement par défaut. TIMEFORMAT est
#une STRING qui ne peut pas contenir de séquences
#d'échappement backslash autres qu'avec $' ', et qui
#peut utiliser ces séquences :
# - %% : % littéral
# - %R : temps 'real'
# - %U : temps 'user'
# - %S : temps 'sys'
# - %P : pourcentage d'uilisation du CPU
#Ces temps sont affichés au format [M]M.SSS
#De plus, après le % peut s'ajouter (dans l'ordre) :
# - un chiffre entre 0 et 3 pour indiquer le nombre
# de décimales après la virgule (par défaut 3, sauf
# 2 pour %P)
# - un "l" pour mettre au même format que par défaut
-p #Imprime plutôt :
# - real [M]M.SS
# user [M]M.SS
# sys [M]M.SS
BUILTINS VS COMMANDE #Il y a deux versions : un builtin et une commande
EXTERNE #externe. Ci-dessus était le builtin (la préférer).
time #Voici la commande externe. Les différences sont :
# - COMMANDE ne peut pas être :
# - un builtin (sans commande externe correspondante)
# - un keyword (structure, etc.)
# - légèrement moins précis
# - plus d'options
# - envoyer un signal stoppant arrête le builtin time
# mais pas sa COMMANDE. Pour la commande externe, non
# Cependant le temps du stop continue à être
# comptabilisé.
#Si COMMANDE a un exit code != 0,
#Implique par défaut -f avec comme STRING :
#%Uuser %Ssystem %Eelapsed %PCPU (%Xtext+%Ddata %Mmax)k
#%Iinputs+%Ooutputs (%Fmajor+%Rminor)pagefaults %Wswaps
-o FILE
--output=FILE #Equivaut à time COMMANDE > FILE
-a
--append #Avec -o, équivaut à time COMMANDE >> FILE
--quiet
-p #Equivaut à -f "real %e\nuser %U\nsys %S" (même format
--portability #que l'option -p du builtin)
-f STRING #Imprime STRING, suivi d'une newline. STRING peut
#contenir des séquences d'échappement backslash
#(uniquement \t et \n) et des percent echappement
#sequences, précédés d'un % (une valeur de 0 peut
#indiquer que le système ne permet de récupérer cette
#valeur, ceux précédés par ne marchent pas sous
#Ubuntu) :
%E #real elapsed time
%e #real elapsed time (autre format)
%U #User elapsed time
%S #System elapsed time
%P #Pourcentage CPU
%C #COMMANDES
%x #Exit code
%F #Nombre de major page faults
%R #Nombre de minor page faults
%Z #Taille des pages du système, en octets
%W Nombre de fois où la mémoire swap a dûe être utilisée.
%I #Nombre de file descriptors en input (pas sûr)
%O #Nombre de file descriptors en output (pas sûr)
%M #Taille maximum du programme en mémoire, en Ko
%t Taille moyenne du programme en mémoire, en Ko
%D Taille moyenne de l'espace alloué aux unshared data,
en Ko (data)
%p Taille moyenne de l'unshared stack, en Ko
%X Taille moyenne du "text" (code) partagé (libraries
dynamiques), en Ko
%K Mémoire utilisée (stack + data + text), en Ko
%k Nombre de signaux envoyés au process.
%r #Nombre de socket messages envoyés.
%s #Nombre de socket message reçus.
%c #Nombre de context switches (multitasking)
#involontaires :
%w #Nombre de context switches volontaires, le processus
#donnant lui-même la main à un autre.
%% #% littéral
times #Imprime l'user puis system elapsed time du shell
#courant, puis celui de tous ses enfants (en cours ou
#déjà terminés)