You need to enable JavaScript to run this app.
最新活动
大模型
产品
解决方案
定价
生态与合作
支持与服务
开发者
了解我们

无串行分数情况下的并行加速比计算疑问

关于SuperLU-Dist加速比计算的疑问解答

嘿,先把你的实验信息梳理清楚:

  • 实验对象:并行软件包superlu-dist
  • 测试的处理器数量:4, 16, 32, 64
  • 对应壁钟时间:53.17s, 32.65s, 24.30s, 16.03s

标准加速比的计算公式是:

Speedup = serial time / parallel time

咱们直接说核心问题:不能直接取壁钟时间的倒数作为加速比。原因很简单:
加速比的本质是衡量并行程序相对于同任务串行版本的性能提升,它的基准是1个处理器运行该任务的串行时间。如果用并行时间的倒数来代替,相当于凭空假设串行时间为1,这完全偏离了加速比的原始定义,得到的数值也没办法反映真实的并行性能提升程度。

如果暂时拿不到串行时间,你可以考虑计算相对加速比:选某一个处理器规模(比如4核)的壁钟时间作为基准,计算其他规模相对于它的比值。比如16核的相对加速比就是53.17/32.65≈1.63,这样能看出不同并行配置之间的性能变化,但要注意这不是标准意义上的加速比,需要明确说明是基于某个基准的相对对比。

当然,最严谨的方式还是尽量跑一遍1核的串行版本(如果SuperLU-Dist支持的话),拿到真实的串行时间后,再计算标准加速比,这样的结果才是有说服力的。

内容的提问来源于stack exchange,提问作者Nawal

火山引擎 最新活动