A saída que você mostra é um pouco estranha, já que o tempo real normalmente seria maior do que os outros dois.
-
Real
tempo é a hora do relógio de parede. (o que poderíamos medir com um cronômetro) -
User
time é a quantidade de tempo gasto no modo de usuário dentro do processo -
Sys
é o tempo gasto da CPU no kernel dentro do processo.
Então eu suponho que se o trabalho fosse feito por vários processadores simultaneamente, o tempo de CPU seria maior que o tempo decorrido do relógio de parede.
Este era um tipo de aplicativo simultâneo / multithread / paralelo?
Apenas como exemplo, é isso que recebo no meu sistema Linux quando emito o comando time find .
. Como esperado, o tempo real
decorrido é muito maior do que os outros neste processo de usuário único / núcleo único.
real 0m5.231s
user 0m0.072s
sys 0m0.088s
A regra geral é:
- real < user: O processo é vinculado à CPU e aproveita a execução paralela em vários núcleos / CPUs.
- real ≈ usuário: o processo é vinculado à CPU e não aproveita as vantagens da execução paralela.
- real > usuário: o processo é vinculado a E / S. Execução em múltiplos núcleos seria de pouca ou nenhuma vantagem.