Reputation: 31
I want to benchmark BLAST running time on my server so I started the time
command.
The server has 16 CPUs and I was running the BLAST 16 threaded. There may have been other applications running in parallel while my analysis was taking place.
The output is following:
184255.45user 458.23system 6:37:54elapsed 773%CPU (0avgtext+0avgdata 83504272maxresident)k
294680inputs+10029344outputs (1799major+149694417minor)pagefaults 0swaps
Interpreting user time as the amount of seconds CPU spent running my application I get more than the total time. I have seen people tell that I should divide the time with %CPU, but then I get just 3 minutes, and that is unrealistic for BLAST and input of the size I put into it.
The information I need is the user time, but I am not sure how to interpret it.
Any suggestions on the interpretation of the result?
Upvotes: 2
Views: 2548
Reputation: 3900
From the manpage (and taken from here):
The default format is: %Uuser %Ssystem %Eelapsed %PCPU (%Xtext+%Ddata %Mmax)k %Iinputs+%Ooutputs (%Fmajor+%Rminor)pagefaults %Wswaps
So, 184255 seconds spent in userspace, 458 seconds in kernelspace, 6 hours, 37 minutes and 54 seconds elapsed "real" time.
So as Dietrich Epp pointed out in his comment, and looking at the elapsed time, they match, 6:37:53 is 397.8833 minutes.
Here's a nice explanation of the difference between user/system/real(elapsed)
time:
Real is wall clock time - time from start to finish of the call. This is all elapsed time including time slices used by other processes and time the process spends blocked (for example if it is waiting for I/O to complete).
User is the amount of CPU time spent in user-mode code (outside the kernel) within the process. This is only actual CPU time used in executing the process. Other processes and time the process spends blocked do not count towards this figure.
Sys is the amount of CPU time spent in the kernel within the process. This means executing CPU time spent in system calls within the kernel, as opposed to library code, which is still running in user-space. Like 'user', this is only CPU time used by the process. See below for a brief description of kernel mode (also known as 'supervisor' mode) and the system call mechanism.
Upvotes: 4