缓存效果超线性加速 - 不公平比较?

时间:2012-11-05 15:48:15

标签: parallel-processing

众所周知,当使用多个处理器时,由于缓存效应可能会发生超线性加速,因为问题的每个分区都完全适合,加快了顺序算法的内存事务,顺序算法会多次交换进出。我已经看过几十个例子,背后的逻辑很清楚,并且很好地解释了并行部分。

然而,每次他们与顺序算法进行比较时,顺序算法是一个非常天真的解决方案,具有0 ... N的大循环。

是否认为顺序解决方案可以做与并行解决方案相同的技巧? (即分区问题并按顺序解决每个分区,使其适合缓存)。换句话说,只需在一个线程中运行并行解决方案。通过这样做,人们可以期待线性加速而不是原始思维的超线性。

我在这里缺少什么?对于一个已经存在了几十年的概念,这种反逻辑似乎过于简单。

这个问题是在一位老师告诉我“超级线性加速是不可能的,你可以随时改进顺序加速以便再次出现线性加速”之后出现的。我无法证明相反的情况。

1 个答案:

答案 0 :(得分:0)

超线性加速可能来自这样一个事实:不仅处理器数量增加,而且缓存量也增加。顺序情况下分割数据的方法不会增加缓存。