十年后数据库还是不敢拥抱NUMA-续篇

十年后数据库还是不敢拥抱NUMA-续篇

💡 原文中文,约6300字,阅读约需15分钟。
📝

内容提要

本文讨论了NUMA对数据库性能的影响,通过测试验证了BIOS和操作系统启动参数对NUMA的影响,发现设置numa=off并不能消除性能抖动。文章指出,CPU到内存的距离由物理决定,软件设置无法优化。建议不要设置numa=off。

🎯

关键要点

  • NUMA对数据库性能有显著影响,CPU到内存的物理距离决定了性能差异。
  • 设置numa=off并不能消除性能抖动,反而可能掩盖问题。
  • BIOS和操作系统的启动参数对NUMA的设置有重要影响。
  • 实验表明,BIOS设置为ON时,内存延时存在抖动,无论OS层面如何设置。
  • 内存交织的效果在不同的设置下表现出不同的延时特征。
  • lmbench和mlc测试结果显示,内存延时的稳定性与测试方法有关。
  • 建议不要在OS启动参数中设置numa=off,以避免隐藏NUMA结构带来的问题。

延伸问答

NUMA对数据库性能的影响是什么?

NUMA对数据库性能有显著影响,CPU到内存的物理距离决定了性能差异。

设置numa=off会有什么后果?

设置numa=off并不能消除性能抖动,反而可能掩盖问题。

BIOS和操作系统启动参数对NUMA的设置有什么影响?

BIOS和操作系统的启动参数对NUMA的设置有重要影响,BIOS设置为ON时内存延时存在抖动。

内存交织的效果是什么?

内存交织的效果在不同的设置下表现出不同的延时特征,可能导致性能差异。

为什么不建议在OS启动参数中设置numa=off?

不建议设置numa=off,因为这会隐藏NUMA结构带来的问题,无法解决性能抖动。

lmbench和mlc测试结果有什么不同?

lmbench和mlc测试结果不同,主要是因为两种测试方法的差异,但快慢差距基本一致。

➡️

继续阅读