Sabta ang Linux Load Average ug Monitor Performance sa Linux
Niini nga artikulo, among ipasabut ang usa sa mga kritikal nga buluhaton sa pagdumala sa sistema sa Linux - pag-monitor sa pasundayag bahin sa pagkarga sa sistema/CPU ug mga average sa pagkarga.
Sa dili pa kita mopadayon, atong sabton kining duha ka importante nga hugpong sa mga pulong sa tanang sistema nga sama sa Unix:
- System load/CPU Load – usa ka sukod sa CPU nga sobra o kulang sa paggamit sa usa ka Linux system; ang gidaghanon sa mga proseso nga gipatuman sa CPU o sa naghulat nga kahimtang.
- Average nga load – mao ang kasagarang load sa sistema nga gikalkulo sulod sa gihatag nga yugto sa panahon nga 1, 5 ug 15 ka minuto.
Sa Linux, ang load-average sa teknikal gituohan nga usa ka running average sa mga proseso sa (kernel) execution queue niini nga gi-tag nga running o uninterruptible.
Timan-i nga:
- Ang tanan kung dili ang kadaghanan sa mga sistema nga gipadagan sa Linux o uban pang mga sistema nga sama sa Unix mahimong magpakita sa kasagaran nga mga kantidad sa pagkarga sa usa ka lugar alang sa usa ka tiggamit.
- Ang usa ka walay pulos nga sistema sa Linux mahimong adunay average nga load nga zero, walay labot ang proseso nga walay trabaho.
- Hapit tanang sistema nga sama sa Unix nag-ihap lang sa mga proseso sa nagdagan o naghulat nga estado. Apan dili kini ang kaso sa Linux, kini naglakip sa mga proseso sa dili maputol nga mga estado sa pagkatulog; kadtong naghulat sa ubang mga kapanguhaan sa sistema sama sa disk I/O ug uban pa.
Unsaon Pag-monitor sa Linux System Load Average
Adunay daghang mga paagi sa pag-monitor sa average nga load sa sistema lakip na ang oras sa pag-andar nga nagpakita kung unsa kadugay nga nagdagan ang sistema, gidaghanon sa mga tiggamit kauban ang mga average sa pagkarga:
$ uptime 07:13:53 up 8 days, 19 min, 1 user, load average: 1.98, 2.15, 2.21
Ang mga numero gibasa gikan sa wala ngadto sa tuo, ug ang output sa ibabaw nagpasabot nga:
- load average sa katapusang 1 ka minuto kay 1.98
- load average sa miaging 5 ka minuto kay 2.15
- load average sa miaging 15 ka minuto kay 2.21
Ang taas nga mga aberids sa karga nagpasabot nga ang usa ka sistema sobra ka karga; daghang mga proseso ang naghulat sa oras sa CPU.
Atong ibutyag kini sa sunod nga seksyon kalabot sa gidaghanon sa CPU cores. Dugang pa, mahimo usab namon nga magamit ang uban pang nahibal-an nga mga himan sama sa mga pagtan-aw nga nagpakita sa usa ka real-time nga kahimtang sa usa ka nagdagan nga sistema sa Linux, ug daghang uban pang mga himan:
$ top
top - 12:51:42 up 2:11, 1 user, load average: 1.22, 1.12, 1.26 Tasks: 243 total, 1 running, 242 sleeping, 0 stopped, 0 zombie %Cpu(s): 17.4 us, 2.9 sy, 0.3 ni, 74.8 id, 4.6 wa, 0.0 hi, 0.0 si, 0.0 st KiB Mem : 8069036 total, 388060 free, 4381184 used, 3299792 buff/cache KiB Swap: 3906556 total, 3901876 free, 4680 used. 2807464 avail Mem PID USER PR NI VIRT RES SHR S %CPU %MEM TIME+ COMMAND 6265 tecmint 20 0 1244348 170680 83616 S 13.3 2.1 6:47.72 Headset 2301 tecmint 9 -11 640332 13344 9932 S 6.7 0.2 2:18.96 pulseaudio 2459 tecmint 20 0 1707692 315628 62992 S 6.7 3.9 6:55.45 cinnamon 2957 tecmint 20 0 2644644 1.035g 137968 S 6.7 13.5 50:11.13 firefox 3208 tecmint 20 0 507060 52136 33152 S 6.7 0.6 0:04.34 gnome-terminal- 3272 tecmint 20 0 1521380 391324 178348 S 6.7 4.8 6:21.01 chrome 6220 tecmint 20 0 1595392 106964 76836 S 6.7 1.3 3:31.94 Headset 1 root 20 0 120056 6204 3964 S 0.0 0.1 0:01.83 systemd 2 root 20 0 0 0 0 S 0.0 0.0 0:00.00 kthreadd 3 root 20 0 0 0 0 S 0.0 0.0 0:00.10 ksoftirqd/0 5 root 0 -20 0 0 0 S 0.0 0.0 0:00.00 kworker/0:0H ....
$ glances
TecMint (LinuxMint 18 64bit / Linux 4.4.0-21-generic) Uptime: 2:16:06 CPU 16.4% nice: 0.1% LOAD 4-core MEM 60.5% active: 4.90G SWAP 0.1% user: 10.2% irq: 0.0% 1 min: 1.20 total: 7.70G inactive: 2.07G total: 3.73G system: 3.4% iowait: 2.7% 5 min: 1.16 used: 4.66G buffers: 242M used: 4.57M idle: 83.6% steal: 0.0% 15 min: 1.24 free: 3.04G cached: 2.58G free: 3.72G NETWORK Rx/s Tx/s TASKS 253 (883 thr), 1 run, 252 slp, 0 oth sorted automatically by cpu_percent, flat view enp1s0 525Kb 31Kb lo 2Kb 2Kb CPU% MEM% VIRT RES PID USER NI S TIME+ IOR/s IOW/s Command wlp2s0 0b 0b 14.6 13.3 2.53G 1.03G 2957 tecmint 0 S 51:49.10 0 40K /usr/lib/firefox/firefox 7.4 2.2 1.16G 176M 6265 tecmint 0 S 7:08.18 0 0 /usr/lib/Headset/Headset --type=renderer --no-sandbox --primordial-pipe-token=879B36514C6BEDB183D3E4142774D1DF --lan DISK I/O R/s W/s 4.9 3.9 1.63G 310M 2459 tecmint 0 R 7:12.18 0 0 cinnamon --replace ram0 0 0 4.2 0.2 625M 13.0M 2301 tecmint -11 S 2:29.72 0 0 /usr/bin/pulseaudio --start --log-target=syslog ram1 0 0 4.2 1.3 1.52G 105M 6220 tecmint 0 S 3:42.64 0 0 /usr/lib/Headset/Headset ram10 0 0 2.9 0.8 409M 66.7M 6240 tecmint 0 S 2:40.44 0 0 /usr/lib/Headset/Headset --type=gpu-process --no-sandbox --supports-dual-gpus=false --gpu-driver-bug-workarounds=7,2 ram11 0 0 2.9 1.8 531M 142M 1690 root 0 S 6:03.79 0 0 /usr/lib/xorg/Xorg :0 -audit 0 -auth /var/lib/mdm/:0.Xauth -nolisten tcp vt8 ram12 0 0 2.6 0.3 79.3M 23.8M 9651 tecmint 0 R 0:00.71 0 0 /usr/bin/python3 /usr/bin/glances ram13 0 0 1.6 4.8 1.45G 382M 3272 tecmint 0 S 6:25.30 0 4K /opt/google/chrome/chrome ...
Ang load average nga gipakita niini nga mga himan mao ang read /proc/loadavg file, nga imong makita gamit ang cat command sama sa ubos:
$ cat /proc/loadavg 2.48 1.69 1.42 5/889 10570
Para mamonitor ang load average sa graph format, check out: ttyload – Nagpakita sa Color-coded Graph sa Linux Load Average sa Terminal
Sa mga desktop machine, adunay mga graphical user interface nga mga himan nga atong magamit sa pagtan-aw sa system load averages.
Pagsabot sa System Average Load sa Relation Number sa mga CPU
Dili namo mahimo nga ipasabut ang load sa sistema o ang performance sa sistema nga wala maghatag ug kahayag sa epekto sa gidaghanon sa CPU cores sa performance.
- Multi-processor – diin duha o daghan pa nga pisikal nga CPU ang gisagol sa usa ka sistema sa kompyuter.
- Multi-core processor – usa ka pisikal nga CPU nga adunay labing menos duha o labaw pa nga separado nga mga cores (o kung unsa ang mahimo usab namon nga tawagan nga mga yunit sa pagproseso) nga parehas nga nagtrabaho. Buot ipasabot ang dual-core adunay 2 duha ka processing units, ang quad-core adunay 4 processing units ug uban pa.
Dugang pa, adunay usa usab ka teknolohiya sa processor nga una nga gipaila sa Intel aron mapaayo ang parallel computing, nga gitawag nga hyper threading.
Ubos sa hyper threading, ang usa ka pisikal nga CPU core makita isip duha ka lohikal nga CPU core sa usa ka operating system (apan sa pagkatinuod, adunay usa ka pisikal nga hardware component).
Timan-i nga ang usa ka CPU core makahimo lamang sa usa ka buluhaton sa usa ka higayon, busa ang mga teknolohiya sama sa daghang CPU/processors, multi-core CPU ug hyper-threading nabuhi.
Uban sa labaw pa sa usa ka CPU, daghang mga programa ang mahimong dungan nga ipatuman. Ang karon nga mga Intel CPU naggamit sa usa ka kombinasyon sa daghang mga core ug hyper-threading nga teknolohiya.
Aron makit-an ang gidaghanon sa mga yunit sa pagproseso nga anaa sa usa ka sistema, mahimo natong gamiton ang nproc o lscpu nga mga sugo sama sa mosunod:
$ nproc 4 OR lscpu
Ang laing paagi sa pagpangita sa gidaghanon sa mga yunit sa pagproseso gamit ang grep command sama sa gipakita.
$ grep 'model name' /proc/cpuinfo | wc -l 4
Karon, aron mas masabtan ang pagkarga sa sistema, magkuha kami pipila ka mga pangagpas. Ingnon ta nga naa tay load average sa ubos:
23:16:49 up 10:49, 5 user, load average: 1.00, 0.40, 3.35
- Ang CPU hingpit nga (100%) gigamit sa kasagaran; 1 ka proseso ang nagdagan sa CPU (1.00) sa miaging 1 ka minuto.
- Ang CPU walay trabaho sa 60% sa kasagaran; walay proseso nga naghulat sa oras sa CPU (0.40) sa miaging 5 ka minuto.
- Ang CPU na-overload sa 235% sa kasagaran; Naghulat ang 2.35 nga mga proseso sa oras sa CPU (3.35) sa miaging 15 ka minuto.
- Ang usa ka CPU 100% nga walay trabaho sa kasagaran, usa ka CPU ang gigamit; walay proseso nga naghulat sa oras sa CPU(1.00) sa miaging 1 ka minuto.
- Ang mga CPU walay trabaho sa 160% sa kasagaran; walay proseso nga naghulat sa oras sa CPU. (0.40) sa miaging 5 ka minuto.
- Ang mga CPU na-overload sa 135% sa kasagaran; Ang mga proseso sa 1.35 naghulat sa oras sa CPU. (3.35) sa miaging 15 ka minuto.
Mahimong ganahan ka usab:
- 20 Command Line Tools sa Pagmonitor sa Linux Performance – Part 1
- 13 Linux Performance Monitoring Tools – Bahin 2
- Perf- Usa ka Himan sa Pag-monitor ug Pagtuki sa Pagganap para sa Linux
- Nmon: Pag-analisar ug Pag-monitor sa Pagganap sa Sistema sa Linux
Sa konklusyon, kung ikaw usa ka tigdumala sa sistema unya ang taas nga mga average sa pagkarga tinuod nga angay mabalaka. Kung taas sila, labaw sa gidaghanon sa mga cores sa CPU, kini nagpasabut nga taas nga panginahanglan alang sa mga CPU, ug ang ubos nga mga average nga load ubos sa gidaghanon sa mga cores sa CPU nagsulti kanato nga ang mga CPU wala kaayo magamit.