6

我一直试图在我已经实现 Python 分布式处理程序的所有计算机上获得 FLOPS 的标准化估计。虽然我目前可以很好地计算 pystones,但 pystones 并不是特别为人所知,而且我不完全确定它们的准确度。

因此,我需要一种方法来计算(或已经完成它的模块)在各种机器上的 FLOPS,这些机器可能有任何种类的 CPU 等。因为 Python 是一种解释性语言,只需计算它所花费的时间一定数量的操作不会在例如 Linpack 的级别上执行。虽然我并不特别需要与基准测试中的大“名字”之一完全相同的估计,但我希望它至少相当接近。

因此,有没有办法或预先存在的模块让我获得 FLOPS?否则,我唯一的选择是编译成 Cython,或者尝试根据 CPU 时钟速度估计功能......

4

1 回答 1

5

Linpack 或高性能 linpack 通常是测量触发器的行业标准。我在这里找到了一个 python 实现,但它可能没有多大用处,标准实现(特别是如果你有一个集群)将使用HPL。除非您想在 python 中实现自己的并行 linpack,否则 HPL 是可行的方法。这是500 强名单上的大多数怪物超级计算机用来衡量其性能的方法

如果你真的很想这样做,即使它可能没有意义或没有多大用处,你可能想考虑将原始 MPI 版本移植到0-MQ,它有一个很好的 python 接口。

于 2012-09-07T05:30:33.830 回答