,Linux内核已经在几年前合并了可重启序列,GNU C库已经使用RSEQ对每个CPU数据进行更快的用户空间操作RSEQ将在明年推出的Linux 6.3中得到进一步改进
通过增加每个CPU的计数器,修改每个CPU的自旋锁,读写每个CPU的环形缓冲区,避免原子操作,RSEQ可以明显优化性能,从而提供优秀的基准测试结果。
领导RSEQ大部分工作的马蒂厄·德斯诺耶斯最近一直致力于扩展可重启序列ABI,并发表了NUMA节点ID,mm_cid和mm_numa_cid字段。
本站了解到,Desnoyers在补丁介绍中说:
NUMA节点ID允许在libc中更快地获取cpu。
每个内存映射的并发id允许每个cpu的用户空间数据结构在理想情况下进行伸缩。
调度程序可以跟踪内存中分配的并发ID这个调度器根据并发运行的线程数,CPU亲和度,这些线程使用的CPU和逻辑核数等进行判断
NUMA感知并发id类似于mm_cid,只是它跟踪与每个cid相关联的NUMA节点id。
在NUMA系统上,当用户空间观察到NUMA感知并发ID与NUMA节点相关联时,它保证NUMA节点永远不会被更改,除非有内核级NUMA配置更改这对于在属于cpuset的一个进程或一组进程被固定到属于系统的NUMA节点子集的一组核心的环境中运行的NUMA感知的每cpu数据结构是有用的
[责任编辑:杜玉梅]
郑重声明:此文内容为本网站转载企业宣传资讯,目的在于传播更多信息,与本站立场无关。仅供读者参考,并请自行核实相关内容。