Update nexus wiki content
This commit is contained in:
39
wiki/concepts/NUMA.md
Normal file
39
wiki/concepts/NUMA.md
Normal file
@@ -0,0 +1,39 @@
|
||||
---
|
||||
title: "NUMA"
|
||||
type: concept
|
||||
tags: [sre, performance, cloud, containers, cpu]
|
||||
last_updated: 2026-04-20
|
||||
---
|
||||
|
||||
# NUMA (Non-Uniform Memory Access)
|
||||
|
||||
NUMA(非一致性内存访问)是一种多处理器计算机架构中的内存访问模式,对现代容器化部署有重要影响。
|
||||
|
||||
## Definition
|
||||
在 NUMA 架构中,CPU 和内存被组织成多个节点(nodes)。每个 CPU 访问本地内存节点的速度远快于访问远程内存节点的速度,因此称为"非一致性"内存访问。
|
||||
|
||||
## Key Concepts
|
||||
- **NUMA Node**:由一个或多个 CPU 和与其相连的内存组成
|
||||
- **Local Memory Access**:CPU 访问本节点的内存,延迟低、带宽高
|
||||
- **Remote Memory Access**:CPU 访问其他节点的内存,延迟高、带宽低
|
||||
- **CPU Pinning**:将进程/容器固定到特定 CPU,以优化内存局部性
|
||||
|
||||
## Why SREs Should Care
|
||||
Netflix 在现代 CPU 上运行容器时发现:
|
||||
- 运行 100 个容器需要超过 **2 万次挂载操作(mounts)**
|
||||
- NUMA 问题是影响容器调度性能的关键因素
|
||||
- SRE 必须关注**整个技术栈**,包括硬件层面的 NUMA 拓扑
|
||||
|
||||
## Implications for Container Scheduling
|
||||
1. **NUMA-Aware Scheduling**:调度器应感知 NUMA 拓扑,避免跨节点内存访问
|
||||
2. **CPU Pinning**:对延迟敏感的应用(如 Netflix 媒体处理)需要将容器固定到特定 CPU
|
||||
3. **内存局部性优化**:减少跨 NUMA 节点的内存访问可显著降低延迟
|
||||
|
||||
## Related Concepts
|
||||
- [[Containers]]
|
||||
- [[Kubernetes]]
|
||||
- [[Performance-Benchmarking]]
|
||||
- [[Cloud-Native]]
|
||||
|
||||
## Source
|
||||
- SRE Weekly Issue #513 — [[sre-weekly-issue-513]] (Netflix Mount Mayhem case study)
|
||||
Reference in New Issue
Block a user