用 taskset 充分利用多核cpu

2021-07-13 05:23:07 字數 1262 閱讀 8799

**:

常常感覺系統資源不夠用,一台機子上跑了不下3個比較重要的服務,但是每天我們還要在上面進行個備份壓縮等處理,網路長時間傳輸,這在就很影響本就不夠用的系統資源;  

這個時候我們就可以把一些不太重要的比如copy/備份/同步等工作限定在一顆cpu上,或者是多核的cpu的一顆核心上進行處理,雖然這不一定是最有效的方法,但可以最大程度上利用了有效資源,降低那些不太重要的程序占用cpu資源;

檢視系統下cpu資訊: #cat /proc/cpuinfo  

taskset就可以幫我們完成這項工作,而且操作非常簡單;

利用 taskset 可以充分利用多核cpu的好處,可以讓某個程式或指令碼,執行在某個具體的cpu上。

這個工具系統可能沒有預設安裝:,rpm包名util-linux

#taskset --help

taskset (util-linux 2.13-pre7)

usage: taskset [options] [mask | cpu-list] [pid | cmd [args...]]

set or get the affinity of a process

-p, –pid operate on existing given pid

-c, –cpu-list display and specify cpus in list format

-h, –help display this help

-v, –version output version information

1:讓某個程式執行在特定cpu上面

taskset -c 0 sh wade.sh

2:切換某個程序到特定的cpu上。

taskset -pc 0 12345

比如你有乙個cpu是4 core你可以這樣寫你的指令碼

#!/bin/bash

taskset -c 0 sh a.sh &

taskset -c 1 sh b.sh &

taskset -c 2 sh c.sh &

taskset -c 3 sh d.sh &

應該可以充分利用你的cpu了。

充分利用會議

這是我的好朋友patroklos組織的2017年我的最後一次會議,即塞薩洛尼基voxxed day 我幾年前開始參加會議。參加會議是一項投資,無論是時間上的還是金錢上的 或兩者兼有 您應該確保從投資中獲得最大收益。在這篇文章中,我想寫下實現這一目標的方法。未雨綢繆 要做的第一件事是提前獲得可用對話的...

充分利用Unique Index

假如我們是一服裝公司,在接受定單的時候,我們就要檢測,乙個季度是否有重複的訂單,但然,在我們接受打單的時候,也要做乙個檢測。怎麼完成這項任務呢?我想,除了我們在程式級設定檢測以外,最重要的就是資料庫本身了。下面我們就試著來解決這個問題 下面是我們的資料庫設計,當然是簡略版的 orders 訂單表,主...

充分利用時間

不知不覺,距離開始接觸安卓這門語言已經時間不短了,從最開始對四大元件都不太了解,到現在已經稀里糊塗的做完了五六個專案。收穫不小,但不是很全,感覺距離真正的開發人員還差一大截。不想再浪費時間,利用這點時間做點實際的事,充實一下自己,由於平時專案中功能比較瑣碎,好多專案都有共同的地方,為了提高開發效率,...