Je ne connais aucun article de synthèse récent, mais je participe activement au développement de l'algorithme PFASST afin de pouvoir partager quelques réflexions.
Je connais trois grandes classes de techniques parallèles dans le temps:
- à travers la méthode - les étapes indépendantes de la RK ou des intégrateurs d'extrapolation peuvent être évaluées en parallèle; voir aussi le RIDC (algorithme de correction différée intégrale révisionniste)
- à travers le problème - relaxation de forme d'onde
- dans le domaine temporel - Parareal; PITA (algorithme parallèle dans le temps); et PFASST (schéma d’approximation complète parallèle dans l’espace et le temps).
Les méthodes parallélisées d'une méthode à l'autre fonctionnent généralement très près des spécifications mais n'évoluent pas au-delà d'une poignée de processeurs (temporels). Généralement, elles sont relativement plus faciles à mettre en œuvre que d’autres méthodes et sont utiles si vous avez quelques noyaux supplémentaires et que vous recherchez des accélérations prévisibles et modestes.
Les méthodes parallèles dans le domaine temporel comprennent Parareal, PITA, PFASST. Ces méthodes sont toutes itératives et comprennent des propagateurs "grossiers" peu coûteux (mais inexacts) et des propagateurs "fins" coûteux (mais précis). Ils obtiennent une efficacité parallèle en évaluant de manière itérative le propagateur fin en parallèle afin d'améliorer une solution en série obtenue à l'aide du propagateur grossier.
Les algorithmes de Parareal et de PITA présentent une limite supérieure assez malheureuse quant à leur efficacité parallèle : où est le nombre d'itérations nécessaires pour obtenir la convergence dans tout le domaine. Par exemple, si votre mise en œuvre Parareal a nécessité 10 itérations pour converger et que vous utilisez 100 processeurs (temporisés), l'accélération la plus grande que vous puissiez espérer serait 10x. L'algorithme PFASST assouplit cette limite supérieure en hybridant les itérations parallèles dans le temps avec les itérations de la méthode de progression temporelle à correction différée spectrale et en incorporant les corrections du schéma d'approximation complet à une hiérarchie des discrétisations spatio-temporelles.EE< 1 / KK
On peut jouer à de nombreux jeux avec toutes ces méthodes pour essayer de les accélérer, et il semble que la performance de ces techniques à travers le domaine dépende du problème que vous résolvez et des techniques disponibles pour accélérer le traitement grossier. propagateur (réseaux grossiers, opérateurs grossiers, physique grossière, etc.).
Quelques références (voir aussi les références listées dans les articles):
J'ai écrit deux implémentations de PFASST qui sont disponibles sur le net: PyPFASST et libpfasst .
Bien que ce message date maintenant de deux ans, au cas où quelqu'un tomberait dessus, laissez-moi vous donner une brève mise à jour:
Martin Gander a récemment écrit un bel article de synthèse qui donne une perspective historique sur le terrain et traite de nombreuses méthodes PINT différentes: http://www.unige.ch/~gander/Preprints/50YearsTimeParallel.pdf
Il existe maintenant aussi un site Web communautaire qui répertorie de très nombreuses références et décrit différentes méthodes: http://www.parallel-in-time.org/
Une discussion de l'algorithme parallèle dans le temps de Parareal en particulier peut être trouvée ici: https://en.wikipedia.org/wiki/Parareal
la source
la source