Herhangi bir tamamlayıcı problemin, verimli bir paralel algoritmaya sahip olması muhtemel değildir. Niye ya ?P
Varlığı -tamamlamak sorunların en önemli ipucu olduğunu . O zaman soru şu ki, bu varsayım neden paralel hesaplama ile ilgili? Bir hesaplamada kullanılan kaynaklarla başlayalım. Sıralı hesaplama için: zaman ve mekan; paralel hesaplama için: zaman ve donanım (işlemci sayısı). Bir ilişki var mı? Evet! Sıralı uzay ↔ paralel zaman; Sıralı zaman ↔ paralel donanım. Sıralı uzay ve paralel zaman arasındaki yazışma, kabul edilen paralel hesaplama modelinden bağımsız görünmektedir; bu , kanıtlanmamış paralel hesaplama tezi olarak adlandırılan aşağıdakilere yol açar .P(P∩POLYLOGSPACE)≠P
(Chandra ve Stockmeyer) Bir TM'nin uzay karmaşıklığı olan her hesaplaması, paralel bir hesaplama modelinde ve her hesaplamasında simüle edilebilir . zaman karmaşıklığına sahip paralel bir hesaplama modeli, alan karmaşıklığına sahip bir TM tarafından simüle edilebilir .T ( n ) = 0 ( S ( n ) 0 ( 1 ) ) T ′ ( n ) S ′ ( n ) = 0 ( T ′ ( n ) 0 ( 1 ) )S(n)T(n)=O(S(n)O(1))T′(n)S′(n)=O(T′(n)O(1))
Sorunların sınıf polinom uzayda sıralı çözülebilir ve polinom zamanda çözülebilir sorunlar kümesidir gerdiği daha sorunlardan çok daha büyük sınıf olduğu düşünülmektedir , tez etkili iyileştirme paralellik sayesinde mümkün rakamlarla. Bu tezin bir sonucu olarak, bir PRAM polinom zamanında ilgili sorunları çözebilir … Ne yazık ki, hayır! Paralel hesaplama tezi, aslında ait problemlerle başa çıkabileceğimizi gösteriyor.P P G P bir Cı- e P K P P G P bir Cı- ePSPACEPPSPACEPNPPSPACE… Ama bu, üstel bir sayıda işlemci gerektirir! Bir zaman-uzaması değişiyor: Sıralı hesaplama modelindeki üssel zaman, paralel hesaplama modelinde üssel sayıdaki işlemcilere dönüştürülürken, sıralı hesaplama modelindeki polinom alan paraleldeki bir polinom zamanına dönüştürülür. hesaplama modeli.
Paralel zaman ve paralel donanımı kısıtlamaya çalışırsak bu değişimin anlaşılması daha kolaydır: paralel hesaplama modelinde çok sayıda işlemci varsa, paralel polinom zamanında çözülebilen sorunların sınıfı . İşlemcilerin sayısını bir polinomla sınırlandırırsak, sıralı bir makinenin performansını artırabiliriz, ancak bir polinom faktöründen daha fazlasını değil. Böylece zaman karmaşıklığını temsil eden polinomun derecesini azaltabiliriz, ancak üssel maliyetleri polinom maliyetlerine düşürmek için paralellik kullanamayız.P
Polinom zaman karmaşıklığına paralel olarak çözülen problemler ait olan problemlerdir . İşlemci sayısındaki polinom kısıtı, TM'ye eşdeğer bir paralel hesaplama modeline yol açar. İki önemli pratik husus vardır: Hangi polinom işlemci sayısı kabul edilebilir / uygun fiyatlı? Uygulamada, polinom işlemci sayısının doğrusal veya yakın olması amaçlanmıştır. Hangi alt polinom zamanı başarılabilir? Hemen hemen tüm yüksek oranda paralel uygulanabilir problemlerin poliokaritmik paralel zaman elde edebileceği ortaya çıktı. Paralel olarak, giriş uzunluğunda logaritmik olan bir zaman karmaşıklığı verimli bir paralel hesaplamayı temsil eder. Bir polinom sayıdaki işlemciye verilen zaman karmaşıklığının pollogaritmik olması durumunda paralel bir algoritmanın verimli olduğu kabul edilir.P
ve sabit olduğu bir sorun göz önüne alındığında , paralel hesaplama tezi, için zaman karmaşıklığı olan bir paralel algoritmanın varlığına işaret eder burada sabittir. Ardışık ve paralel zaman arasındaki karşılaştırma, çok paralel bir problem olarak sınıflandırmayı sağlar (zaman perspektifinden).k h R O ( ( l O g n ) k ' ) k ' R,R∈TIME_SPACETM(nk,(logn)h)khRO((logn)k′)k′R
Paralel hesaplama tezinden, son derece paralelleştirilebilen problemler sınıfı olduğunu . , kütük boşluğu azaltma konusunda tam bir problem içermemektedir; bu anlamına gelir . Öyle görünüyorP O L -Y L O G S P A Cı- e P O L -Y L O G S P A Cı- e ≠ PPOLYLOGSPACEPOLYLOGSPACEPOLYLOGSPACE≠P
- POLYLOGSPACE⊄P
- P⊄POLYLOGSPACE
P P - ( P ∩ P O L -Y L O G S P A Cı- e )P∩POLYLOGSPACE polinom zamanlarında pollogaritmik uzay kullanılarak çözülebilen problemleri içerir. tamamlayıcı problemler muhtemelen aittir .PP−(P∩POLYLOGSPACE)
O ( ( l O g n ) k ) ) Ç ( f ( n ) ) f , n , N Cı- ⊂ ( P ∩ P O L -Y L O G S P A Cı- e )NC (Nick'in sınıfı - Nicholas Pippenger'ın onuruna denir, ilk 1979'da tanımlayan ve karakterize eden ilk kişi), pollogaritmik zamanda çözülebilen sorunların sınıfıdır (yani, zaman karmaşıklığı ile (ile sınırlanan Ie, işlemci bir polinom sayıda bir polinom fonksiyonu paralel hesaplama tezi eder) sorunu boyutu .O((logn)k))O(f(n))fnNC⊂(P∩POLYLOGSPACE)
Bununla birlikte, ne yazık ki, tanımı gereği da bir çok problem içerir değildir verimli, paralel. En rezil örnek paralel ikili aramadır . Sorun bu sorun için bile polylogarithmic zaman karmaşıklığı olmasıdır = en kötü durumda en logaritmik zamanda gerektiren 1. Herhangi sıralı algoritma olduğunu bağımsız olarak paralel fizibilite!p N CNCpNC
Şimdi, nihayetinde tamamlayıcı sorunların en zor paralelleştirilebilen sorunlar olduğunu açıklayabiliriz . problem verildiğinde , verimli bir paralel algoritmanın varlığı çok düşüktür: eğer böyle bir paralel algoritma zaman karmaşıklığına sahipse, paralel hesaplama tezi Aynı problem için boşluk karmaşıklığı olan sıralı bir algoritma . Yana a, -Komple sorun da, bu her problem, söz konusu edecek, : poli-günlük alanı içinde çözülebilir . Bildiğiniz gibi, biz bunun yerine buna inanıyoruzP S O ( ( l O g n ) k ) O ( ( l O g n ) k ' ) S P P ( P ∩ P O L -Y L O G S P A Cı- e ) = P ( P ∩ P O L , Y L O G S P A Cı- e )PPQO((logn)k)O((logn)k′)QPP(P∩POLYLOGSPACE)=P(P∩POLYLOGSPACE)⊂P , henüz bunu ispatlayamasak bile.
Polinom işlemci gereksinimi hakkında son bir gözlem. Bu teorik bir ifadedir. Uygulamada: Problem boyutundan daha hızlı büyüyen bir işlemci gereksinimi gerçekten işe yaramayabilir.