Xeon服务器的“调优”是一个系统工程,涉及硬件、固件、操作系统和应用多个层面,目标通常是获得最佳性能、最高稳定性或最佳能效,以下是详细的调整思路和步骤:
首先问自己:调整的目的是什么?
最大化性能用于科学计算、渲染、数据库等。
最佳能效降低运营成本,对性能要求不苛刻。
低延迟用于金融交易、高频数据库。
高稳定性用于关键业务,7x24小时运行。
1. BIOS/UEFI 设置(最核心、影响最大)
开机按提示进入BIOS设置界面(通常是Del、F2或F11)。
功耗与性能模式
Performance Per Watt (DAPC) /电源性能平衡选择Performance(性能)或Max Performance(最大性能),能效模式下则选择Balanced或Power Saving。
CPU Power and Performance Policy选择Performance。
Advanced Power Management Configuration根据目标调整。
CPU 设置
Intel Turbo Boost Technology启用,这是睿频,单核/多核动态加速的关键。
Hyper-Threading Technology启用,大多数场景下启用超线程能提升并行处理能力,在某些极端低延迟或计算密集型科学应用中可以测试关闭的效果。
CPU C-States /C-State Control性能优先时建议禁用或只保留C1E,C-State是节能状态,切换会带来微秒级延迟,禁用可降低延迟,增加功耗。
Uncore Frequency可以设置为Maximum或固定在高频,这对内存密集型应用有益。
内存设置
Memory Frequency手动设置为内存条和支持的最高频率(如DDR4 3200MHz),避免运行在默认的保守频率。
Memory Profiles如果使用的是ECC REG DDR4/5,请启用XMP 2.0 Profile,这是服务器内存超频的关键,能显著提升内存带宽。
NUMA务必启用,让操作系统感知多CPU架构,优化内存访问,在VMware ESXi等虚拟化环境中尤其重要。
PCIe 设置
PCIe ASPM性能优先时禁用,这是PCIe链路的节能功能。
* 确保PCIe插槽的带宽分配正确(如x16, x8)。
Linux (以CentOS/RHEL/Ubuntu Server为例)
选择性能内核调度器
# 安装 tuned 工具
yum install tuned -y # RHEL/CentOS
# 或
apt install tuned -y # Ubuntu/Debian
# 启动并启用 tuned 服务
systemctl start tuned
systemctl enable tuned
# 切换到高性能模式
tuned-adm profile throughput-performance
# 其他有用模式:latency-performance(低延迟),virtual-host(虚拟化主机)调整内核参数 (/etc/sysctl.conf)
# 网络性能(Web/数据库服务器)
net.core.rmem_max = 134217728
net.core.wmem_max = 134217728
net.ipv4.tcp_rmem = 4096 87380 134217728
net.ipv4.tcp_wmem = 4096 65536 134217728
net.core.netdev_max_backlog = 300000
net.ipv4.tcp_no_metrics_save = 1
net.ipv4.tcp_congestion_control = cubic # 或 bbr(高延迟网络)
# 内存和虚拟内存
vm.swappiness = 10 # 减少交换倾向,对数据库特别重要
vm.dirty_ratio = 10
vm.dirty_background_ratio = 5
vm.overcommit_memory = 0 # 或根据应用需要设为1(如Redis)
# 文件系统
vm.max_map_count = 262144 # 对ES等应用重要 修改后执行sysctl -p 生效。
磁盘I/O调度器
# 查看磁盘的调度器
cat /sys/block/sda/queue/scheduler
# 对于SSD/NVMe,设置为 none (noop) 或 kyber/mq-deadline
echo 'none' > /sys/block/sda/queue/scheduler
# 持久化需修改grub或使用udev规则禁用不必要的服务关闭打印、蓝牙等无关服务。
Windows Server
电源计划控制面板 -> 电源选项 -> 选择“高性能”。
后台服务在“服务”管理中禁用非必需服务。
网络优化在网络适配器高级属性中,禁用“节能以太网”、“中断调节”等。
注册表调整针对网络和CPU调度进行高级优化(需谨慎)。
数据库 (MySQL/MariaDB, PostgreSQL)调整连接数、缓冲池大小、日志设置等,例如MySQL的innodb_buffer_pool_size 应设置为物理内存的70-80%。
虚拟化平台 (VMware ESXi, Proxmox, Hyper-V)确保CPU的硬件虚拟化(VT-x)已启用,并正确配置资源池、内存气球驱动等。
Web服务器 (Nginx/Apache)调整工作进程/线程数,与CPU核心数匹配。
特定计算应用使用Intel提供的性能库(如MKL、IPP)并设置正确的环境变量(如OMP_NUM_THREADS)。
调整前务必记录基准数据!
监控工具
top/htop查看CPU、内存实时使用。
iostat (yum install sysstat /apt install sysstat)监控磁盘I/O。
vmstat查看系统整体性能。
dstat综合监控工具。
perfLinux性能分析神器。
Intel专用工具Intel PCM (Performance Counter Monitor),VTune Profiler(深度性能分析)。
压力测试工具
stress /stress-ngCPU、内存、I/O压力测试。
fio专业的磁盘I/O基准测试。
sysbench综合基准测试(CPU、内存、文件I/O、数据库等)。
1、循序渐进:每次只修改1-2个设置,测试后再继续。
2、备份配置:修改BIOS前记录原设置;修改系统重要文件前先备份。
3、压力测试:任何调整后,都要进行充分的稳定性测试(如24小时压力测试)。
4、温度监控:高性能设置会增加功耗和发热,确保服务器散热良好,使用ipmitool监控带外管理口温度。
5、查阅官方文档:你的服务器品牌(戴尔、惠普、浪潮、联想等)有针对其硬件的最佳实践指南和性能调优白皮书,这是最权威的参考资料。
1、进入BIOS:开启Turbo Boost,启用XMP,设置性能模式,启用NUMA,根据需求调整C-State。
2、操作系统:Linux使用tuned设置高性能模式,调整sysctl内核参数;Windows设置高性能电源计划。
3、应用配置:根据具体运行的软件进行参数优化。
4、基准测试:调整前后使用相同工具测试性能(如Geekbench, SPECint, 业务压测)。
5、监控稳定性:长期监控系统日志和温度,确保稳定运行。
没有“一刀切”的最优配置,最佳设置始终取决于你的具体工作负载、硬件配置和业务目标,从关键参数开始,边测试边调整,是服务器调优的不二法门。
文章摘自:https://idc.huochengrm.cn/fwq/24645.html
评论