并行处理实际上是否可行?

时间:2009-11-04 12:39:15

标签: parallel-processing

我见过在同一主板上有两个处理器的新电脑。 如何在同一主板上的两个处理器正常工作,因为它将像两个大脑(试图)控制一个主体,实际上他们如何执行并行处理,它实际上是这样做的吗?

1 个答案:

答案 0 :(得分:7)

如果两个(或更多)CPU /核心想要访问同一资源,则有规则决定谁获胜。通常,一个CPU稍后会尝试访问它,因此必须等待。如果两个CPU实际上想要在同一时间访问同一资源,那么规则将确保获胜。今天,规则变得非常复杂,以确保一个CPU不能占用资源(耗尽另一个)。

缓存是一个非常复杂的部分;每个CPU都会将部分真实RAM复制到其缓存中。这意味着如果CPU 1在其高速缓存中具有地址X并且CPU 2读取或写入该地址,则可能发生有趣的事情。解决这个问题的技术是地址嗅探(CPU 1注意到CPU 2想要查看并发送信号告诉它此地址的内容现在无效),RAM的分段(CPU实际上看不到大多数RAM,所以只有很小的重叠,这个问题实际上可能发生),或者一个特殊的缓存总线,其中CPU的缓存相互通信(“我只读了这个地址”,“我正在写X到地址“)。

这是一个非常复杂的领域,每天都变得越来越复杂。据我们所知,这是让Moore's Law再保持几年的唯一方法。

有关详细信息,请参阅Wikipedia article