User Tools

Site Tools


top

Differences

This shows you the differences between two versions of the page.

Link to this comparison view

top [2012/04/12 13:10]
k2patel [.toprc]
top [2020/08/10 02:35]
Line 1: Line 1:
-====== TOP ====== 
-command to help understanding system performance. 
  
-==== Block on Top ==== 
- 
- 
-<code bash | Cpu(s) Row> 
-wa = waiting for IO 
-us = userspace 
-sy = system/​kernel 
-ni = nice processs 
-id = idle 
-hi = hardware interrupts 
-si = software interrupts ​ 
-</​code>​ 
- 
- 
-==== Columns ==== 
- 
-Listed below are top's available fields. They are always associated with the letter shown, \\ 
-regardless of the position you may have established for them with the '​o'​ (Order fields) interactive command. 
- 
-Any field is selectable as the sort field, and you control whether they are sorted high-to-low or low-to-high.\\ 
-For additional information on sort provisions see topic 3c. TASK Area Commands. 
- 
-<code text | Fields > 
-a: PID -- Process Id 
-    The task's unique process ID, which periodically wraps, though never restarting at zero.  
-b: PPID -- Parent Process Pid 
-    The process ID of a task's parent. ​ 
-c: RUSER -- Real User Name 
-    The real user name of the task's owner. ​ 
-d: UID -- User Id 
-    The effective user ID of the task's owner. ​ 
-e: USER -- User Name 
-    The effective user name of the task's owner. ​ 
-f: GROUP -- Group Name 
-    The effective group name of the task's owner. ​ 
-g: TTY -- Controlling Tty 
-    The name of the controlling terminal. This is usually the device (serial port, pty, etc.)  
-    from which the process was started, and which it uses for input or output. ​ 
-    However, a task need not be associated with a terminal, in which case you'll see '?'​ displayed. ​ 
-h: PR -- Priority 
-    The priority of the task.  
-i: NI -- Nice value 
-    The nice value of the task. A negative nice value means higher priority, ​ 
-    whereas a positive nice value means lower priority. ​ 
-    Zero in this field simply means priority will not be adjusted in determining a task's dispatchability. ​ 
-j: P -- Last used CPU (SMP) 
-    A number representing the last used processor. ​ 
-    In a true SMP environment this will likely change frequently since the kernel intentionally uses weak affinity. ​ 
-    Also, the very act of running top may break this weak affinity and cause more processes to change ​ 
-    CPUs more often (because of the extra demand for cpu time). ​ 
-k: %CPU -- CPU usage 
-    The task's share of the elapsed CPU time since the last screen update, ​ 
-    expressed as a percentage of total CPU time. In a true SMP environment, ​ 
-    if 'Irix mode' is Off, top will operate in '​Solaris mode' where a task's cpu usage will be divided by the total number of CPUs.  
-    You toggle '​Irix/​Solaris'​ modes with the '​I'​ interactive command. ​ 
-l: TIME -- CPU Time 
-    Total CPU time the task has used since it started. When '​Cumulative mode' is On,  
-    each process is listed with the cpu time that it and its dead children has used.  
-    You toggle '​Cumulative mode' with '​S',​ which is a command-line option and an interactive command. ​ 
-    See the '​S'​ interactive command for additional information regarding this mode.  
-m: TIME+ -- CPU Time, hundredths 
-    The same as '​TIME',​ but reflecting more granularity through hundredths of a second. ​ 
-n: %MEM -- Memory usage (RES) 
-    A task's currently used share of available physical memory. ​ 
-o: VIRT -- Virtual Image (kb) 
-    The total amount of virtual memory used by the task.  
-    It includes all code, data and shared libraries plus pages that have been swapped out.  
-    (Note: you can define the STATSIZE=1 environment variable and the VIRT will be calculated from the /​proc/#/​state VmSize field.) 
- 
-    VIRT = SWAP + RES.  
-p: SWAP -- Swapped size (kb) 
-    The swapped out portion of a task's total virtual memory image. ​ 
-q: RES -- Resident size (kb) 
-    The non-swapped physical memory a task has used. 
- 
-    RES = CODE + DATA.  
-r: CODE -- Code size (kb) 
-    The amount of physical memory devoted to executable code, also known as the 'text resident set' size or TRS.  
-s: DATA -- Data+Stack size (kb) 
-    The amount of physical memory devoted to other than executable code, also known as the 'data resident set' size or DRS.  
-t: SHR -- Shared Mem size (kb) 
-    The amount of shared memory used by a task. It simply reflects memory that could be potentially shared with other processes. ​ 
-u: nFLT -- Page Fault count 
-    The number of major page faults that have occurred for a task.  
-    A page fault occurs when a process attempts to read from or write to a virtual page that is not currently present in its address space. ​ 
-    A major page fault is when disk access is involved in making that page available. ​ 
-v: nDRT -- Dirty Pages count 
-    The number of pages that have been modified since they were last written to disk.  
-    Dirty pages must be written to disk before the corresponding physical memory location can be used for some other virtual page.  
-w: S -- Process Status 
-    The status of the task which can be one of: '​D'​ = uninterruptible sleep '​R'​ = running '​S'​ = sleeping '​T'​ = traced or stopped '​Z'​ = zombie 
-    Tasks shown as running should be more properly thought of as 'ready to run' -- their task_struct is simply represented on the Linux run-queue. ​ 
-    Even without a true SMP machine, you may see numerous tasks in this state depending on top's delay interval and nice value. ​ 
-x: Command -- Command line or Program name 
-    Display the command line used to start a task or the name of the associated program. ​ 
-    You toggle between command line and name with '​c',​ which is both a command-line option and an interactive command. 
- 
-    When you've chosen to display command lines, ​ 
-    processes without a command line (like kernel threads) will be shown with only the program name in parentheses, ​ 
-    as in this example: ( mdrecoveryd ) 
- 
-    Either form of display is subject to potential truncation if it's too long to fit in this field'​s current width. ​ 
-    That width depends upon other fields selected, their order and the current screen width. 
- 
-    Note: The '​Command'​ field/​column is unique, in that it is not fixed-width. ​ 
-    When displayed, this column will be allocated all remaining screen width  
-    (up to the maximum 512 characters) to provide for the potential growth of program names into command lines. ​ 
-y: WCHAN -- Sleeping in Function 
-    Depending on the availability of the kernel link map ('​System.map'​), ​ 
-    this field will show the name or the address of the kernel function in which the task is currently sleeping. ​ 
-    Running tasks will display a dash ('​-'​) in this column. 
- 
-    Note: By displaying this field, top's own working set will be increased by over 700Kb. ​ 
-    Your only means of reducing that overhead will be to stop and restart top.  
-z: Flags -- Task Flags 
-    This column represents the task's current scheduling flags which are expressed in hexadecimal notation and with zeros suppressed. ​ 
-    These flags are officially documented in <​linux/​sched.h>​. ​ 
-    Less formal documentation can also be found on the '​Fields select'​ and 'Order fields'​ screens. ​ 
-</​code>​ 
- 
- 
-==== .toprc ==== 
-.toprc is the file you do not need to play with it all the time.\\ 
-Here is my .toprc file.\\ 
- 
- 
-<code bash | ~/​.toprc>​ 
- 
-RCfile for "top with windows" ​          # shameless braggin'​ 
-Id:a, Mode_altscr=0,​ Mode_irixps=1,​ Delay_time=3.000,​ Curwin=0 
-Def     ​fieldscur=OQNTKPMehaiWbcdfgJlrsuvyzX 
-        winflags=130489,​ sortindx=13,​ maxtasks=0 
-        summclr=6, msgsclr=1, headclr=3, taskclr=2 
-Job     ​fieldscur=ABcefgjlrstuvyzMKNHIWOPQDX 
-        winflags=64825,​ sortindx=0, maxtasks=0 
-        summclr=6, msgsclr=6, headclr=7, taskclr=6 
-Mem     ​fieldscur=ANOPQRSTUVbcdefgjlmyzWHIKX 
-        winflags=64825,​ sortindx=13,​ maxtasks=0 
-        summclr=5, msgsclr=5, headclr=4, taskclr=5 
-Usr     ​fieldscur=ABDECGfhijlopqrstuvyzMKNWX 
-        winflags=64825,​ sortindx=4, maxtasks=0 
-        summclr=3, msgsclr=3, headclr=2, taskclr=3 
- 
-</​code>​ 
- 
- 
-Playing with color is not advised from interface as it was hard for me :) still you can try using "​Z"​\\ 
-Here is how i played. 
- 
-<code text> 
- 
-Select target as upper case letter: 
-   S = Summary Data,  M = Messages/​Prompts,​ 
-   H = Column Heads, ​ T = Task Information 
-Select color as number: 
-   0 = black, ​ 1 = red,      2 = green, ​ 3 = yellow, 
-   4 = blue,   5 = magenta, ​ 6 = cyan,   7 = white 
-    
-</​code>​ 
- 
-**Curwin=0** Which define which block you are using start the first one as "​0"​. 
- 
-**summclr=6,​ msgsclr=1, headclr=3, taskclr=2** this is the value you can play with with above list of colors. 
top.txt ยท Last modified: 2020/08/10 02:35 (external edit)