我一直在尝试对我在其上实现了Python分布式处理程序的所有计算机的FLOPS进行标准化估计。虽然我目前可以很好地计算pystone,但pystone并不是特别广为人知,我也不完全确定它们到底有多准确。
因此,我需要一种方法来计算各种机器上的FLOPS (或者已经计算的模块),这些机器可能具有任何种类的CPU,等等。由于Python是一种解释型语言,简单地计算执行一组操作所需的时间不会达到Linpack的水平。虽然我并不特别需要与基准测试中的一个大“名字”有完全相同的估计,但我希望它至少相当接近。
因此,有没有一种方法,或预先存在的模块,允许我获得FLOPS?否则,我唯一的选择就是编译成Cython,或者尝试根据CPU时钟速度来估计性能……
发布于 2012-09-07 13:30:34
Linpack,或高性能linpack,通常是测量flops的行业标准。我找到了一个python实现here,但它可能用处不大,标准实现(特别是如果您有集群的话)将使用HPL。除非你想用python实现你自己的并行linpack,否则HPL是最好的选择。这是top 500 list上的大多数怪物超级计算机用来测量其性能的
如果你真的下定决心要这样做,即使它可能没有意义或者没有太多用处,你可能会考虑将原始的MPI版本移植到0-MQ,它有一个很好的python接口。
https://stackoverflow.com/questions/12311020
复制相似问题