Herhangi bir gözden geçirme makalesinden haberdar değilim, ancak PFASST algoritmasının geliştirilmesine aktif olarak katılıyorum, bu yüzden bazı düşünceleri paylaşabilirim.
Farkında olduğum üç geniş zaman paralel teknik sınıfı var:
- yöntemde - bağımsız RK veya ekstrapolasyon entegratörlerinin aşamaları paralel olarak değerlendirilebilir; ayrıca bakınız RIDC (revizyonist integral ertelenmiş düzeltme algoritması)
- problemin karşısında - dalga formu gevşemesi
- etki alanı boyunca - Parareal; PITA (zaman algoritmasında paralel); ve PFASST (uzayda ve zamanda paralel tam yaklaşım şeması).
Metoda paralel olan metotlar genellikle spesifikasyona çok yakın performans gösterir ancak bir avuç (zaman) işlemcisinin ötesinde ölçeklendirme yapmaz. Tipik olarak uygulamak diğer yöntemlerden daha kolaydır ve etrafta yattığınız birkaç fazla çekirdek varsa ve öngörülebilir ve mütevazı hızlanmalar arıyorsanız iyi bir yöntemdir.
Zaman alanı boyunca paralel olan yöntemler arasında Parareal, PITA, PFASST bulunur. Bu yöntemlerin tümü yinelemelidir ve ucuz (ancak hatalı) "kaba" çoğaltıcılardan ve pahalı (ancak doğru) "iyi" çoğaltıcılardan oluşur. Kaba çoğaltıcı kullanılarak elde edilen seri bir çözümü geliştirmek için ince yayıcıyı yinelemeli olarak değerlendirerek paralel verimlilik elde ederler.
Parareal ve PITA algoritmaları, paralel etkinlikleri : bağlı olan talihsiz bir üst sınırdan muzdariptir; burada , etki alanı boyunca yakınsama elde etmek için gereken yineleme sayısıdır. Örneğin, Parareal uygulamanız bir araya gelmek için 10 yineleme gerektiriyorsa ve 100 (zaman) işlemci kullanıyorsanız, ümit edebileceğiniz en yüksek hız 10x olacaktır. PFASST algoritması, zaman-paralel yinelemeleri, Spektral Ertelenmiş Düzeltme zaman-adımlama yönteminin yinelemeleri ile melezleyerek ve bir uzay / zaman ayrıklaştırma hiyerarşisine Tam Yaklaşım Şeması düzeltmelerini dahil ederek bu üst sınırlamayı gevşetir.EE<1/KK
Birçok oyun, onları denemek ve hızlandırmak için bu yöntemlerin hepsiyle oynanabilir ve bu etki alanı genelinde kullanılan tekniklerin performansı, hangi sorunu çözdüğünüze ve kaba hızlandırmak için hangi tekniklerin mevcut olduğuna bağlıdır. yayıcı (kaba ızgaralar, kaba operatörler, kaba fizik vb.)
Bazı referanslar (ayrıca makalelerde listelenen referanslara bakın):
Bu makale, yöntemde çeşitli yöntemlerin nasıl paralelleştirilebileceğini göstermektedir: Yüksek mertebeden açık Runge-Kutta, ekstrapolasyon ve ertelenmiş düzeltme yöntemlerinin teorik olarak karşılaştırılması ; Ketcheson ve Waheed.
Bu yazı aynı zamanda yöntem boyunca paralelleşmenin güzel bir yolunu gösterir ve RIDC algoritmasını sunar: Paralel yüksek dereceli integraller ; Christlieb, MacDonald, Ong.
Bu makale PITA algoritmasını tanıtmaktadır: Doğrusal Olmayan Yapısal Dinamik Problemlerin Çözümünü Hızlandırmak için Bir Zaman Paralel Örtük Yöntem ; Kortial ve Farhat.
Parareal hakkında birçok makale var (sadece Google).
İşte Nievergelt metodu üzerine bir makale: Paralel zaman entegrasyonuna minimal iletişim yaklaşımı ; Barker.
Bu makale PFASST'ı tanıtmaktadır: kısmi diferansiyel denklemler için zaman yönteminde etkin bir paralele doğru ; Emmett ve Minion;
Bu raporlar, PFASST'ın düzgün bir uygulamasını açıklar: Çok büyük bir uzay-zaman paralel N-vücut çözücü ; Benek, Ruprecht, Krause, Emmett, Minion, Windel, Gibbon.
PFASST'ın 'net üzerinde mevcut olan iki uygulamasını yazdım: PyPFASST ve libpfasst .