并行计算的局限性


21

从广义上讲,我对P中并行化算法的了解感到好奇。我找到了以下有关该主题的维基百科文章:

http://en.wikipedia.org/wiki/NC_%28complexity%29

本文包含以下句子:

是否NC = P尚不清楚,但是大多数研究人员怀疑这是错误的,这意味着可能存在一些棘手的问题,这些问题“固有地是顺序的”,并且不能通过使用并行性显着加速

听起来合理吗?是否有已知情况无法使用并行处理加快P中的问题?



是的,听起来很合理。Papadimitriou 撰写的《计算复杂性》一书中的一章为学习该主题提供了很好的解释。
伊藤刚(Tsuyoshi Ito)2010年

Answers:


17

甚至不知道NC是否等于P,但是P完全问题似乎本质上很难并行化。其中包括线性编程和Horn-SAT。(相反,NC中的问题似乎很容易并行化。)

请参阅问题NC和P之间的问题:此列表中有多少已解决?参考资料(包括现在可以免费下载的经典教科书的链接),以及有关P中存在但未知可并行化的问题的进一步讨论。

有关NC和P之间的复杂度类别的结构,请参阅问题广义Ladner定理。简要地说,如果它们不同,则严格地说NC和P之间存在无限多个复杂度类别。

看到问题NC = P的后果吗?对于Ryan Williams的一个很好的演示,可以将P中复杂性类的层次结构中的崩溃放大为可能更不可能的崩溃,例如PSPACE = EXP

值得指出的是,Horn-SAT具有P-complete的一个后果以及上面的链接似乎无法并行化数据库中的一般SQL查询,除非我们也可以重写任何大规模计算以仅使用合理的存储量。这是一个令人费解的差异-我认为陈述压缩的限制是没有争议的,但是我经常看到一些文章似乎是建立在可以并行化任何数据库查询的假设之上的。


当然,您可能无法并行化数据库查询的任何给定部分,或者至少不能以任何直接的方式并行化。但是,可以将数据库查询(不包括子查询,以简化操作)简化为对某些联接表进行全表扫描,并且可以始终并行扫描联接表本身。这就是为什么当您在Oracle中增加并行设置时,更倾向于使用全表扫描而不是索引。
sclv 2011年

@sclv:的确如此,但是一般而言,中间联接的输入大小可以是指数的?因此,可以通过联接进行并行化,但是以必须扫描指数数量的元组为代价。
安德拉斯·萨拉蒙

1
您认为这里的输入大小是多少?另外,如果您有一个m - o交叉联接,那么总是有可能精确地返回那么多的元组-也就是说,在最坏的情况下没有更好的界限。这比理论上更实际,但是总的来说,您不必担心要并行处理谓词的性能,而要担心的是IO吞吐量,因为这很容易造成限制。
sclv 2011年

10

好吧,如果有已知的情况,那么我们就可以将P和NC分开。但是,有许多已知的问题是P完全问题(即,在对数空间缩减下),并且与NP完全问题一样,它们也呈现出相同的障碍来显示P = NC。其中包括线性编程和匹配(通常是最大流量)。

Ketan Mulmuley 早在1994年就证明了将P和弱形式的NC(无位操作)分离的结果。从某种意义上说,他目前的P vs NP程序是从中断的地方开始的(非常宽松的方式)。

并行计算极限》一书对此有更多介绍。


2
谨防。我不认为匹配是P完全的。已知通过多项式恒等检验(在该图的Tutte矩阵的行列式是否等于零的情况下进行检验)在RNC中进行匹配。如果它是P完全的,那么随后将发生不太可能的崩溃P = RNC。
slimton 2010年

啊 你是对的。我应该坚持最大流量。感谢您的纠正。
Suresh Venkat 2010年

0

我回答了类似的问题,科学计算中是否存在无法通过并行计算计算科学站点上加速的著名问题/算法。让我在这里引用它,因为它为这种问题的一个非常具体的实例提供了实用的观点:

不能通过并行化加快求解Eikonal方程的(著名的)快速行进方法。还有其他方法(例如快速扫描方法)可以更容易地并行化Eikonal方程,但即使在这里,(并行)加速的潜力也受到了限制。

Eikonal方程的问题在于信息流取决于解本身。松散地说,信息沿着特性(即光学中的光线)流动,但是特性取决于解决方案本身。离散的Eikonal方程的信息流甚至更糟,如果需要任何并行加速,则需要附加的近似值(例如快速扫描方法中隐含的近似值)。

要了解并行化的困难,请想象一个不错的迷宫,就像Sethian网页上的一些示例中那样。通过迷宫的最短路径上的像元数目(可能)是解决相应问题的任何(并行)算法的最小步数/迭代次数的下限。

(我之所以写“(可能)是”,是因为众所周知,下界很难证明,并且通常需要对算法使用的运算进行一些合理的假设。)

By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.