使用pystone估算多个系统的整体相对系统性能有哪些争议?

时间:2011-04-25 02:27:51

标签: python benchmarking

我正在启动一个分布式计算项目,有点像那里的各种@home项目(虽然没有做简单的科学计算,但偶尔让远程用户参与涉及音频和视觉刺激的呈现)我需要了解运行我的应用程序的机器之间的相对系统性能,以便我可以从非常低于标准的机器中排除数据(因为这些可能没有忠实地提供刺激)。该应用程序是用python编写的,我看到pystone模块提供了各种基准,但我也看到pystone在某些情况下被贬低为基准。对于我对基准测试的相对新手的理解,pystone可能不适合一般基准测试,因为它将性能降低到单个分数,但对于我的目的,我想要的只是单个分数来比较不同的机器,我认为它应该足够了。使用pystone来获得相对的整体系统性能是否有任何缺点?

1 个答案:

答案 0 :(得分:4)

Pystone作为任何(无论是Python解释器版本还是底层硬件)的基准测试的一个大问题是,它根本没有运用计算环境的足够不同方面。

整数算术,浮点算术,向量运算,专用媒体硬件,内存吞吐量,I / O吞吐量,高速缓存大小,线程架构,流水线架构......各种机器的硬件功能列表不断变化,这是回答“哪个更快,A或B?”的第一个问题的最大原因。通常是“嗯,你打算用它做什么?”。速度问题的答案可能会有所不同,具体取决于您是在构建家庭媒体中心还是Web服务器或数据库服务器等。

现代计算机系统是复杂的野兽,而解释器虚拟机与其自身的复杂对象和执行模型的分层并不会使事情变得更容易。像Pystone这样天真的基准测试可以让你大致了解CPU的基本计算咕噜声,但不会告诉你有关机器其他潜在限制因素的任何信息。