【 TiDB 使用环境】生产环境
【 TiDB 版本】V6.5.8
【遇到的问题:问题现象及影响】TIDB部署时候NUMA绑核对性能影响,这块我从网上搜了很多文档,有些基于sysbench压测的数据指标,开启NUMA绑核后性能会有20%的提升,这块哪位大神在生产环境压测过呢?
生产也会有性能差距,具体差距多少,得根据实际测试业务以及并发等多个因素决定。尤其测到数据库稍微有瓶颈时候,差距又会明显一些
NUMA绑核主要是在TIKV层配置效果更明显吧,对于TIDBServer上也需要绑核么?我也是初次使用,不是很了解
numa绑核是不是在混合部署的时候用的,正常部署需要绑核吗?
需要的。 通常tidb-server对cpu最多使用24core,机器cpu很多的话 还是建议绑定 。
比如机器是128c512g。8个numa node。那么单个就是16c64g。这时候 这台机器只部署tidb-server的话,就建议部署8个或4个tidb-sevrer。部署4个的话,就一个tidb-server绑定2个numa。8个的话就绑定1个numa。
得看机器,一般我们都会给绑核
确实有道理,虽然TIDB有计算下推的能力,但是TIDBServer其实还会处理一些全局排序的结果,绑核后性能会更好些,我下周准备环境测试一把,感谢支持
还有一点是,以前一般是uma架构,就是统一内存访问,现在这种numa是not uniform memory acess。这样的话,跨numa访问,cpu和memory效率可能会降低。因此绑定numa,可以让cpu就近访问自己对应的那块内存,效率也会有所提升。再一个绑定numa可以相对比较好的隔离资源
如果一个机器只部署单节点的话,numa绑定不绑定区别不大,如果一个机器部署多个节点的话,还是没个节点绑定不同的numa会更加合适
可以先在测试环境试下。 看文档不如做个试验来的实在, 自己得到的结论更深刻。
这个在ARM架构的主机更明显些,大概有5倍性能差距;
如果x86的话,隔壁的数仓产品测试下来大概有40%的性能差距,不过numa绑核之后意味着可用内存降低,这个得权衡下
ARM架构上有这么高的提升呀,太惊讶了
嗯呢,下周准备测试
ARM架构特别合适这种操作
还是得开启和关闭 NUMA 绑核时进行对比看看
一般数据库都不建议使用numa
正在准备开始搞了
看看有没有测试报告学习学习
有结论后群里同步
拭目以待,我们打算6服务器部署,怎么部署要不要numa暂时还没想好