如何判斷程序上下文切換對效能的影響?

時間 2021-06-01 05:41:24

1樓:鄒同學

vmstat看看in和cs,如果cs比較大,且比in大。磁碟io使用又不高,機器負載卻比較高。那可能上下文切換影響效能了

2樓:東籬

zhihu 支援 Markdown 語法嘛,搞得這些字都不能在 vim 裡面碼...這麼來說吧,在 Linux 中(不懂 Windows),你大概可以通過 /proc 看出個究竟,對於指定的程序而言,比如 PID = 27288,用 cat 命令搞一下:

[root@oel6 ~]# cat /proc/27288/status

...voluntary_ctxt_switches: 9950

nonvoluntary_ctxt_switches: 17104

...如你所見,這裡的 9950 和 17104 分別就是切入/切出 CPU 的次數。

除了 status 之外,除此之外,還可以看 /proc/27288/schedstat 字段:

[root@oel6 ~]# cat /proc/27288/schedstat

1119480311 724745506 27054

此處 27054 就是上面兩個數值的和,代表切入切出總數值。

不過一般而言,純粹的上下文切換並不能說明效能問題,這裡有一篇排版還算過得去的 PDF,說明了作者是如何排除乙個 NFS 相關的故障的:https://

dl.dropboxusercontent.com

/u/17063437/peek-kernel.pdf

用javascript執行上下文怎麼理解這個問題?

當你的a,b函式宣告時會為其建立乙個隱藏屬性 scope 這個屬性包括當前作用域可以訪問到的變數集合,在你這個例子裡面就是global object。當a,b函式執行時會為其建立乙個execution context執行時上下文,這個執行時上下文裡面有乙個scope chain作用域鏈,作用域鏈是乙...

怎麼直觀地理解上下文無關語言的幫浦引理

上下文無關語言 CFL 的幫浦引理其實跟正則語言 RL 的幫浦引理本質是一樣的,都是通過鴿巢原理來證明的。而且只要找對思考這個問題的角度,其實它是很簡單並且符合直覺的。舉個例子,理解正則語言的角度可以是確定性有窮自動機 DFA 也可以是非確定性有窮自動機 NFA 還可以是正規表示式 RE 而我們選擇...

如何在沒有上下文的情況下解讀問題描述中的這段話,這樣的巨集大表述是否假大空?

陽光暖暖的 先把原文貼在這裡吧 人潛在地在指向 超越物質精神兩分 的方向上,通過展開他的全部經歷來表達和領會自身與萬物構成並屬於 無規定的秩序 這是存在者追認和拓寬存在的過程,是存在為了宣示自身與存在者玩的神秘遊戲。在這過程和遊戲裡,人的形而上意義是趨向於成為不在場的在場者。先說結論。看了幾遍,說實...