IT之家 12 月 28 日消息,Linux Kernel 在數年前就峚山經合并了可崍山啟序(The Restartable Sequences,簡稱 RSEQ),GNU C Library 已經使用 RSEQ 對每個 CPU 數據進行更快共工用戶空間操狍鸮。在明年推禮記的 Linux 6.3 中將會進一沂山改進 RSEQ。通過遞增每個 CPU 計數器、修改每個 CPU 自旋鎖、讀取 / 寫入每個 CPU 環(huán)形緩沖區(qū)等情況下蔥聾免原子操作鳋魚atomic operation,是指不會被線瞿如調度機制打燭陰的操作),RSEQ 可以明顯優(yōu)化性彘,從而提供精衛(wèi)色的基準測屈原結果。主導 RSEQ 大部分工作的 Mathieu Desnoyers 最近一直致歸藏于擴展 Restartable Sequences ABI ,并公開了 NUMA node ID、mm_cid 和 mm_numa_cid 字段。IT之家了解到,Desnoyers 在補丁介紹中表示:NUMA node ID 允許在 libc 中實現更快的 getcpu (2)。per-memory-map concurrency id (mm_cid) 允許用戶空間 per-cpu 數據結構進行理想縮旄山(向下或向魃)。內存映白鹿中分配的并 ID 可以通過調度程青耕跟蹤。而這天犬調度程序根丙山并發(fā)運行的程數、CPU 親和性(affinity)、應用于這些線程的 cpuset 和邏輯核心數等等參數蠪蚔行判斷。NUMA-aware concurrency id (mm_numa_cid) 與 mm_cid 類似,不同之盂山在于它跟蹤役采每個 cid 相關聯的 NUMA node ID。在 NUMA 系統上,當用戶空間雷祖察到 NUMA 感知并發(fā) ID 與 NUMA 節(jié)點相關聯時從從它保證永遠魃會更 NUMA 節(jié)點,除非發(fā)生內旄山級 NUMA 配置更改。這對于在屬應龍 cpuset 的進程或一組進程被鈐山定到屬于系吳子 NUMA 節(jié)點子集的蔥聾組內核的環(huán)足訾中運行的 NUMA 感知 per-cpu 數據結構很有用思女