Paralel Hesaplamanın Sınırları


21

P'deki algoritmaları paralelleştirme hakkında bilinenleri çok merak ediyorum, konuyla ilgili şu wikipedia makalesini buldum:

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

Makale aşağıdaki cümleyi içerir:

NC = P olup olmadığı bilinmemektedir, ancak çoğu araştırmacı bunun yanlış olduğunu düşünmektedir, yani muhtemelen "doğal olarak sıralı" olan ve paralellik kullanarak önemli ölçüde telafi edilemeyen bazı izlenebilir problemlerin olduğu anlamına gelir.

Bu mantıklı geliyor mu? Paralellik kullanarak P'deki bir sorunun neden olamayacağı bilinen durumlar var mı?



Evet, kulağa mantıklı geliyor. Papadimitriou'nun Hesaplamalı Karmaşıklık adlı kitabında yer alan bir bölüm, bu konuyu öğrenmek için iyi bir açıklama sunmaktadır.
Tsuyoshi Ito

Yanıtlar:


17

NC = P olup olmadığı bile bilinmemektedir , ancak P-komple sorunların doğal olarak paralelleşmesi zor görünmektedir. Bunlar arasında Doğrusal Programlama ve Horn-SAT bulunur. (Buna karşılık, NC'deki problemler paralelleştirmek için oldukça kolay görünmektedir.)

Sorusu Bkz NC ve P arasındaki Sorunları: Bu listeden çözüldüğünü kaç? referans materyali için (şimdi ücretsiz olarak indirebileceğiniz klasik bir ders kitabına bağlantılar dahil) ve P'deki fakat paralelleştirilemediği bilinen sorunlar hakkında daha fazla tartışma.

NC ve P arasındaki karmaşıklık sınıflarının yapısı için Genelleştirilmiş Ladner Teoremi sorusuna bakın . Kısaca, eğer farklılarsa, kesinlikle NC ve P arasındaki sonsuz sayıda karmaşıklık sınıfı vardır.

Sorusu Bkz NC = P sonuçlarını? Ryan Williams'ın P'deki karmaşıklık sınıfları hiyerarşisindeki çöküntüleri PSPACE = EXP gibi daha muhtemel çöküşlere yükseltmenin mümkün olduğunu gösteren güzel bir gösteri için .

Horn-SAT'ın P-complete olmasının bir sonucunun ve yukarıdaki bağlantıların, yalnızca kullanmak üzere büyük ölçekli bir hesaplamayı yeniden yazamadığımız sürece veritabanlarındaki genel SQL sorgularını paralel hale getirmenin mümkün olmadığını belirtmeye değer. makul miktarda depolama. Bu şaşırtıcı bir tutarsızlık - bence sıkıştırma konusunda kısıtlamalar olduğunu belirtmek oldukça tartışılmaz , ancak çoğu zaman herhangi bir veritabanı sorgusunu paralel hale getirmenin mümkün olduğu varsayımı üzerine kurulu görünen makaleler görüyorum .


Kesinlikle, bir veritabanı sorgusunun herhangi bir bölümünü veya en azından herhangi bir basit şekilde paralize edemeyebilirsiniz. Bununla birlikte, bir veritabanı sorgusu (işleri basit tutmak için alt sorgular hariç) bazı birleştirilmiş masa üzerinde tam tablo taramasına indirgenebilir ve birleştirilmiş tablonun kendisi her zaman paralel olarak taranabilir. Bu nedenle, Oracle’da paralellik ayarlarını arttırdığınızda, indekslerden ziyade tam tablo taramalarını kullanmak daha meyillidir.
sclv

@sclv: Bu doğru, ancak genel olarak ara birleşimler girdi boyutunda üstel olabilir? Böylece, birleşme yerleri aracılığıyla paralellik gösterebilir, ancak üstel bir sayıda teli taramak zorunda kalmanın bedeli vardır.
András Salamon

1
Buradaki giriş boyutunu ne düşünüyorsunuz? Bir m varsa da, n yani en kötü durumda bağlı hiçbir olası orada daha iyi - o birçok tuples o kesin dönüş ihtimali her zaman vardır, çapraz katılmak. Ve bu teorik olandan daha pratiktir, ancak genel olarak bir tahminin bir satır boyunca performansını paralelleştirmekten endişe duymazsınız, ama IO verimi hakkında endişeleniyorsunuz, çünkü sınırın olacağı yer orası.
sclv

10

Bilinen vakalar olsaydı, P ve NC'yi ayırabilirdik. Fakat P-komple olduğu bilinen birçok problem var (yani logspace indirimleri altında) ve P = NC'yi P = NP için NP-komple problemlerin yaptığı gibi aynı tür engeller sunuyorlar. Bunların arasında doğrusal programlama ve eşleştirme (ve genel olarak maksimum akış) bulunur.

Ketan Mulmuley , P ile zayıf bir NC formunu (bit işlemleri olmadan) 1994'te geri ayıran bir sonuç olduğunu kanıtladı . Bir anlamda, P'ye karşı NP'in mevcut programı, bıraktığı yerden ( çok gevşek bir şekilde ) ayrıldı .

' Paralel Hesaplamada Limitler ' kitabı bununla ilgili daha çok şey içeriyor .


2
Dikkat. Eşleşmenin P-tamam olduğunu sanmıyorum. Eşleşmenin polinom kimlik testi ile RNC'de olduğu bilinmektedir (grafiğin Tutte matrisinin determinantı aynı sıfır ise test). P-tamamlanmış olsaydı, muhtemel çöküş P = RNC izlerdi.
slimton

argh. haklısın. Maksimum akışa sıkışmış olmalıydım. Düzeltme için teşekkürler.
Suresh Venkat

0

Benzer soruyu cevapladım . Bilimsel hesaplamada , Hesaplamalı Bilim alanındaki paralelleştirme ile telafi edilemeyen ünlü problemler / algoritmalar var mı ? Burada alıntı yapmama izin verin, çünkü böyle bir sorunun çok somut bir örneği üzerinde pratik bir bakış açısı sunar:

Eikonal denklemi çözmek için (ünlü) hızlı yürüyüş yöntemi paralelleştirme ile hızlanamaz. Paralelleşmeye daha elverişli olan Eikonal denkleminin çözümü için başka yöntemler (örneğin hızlı süpürme yöntemleri) vardır, ancak burada bile (paralel) hızlanma potansiyeli sınırlıdır.

Eikonal denklemindeki sorun, bilgi akışının çözümün kendisine bağlı olmasıdır. Gevşek bir şekilde konuşursak, bilgi karakteristikler boyunca akar (yani optikteki ışık ışınları), ancak özellikler çözümün kendisine bağlıdır. Ve ayrıklaştırılmış Eikonal denklemi için bilgi akışı daha da kötüdür, eğer herhangi bir paralel hızlandırma isteniyorsa ilave yaklaşımlar (hızlı süpürme yöntemlerinde dolaylı olarak bulunanlar gibi) gerektirir.

Paralelleştirme zorluklarını görmek için Sethian'ın web sayfasındaki bazı örneklerde olduğu gibi hoş bir labirent hayal edin . Labirent içerisindeki en kısa yoldaki (muhtemelen) hücre sayısı, ilgili problemi çözen herhangi bir (paralel) algoritmanın minimum adım / yineleme sayısı için düşük bir sınırdır.

(Ben "(muhtemelen)" yazarım, çünkü alt sınırların bilinmesi zor bir şekilde zordur ve çoğu zaman bir algoritma tarafından kullanılan işlemlerle ilgili bazı makul varsayımlar gerektirir.)

Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.