線程與CPU核綁定

線程與CPU核綁定

不管是線程還是進程,都是通過設(shè)置親和性(affinity)來達(dá)到目的匙瘪。對于進程的情況铆铆,一般是使用sched_setaffinity()來實現(xiàn)。
與進程的情況相似丹喻,線程親和性的設(shè)置和獲取主要通過下面兩個函數(shù)來實現(xiàn):

int pthread_setaffinity_np(pthread_t thread, size_t cpusetsize, const cpu_set_t *cpuset);
int pthread_getaffinity_np(pthread_t thread, size_t cpusetsize, cpu_set_t *cpuset);

cpu_set_t這個結(jié)構(gòu)體類似于select中的fd_set薄货,可以理解為cpu集,也是通過約定好的宏來進行清除驻啤、設(shè)置以及判斷:

void CPU_ZERO (cpu_set_t *set); //初始化菲驴,設(shè)為空
void CPU_SET (int cpu, cpu_set_t *set); //將某個cpu加入cpu集中
void CPU_CLR (int cpu, cpu_set_t *set); //將某個cpu從cpu集中移出
int CPU_ISSET (int cpu, const cpu_set_t *set); //判斷某個cpu是否已在cpu集中設(shè)置了

cpu集可以認(rèn)為是一個掩碼,每個設(shè)置的位都對應(yīng)一個可以合法調(diào)度的 cpu骑冗,而未設(shè)置的位則對應(yīng)一個不可調(diào)度的 CPU赊瞬。換而言之先煎,線程都被綁定了,只能在那些對應(yīng)位被設(shè)置了的處理器上運行巧涧。通常薯蝎,掩碼中的所有位都被置位了,也就是可以在所有的cpu中調(diào)度谤绳。

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
  • 序言:七十年代末占锯,一起剝皮案震驚了整個濱河市,隨后出現(xiàn)的幾起案子缩筛,更是在濱河造成了極大的恐慌消略,老刑警劉巖,帶你破解...
    沈念sama閱讀 217,406評論 6 503
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件瞎抛,死亡現(xiàn)場離奇詭異艺演,居然都是意外死亡,警方通過查閱死者的電腦和手機桐臊,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 92,732評論 3 393
  • 文/潘曉璐 我一進店門胎撤,熙熙樓的掌柜王于貴愁眉苦臉地迎上來,“玉大人断凶,你說我怎么就攤上這事伤提。” “怎么了认烁?”我有些...
    開封第一講書人閱讀 163,711評論 0 353
  • 文/不壞的土叔 我叫張陵肿男,是天一觀的道長。 經(jīng)常有香客問我砚著,道長次伶,這世上最難降的妖魔是什么痴昧? 我笑而不...
    開封第一講書人閱讀 58,380評論 1 293
  • 正文 為了忘掉前任稽穆,我火速辦了婚禮,結(jié)果婚禮上赶撰,老公的妹妹穿的比我還像新娘舌镶。我一直安慰自己,他們只是感情好豪娜,可當(dāng)我...
    茶點故事閱讀 67,432評論 6 392
  • 文/花漫 我一把揭開白布餐胀。 她就那樣靜靜地躺著,像睡著了一般瘤载。 火紅的嫁衣襯著肌膚如雪否灾。 梳的紋絲不亂的頭發(fā)上,一...
    開封第一講書人閱讀 51,301評論 1 301
  • 那天鸣奔,我揣著相機與錄音墨技,去河邊找鬼惩阶。 笑死,一個胖子當(dāng)著我的面吹牛扣汪,可吹牛的內(nèi)容都是我干的断楷。 我是一名探鬼主播,決...
    沈念sama閱讀 40,145評論 3 418
  • 文/蒼蘭香墨 我猛地睜開眼崭别,長吁一口氣:“原來是場噩夢啊……” “哼冬筒!你這毒婦竟也來了?” 一聲冷哼從身側(cè)響起茅主,我...
    開封第一講書人閱讀 39,008評論 0 276
  • 序言:老撾萬榮一對情侶失蹤舞痰,失蹤者是張志新(化名)和其女友劉穎,沒想到半個月后诀姚,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體匀奏,經(jīng)...
    沈念sama閱讀 45,443評論 1 314
  • 正文 獨居荒郊野嶺守林人離奇死亡,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點故事閱讀 37,649評論 3 334
  • 正文 我和宋清朗相戀三年学搜,在試婚紗的時候發(fā)現(xiàn)自己被綠了娃善。 大學(xué)時的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片。...
    茶點故事閱讀 39,795評論 1 347
  • 序言:一個原本活蹦亂跳的男人離奇死亡瑞佩,死狀恐怖聚磺,靈堂內(nèi)的尸體忽然破棺而出,到底是詐尸還是另有隱情炬丸,我是刑警寧澤瘫寝,帶...
    沈念sama閱讀 35,501評論 5 345
  • 正文 年R本政府宣布,位于F島的核電站稠炬,受9級特大地震影響焕阿,放射性物質(zhì)發(fā)生泄漏。R本人自食惡果不足惜首启,卻給世界環(huán)境...
    茶點故事閱讀 41,119評論 3 328
  • 文/蒙蒙 一暮屡、第九天 我趴在偏房一處隱蔽的房頂上張望。 院中可真熱鬧毅桃,春花似錦褒纲、人聲如沸。這莊子的主人今日做“春日...
    開封第一講書人閱讀 31,731評論 0 22
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽。三九已至读宙,卻和暖如春彻秆,著一層夾襖步出監(jiān)牢的瞬間,已是汗流浹背。 一陣腳步聲響...
    開封第一講書人閱讀 32,865評論 1 269
  • 我被黑心中介騙來泰國打工唇兑, 沒想到剛下飛機就差點兒被人妖公主榨干…… 1. 我叫王不留墓律,地道東北人。 一個月前我還...
    沈念sama閱讀 47,899評論 2 370
  • 正文 我出身青樓幔亥,卻偏偏與公主長得像耻讽,于是被迫代替她去往敵國和親。 傳聞我的和親對象是個殘疾皇子帕棉,可洞房花燭夜當(dāng)晚...
    茶點故事閱讀 44,724評論 2 354

推薦閱讀更多精彩內(nèi)容

  • 概念 什么是CPU Affinity针肥?Affinity是進程的一個屬性,這個屬性指明了進程調(diào)度器能夠把這個進程調(diào)度...
    梅_梅閱讀 1,376評論 3 4
  • 又來到了一個老生常談的問題香伴,應(yīng)用層軟件開發(fā)的程序員要不要了解和深入學(xué)習(xí)操作系統(tǒng)呢慰枕? 今天就這個問題開始,來談?wù)劜?..
    tangsl閱讀 4,124評論 0 23
  • Linux 內(nèi)核SMP負(fù)載均衡淺析 需求在《linux進程調(diào)度淺析》一文中提到即纲,在SMP(對稱多處理器)環(huán)境下具帮,每...
    meng_philip123閱讀 1,814評論 0 3
  • Linux 進程管理與程序開發(fā) 進程是Linux事務(wù)管理的基本單元,所有的進程均擁有自己獨立的處理環(huán)境和系統(tǒng)資源低斋,...
    JamesPeng閱讀 2,467評論 1 14
  • 又做了一些體驗感不太好的夢膊畴, 做到最后還濕了眼眶掘猿, 想起一件小事, 原來有一個關(guān)系還不錯的唇跨,朋友稠通。 說是關(guān)系不錯,...
    土豆三三閱讀 543評論 0 0