我有一个理论问题。如您所知,对于缩放分析,加速比定义为 S(N) = T(1) / T(N),其中 T(i) 是 i 个处理器的运行时间。然后将效率定义为 E(N) = S / N。这些定义对于强缩放非常有意义。
现在,我尝试计算我的程序的弱扩展效率。在这种情况下,会出现以下问题:这些公式对于弱缩放来说是无稽之谈。弱扩展意味着,处理器上的工作负载相同,处理器数量增加(因此总问题大小也是如此)。
使用上面的公式,一个完美的缩放程序将具有 1 的加速和 1/N 的效率——这完全不直观。
将弱缩放效率定义为 E(N) = S(1) / S(N) 似乎更合适。所以这是一个实际的问题:通常如何定义弱扩展效率?就像我说的那样更有意义?
我试图找出它,但我得到的只是众所周知的公式,可能隐含地仅用于强缩放