- 减少缓存失效(Cache Miss)
 CPU 核心的高速缓存(L1/L2/L3 Cache)会存储近期访问的数据。若进程在不同核心间迁移,新核心的缓存中可能没有该进程的数据,需重新从内存读取,导致性能下降。
 类比:如同员工频繁换工位,每次换位置都要重新找文件,效率降低。
 
- 避免上下文切换开销
 进程在不同核心间迁移时,操作系统需保存和恢复其运行状态(如寄存器值、内存地址空间等),产生额外的 CPU 开销。
 数据:一次上下文切换的开销约为几微秒,高并发场景下频繁切换会显著影响性能。
 
- 优化内存局部性(Memory Locality)
 在 NUMA(非统一内存访问)架构中,CPU 核心访问本地内存的速度远快于跨节点内存。绑定 CPU 可减少跨节点内存访问,提升数据读取效率。
 
- 硬亲和性(Hard Affinity) 
- 软亲和性(Soft Affinity) 
- 服务器高并发优化 
- 虚拟化与容器环境 
- 数据库与大数据计算 
- 实时性任务(如音视频处理) 
- Linux 系统 
- Windows 系统 
- 虚拟化平台 
- 避免负载不均衡 
- NUMA 架构下的优化 
- 动态场景的权衡 
- 监控与调优 
CPU 亲和性是服务器性能优化的重要手段,通过 “进程与 CPU 核心的绑定” 减少调度开销和缓存失效,尤其适用于高并发、实时性或 NUMA 架构的场景。合理使用该技术可显著提升系统稳定性和资源利用率,但需结合业务特点避免过度绑定导致的负载失衡。
(声明:本文来源于网络,仅供参考阅读,涉及侵权请联系我们删除、不代表任何立场以及观点。)