报告/可视化可扩展性来自MPI代码......这将是最好的方法吗?

时间:2013-05-01 19:16:49

标签: matrix mpi scalability scalapack

作为我研究的一部分,我使用ScaLAPACK计算了不同带状系统的并行解决方案。我有兴趣报告实现的加速是矩阵的等级, r 及其带宽 b 的函数。

如何更好地实现这一目标?

这是我选择的两个值的Universe:

{10,000 25,000 50,000 75,000 100,000 500,000 1,000,000 5,000,000 10,000,000}

中的

r {2 4 8 16 32 64 128 256 512 1024}

中的

b

我使用的群集共有64个核心,因此 p 位于{1, ..., 64}

我计算了加速和效率, s e ,作为 p r的函数 b

我的目标是以某种方式显示基于 r b 的加速效果。我在考虑创建(r,b)空间的某种表面投影。但是如何在一个值中恢复加速行为?

我的建议是使用达到的和理想的(线性)加速来计算Pearson相关系数,然而,这似乎不起作用,因为它没有考虑“加速甜点”的存在因较小的 r 值而出现。

任何提示?

提前致谢!

1 个答案:

答案 0 :(得分:1)

在考虑了这个问题之后,我决定报告,最佳实现的加速乘以Pearson线性相关系数。

这样的情节如下:

enter image description here

每个实例(r,b)实现的最佳加速比由“接近线性”的方式加权,Pearson线性相关系数包含的信息。由于前者是[-1,1]中定义的值,因此,对于远离线性的加速,我们将得到0,而当预期时,负值将显示减速。在附图中,我们可以看到并行求解器确实会对小带宽值产生适当的可扩展性,并且随着此值的增加会变得更糟。

如果你们有任何提示或任何更正,请告诉我们;)