如何更好地配置 linux/CPU 以支持大规模软件运行 (NUMA)
我正在 Linux 上对内存驱动的大型程序(数十 GB 内存)进行性能分析。
我在想是否可以配置linux/硬件以更适合运行此类大型程序。但我对这一面并不熟悉。
任何人都有关于如何配置
- 操作系统缓存配置的内存分配策略的
- CPU
- 其他观点...
任何评论表示赞赏..
这是典型的CPU模型(4个Opteron处理器,每个处理器都有双核):
processor : 3
vendor_id : AuthenticAMD
cpu family : 15
model : 65
model name : Dual-Core AMD Opteron(tm) Processor 2218
stepping : 2
cpu MHz : 2600.000
cache size : 1024 KB
physical id : 1
siblings : 2
core id : 1
cpu cores : 2
fpu : yes
fpu_exception : yes
cpuid level : 1
wp : yes
flags : fpu vme de pse tsc msr pae mce cx8 apic sep mtrr pge mca cmov pat pse36 clflush mmx fxsr sse sse2 ht syscall nx mmxext fxsr_opt rdtscp lm 3dnowext 3dnow pni cx16 lahf_lm cmp_legacy svm extapic cr8_legacy
bogomips : 5200.09
TLB size : 1088 4K pages
clflush size : 64
cache_alignment : 64
address sizes : 40 bits physical, 48 bits virtual
power management: ts fid vid ttp tm stc
I am doing performance analysis on linux for large scale programs which is memory driven(tens of Gigabytes memory).
I am thinking if it's possible to config linux/hardware to be more suitable to run such kind of large programs. But I am not familiar with this side.
Anybody have points about how to config
- memory allocation strategy of OS
- cache config for CPU
- else...
Any comment is appreciated..
This is the typical CPU model (4 Opteron processors each has dual core):
processor : 3
vendor_id : AuthenticAMD
cpu family : 15
model : 65
model name : Dual-Core AMD Opteron(tm) Processor 2218
stepping : 2
cpu MHz : 2600.000
cache size : 1024 KB
physical id : 1
siblings : 2
core id : 1
cpu cores : 2
fpu : yes
fpu_exception : yes
cpuid level : 1
wp : yes
flags : fpu vme de pse tsc msr pae mce cx8 apic sep mtrr pge mca cmov pat pse36 clflush mmx fxsr sse sse2 ht syscall nx mmxext fxsr_opt rdtscp lm 3dnowext 3dnow pni cx16 lahf_lm cmp_legacy svm extapic cr8_legacy
bogomips : 5200.09
TLB size : 1088 4K pages
clflush size : 64
cache_alignment : 64
address sizes : 40 bits physical, 48 bits virtual
power management: ts fid vid ttp tm stc
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(1)
对于调查多插槽系统上的内存/缓存很有用:
hwloc'
lstopo
(示例):<前><代码>lstopo
numactl / libnuma(但前提是它确实是 NUMA 系统)
<前><代码>numactl --硬件
numactl --显示
sysfs
、procfs
:Useful for investigating memory / caching on a multi-socket system:
hwloc's
lstopo
(example):numactl / libnuma (but only if it really is a NUMA system)
sysfs
,procfs
: