2010-06-11 19 views

Respuesta

18

Usted puede utilizar la utilidad de time:

$ time gcc -c hello.c 

real 0m0.224s 
user 0m0.013s 
sys  0m0.010s 

Aquí hay una link to the man page.

+0

¿La diferencia en el tiempo indica el estado de espera del proceso? real = usuario + sys + tiempo (proceso esperando CPU). tratando de entender si hay otro factor para ello? –

+2

sys time es la cantidad de tiempo que se gasta en llamadas al sistema. Desea utilizar el tiempo "real" si desea saber cuánto tiempo tomó todo el proceso. – jer

53

Para obtener un desglose más amplio de compilación en tiempo de lo que puede proporcionar el tiempo puede utilizar -ftime-report:

g++ -s -O3 -ftime-report hello.c -o hello.exe 

Execution times (seconds) 
callgraph construction: 0.01 (1%) usr  224 kB (1%) ggc 
callgraph optimization: 0.01 (1%) usr  147 kB (0%) ggc 
cfg cleanup   : 0.01 (1%) usr  8 kB (0%) ggc 
df live regs   : 0.02 (2%) usr  0 kB (0%) ggc 
df live&initialized regs: 0.01 (1%) usr  0 kB (0%) ggc 
alias analysis  : 0.01 (1%) usr  67 kB (0%) ggc 
preprocessing   : 0.08 (10%) usr 2869 kB (8%) ggc 
parser    : 0.31 (40%) usr 24239 kB (66%) ggc 
name lookup   : 0.06 (7%) usr 3086 kB (8%) ggc 
inline heuristics  : 0.01 (1%) usr  16 kB (0%) ggc 
integration   : 0.01 (1%) usr 1499 kB (4%) ggc 
tree gimplify   : 0.01 (1%) usr  422 kB (1%) ggc 
tree CFG cleanup  : 0.01 (1%) usr  12 kB (0%) ggc 
tree VRP    : 0.01 (1%) usr  146 kB (0%) ggc 
tree PTA    : 0.01 (1%) usr  66 kB (0%) ggc 
tree SSA rewrite  : 0.01 (1%) usr  159 kB (0%) ggc 
tree SSA incremental : 0.01 (1%) usr  35 kB (0%) ggc 
tree operand scan  : 0.01 (1%) usr  628 kB (2%) ggc 
tree PRE    : 0.02 (3%) usr  101 kB (0%) ggc 
tree FRE    : 0.01 (1%) usr  25 kB (0%) ggc 
dominance computation : 0.01 (1%) usr  0 kB (0%) ggc 
expand    : 0.03 (4%) usr  528 kB (1%) ggc 
CSE     : 0.01 (1%) usr  8 kB (0%) ggc 
CSE 2     : 0.01 (1%) usr  6 kB (0%) ggc 
branch prediction  : 0.01 (1%) usr  67 kB (0%) ggc 
combiner    : 0.01 (1%) usr  48 kB (0%) ggc 
integrated RA   : 0.02 (2%) usr  53 kB (0%) ggc 
reload    : 0.01 (2%) usr  114 kB (0%) ggc 
reload CSE regs  : 0.01 (1%) usr  95 kB (0%) ggc 
final     : 0.01 (1%) usr  3 kB (0%) ggc 
TOTAL     : 0.79    36953 kB 

Esto funciona en cualquier plataforma, ya que está utilizando un interruptor apoyado por el propio lugar del compilador que depender de otro programa de tiempo.

Cuestiones relacionadas