当前位置:嗨网首页>书籍在线阅读

20-基准

  
选择背景色: 黄橙 洋红 淡粉 水蓝 草绿 白色 选择字体: 宋体 黑体 微软雅黑 楷体 选择字体大小: 恢复默认

3.6 基准

当业务需求发生变化,并且你的程序需要更高效地运行时,首先要做的是找出程序中速度较慢的部分。如何知道程序的瓶颈在哪里?可以通过在各种预期区间或输入量上测试程序的各个部分来判断。这被称为代码的基准测试。基准测试通常会在开发的最后阶段(但不绝对)进行,以便对代码中存在性能缺陷的部分进行识别和优化。

为程序进行基准测试的方法有多种。最简单的方法是使用UNIX操作系统的时间工具来记录更改后的程序的执行时间,但这样并不能提供精确的微观层面的洞察。Rust为我们提供了一个微观基准框架。对于微观基准测试,这个框架可以单独对代码中的各个部分进行基准测试,而不受外部因素的影响。然而,这也意味着我们不应该仅依赖于微观基准,因为现实世界的结果可能会有所偏差。因此,微观基准之后通常会进行代码分析和宏观基准测试。尽管如此,微观基准测试通常是提高代码性能的起点,因为各个部分对程序的整体运行时间有很大影响。

在本节中,我们将讨论Rust内置的微观基准性能测试工具。Rust降低了在开发初始阶段编写基准测试代码的门槛,而不是将它作为最后的手段。运行基准测试的方式和运行普通测试的方式类似,但是使用的是cargo bench命令。