我将在秋季学习计算几何学类(class),我们将在该类(class)中用 C 或 C++ 实现一些算法并对它们进行基准测试。大多数学生生成一些数据集并使用 time
命令测量他们的程序,但我想更彻底一些。
我正在考虑编写一个程序来自动生成不同的数据集,用它们运行我的程序并使用 R 来检验假设和估计参数。
那么...如何更准确地衡量程序运行时间?
什么可能与测量相关?
哪些假设可能值得测试(方差、缓存造成的影响等)?
我应该在多台机器上测试我的代码吗?这些机器应该有何不同?
我的总体目标是了解这些算法在实践中的表现如何、哪些实现技术更好以及硬件的实际表现如何。
最佳答案
分析器很棒。 Valgrind 非常受欢迎。另外,如果您可以访问某些代码,我建议您在 risc 机器上试用您的代码。它们的性能特征以有趣的方式不同于 cisc 机器。
关于c++ - 测量计算几何算法的运行时间,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3250112/