压测问题

一个好的问题描述有利于社区小伙伴更快帮你定位到问题,高效解决你的问题

【TiDB 使用环境】测试环境
【TiDB 版本】7.5.2
为了对比信创服务器,我装了完全一样的两个环境使用sysbench压测
都是物理机,intel的服务器配置远高于信创c86的,但是压测数据反而低很多
测试脚本
sysbench --config-file=config oltp_point_select --tables=32 --table-size=10000000 --db-ps-mode=auto --rand-type=uniform --time=300 --threads=16 run

看看大家有什么好的思路排查下问题

结果
信创c86的

intel的数据

Intel 服务器性能反低常见根因是 NUMA 未绑定、THP 未关闭,先统一两套机器系统内核与 TiKV 配置,再核对磁盘 fsync 时延就能定位差异

先统一两套机器系统内核与 TiKV 配置,再核对磁盘 fsync 时延就能定位差异

先统一两套机器系统内核

压测过程中,观察CPU使用率,内存和磁盘IO变化。
看下X86机器问题卡在什么地方。CPU高但是IO不行也是瓶颈。

抓一个 clinic 监控看看

建议先检查硬件差异点,重点看:

  1. CPU频率和NUMA拓扑:用lscpunumactl --hardware对比,信创C86通常单核频率较低,但多核并行可能优化不同。试试绑定CPU:numactl --cpunodebind=0 --membind=0 sysbench ...

  2. 磁盘IO:用fio --randread=4k --size=10G --runtime=60对比随机读延迟,TiDB对磁盘延迟敏感,信创盘可能慢。

硬件差异特别大吗

都一样的操作系统版本

只是测试点查也慢,不涉及io

测不涉及磁盘io的也慢不少

问题已经查清楚了,cpu需要开性能模式,压测时候默认降频跑的,开之前tps6000,开了后37000

要么全部本地跑 sysbench,要么全部同一台客户端远程压,推荐本地 unix socket 压测消除网络变量。

万兆光纤,不会有网络瓶颈

硬件配置更高,但性能反而更低?

cpu动态频率

先统一两套机器系统内核

先对齐变量:CPU 频率/节能策略、NUMA、磁盘是否同为数据盘、TiKV block-cache、线程绑核、网卡中断。Intel 机器“账面更强”但若开省电、跨 NUMA、磁盘更慢或 TiDB/TiKV 部署不对称,point_select 会被单线程延迟拖累。用 Dashboard 看 TiKV 99 延迟与 CPU 利用率;同机跑 fio/stream 基线,再比 sysbench。

先统一两套机器系统内核