Parareal: Difference between revisions

From Wikipedia, the free encyclopedia
Content deleted Content added
Danrup (talk | contribs)
Extended discussion of stability problems.
Danrup (talk | contribs)
Additional references, extended discussion of instability and Krylov-subspace enhanced Parareal.
Line 225: Line 225:


=== Instability for imaginary eigenvalues ===
=== Instability for imaginary eigenvalues ===
The vanilla version of Parareal has issues for problems with imaginary [[Eigenvalues and eigenvectors|eigenvalues]].<ref>{{Cite journal|last=Gander|first=M.|last2=Vandewalle|first2=S.|date=2007-01-01|title=Analysis of the Parareal Time‐Parallel Time‐Integration Method|url=http://epubs.siam.org/doi/abs/10.1137/05064607X|journal=SIAM Journal on Scientific Computing|volume=29|issue=2|pages=556–578|doi=10.1137/05064607X|issn=1064-8275}}</ref> It typically only converges toward the very last iterations, that is as <math>k</math> approaches <math>P</math>, and the speedup <math> S_p</math> is always going to be smaller than one. So either the number of iterations is small and Parareal is unstable or, if <math>k</math> is large enough to make Parareal stable, no speedup is possible. This also means that Parareal is typically unstable for [[Hyperbolic partial differential equation|hyperbolic]] equations.<ref>{{Cite book|url=http://link.springer.com/chapter/10.1007/3-540-26825-1_46|title=Stability of the Parareal Algorithm|last=Staff|first=Gunnar Andreas|last2=Rønquist|first2=Einar M.|date=2005-01-01|publisher=Springer Berlin Heidelberg|isbn=9783540225232|editor-last=Barth|editor-first=Timothy J.|series=Lecture Notes in Computational Science and Engineering|pages=449–456|language=en|doi=10.1007/3-540-26825-1_46|editor-last2=Griebel|editor-first2=Michael|editor-last3=Keyes|editor-first3=David E.|editor-last4=Nieminen|editor-first4=Risto M.|editor-last5=Roose|editor-first5=Dirk|editor-last6=Schlick|editor-first6=Tamar|editor-last7=Kornhuber|editor-first7=Ralf|editor-last8=Hoppe|editor-first8=Ronald|editor-last9=Périaux|editor-first9=Jacques}}</ref> Even though the formal analysis by Gander and Vandewalle covers only linear problems with constant coefficients, the problem also arises when Parareal is applied to the nonlinear [[Navier-stokes equations|Navier-Stokes equations]] when the [[viscosity]] coefficient becomes too small and the [[Reynolds number]] too large.<ref>{{Cite book|url=http://link.springer.com/chapter/10.1007/978-3-319-10705-9_19|title=Convergence of Parareal for the Navier-Stokes Equations Depending on the Reynolds Number|last=Steiner|first=Johannes|last2=Ruprecht|first2=Daniel|last3=Speck|first3=Robert|last4=Krause|first4=Rolf|date=2015-01-01|publisher=Springer International Publishing|isbn=9783319107042|editor-last=Abdulle|editor-first=Assyr|series=Lecture Notes in Computational Science and Engineering|pages=195–202|language=en|doi=10.1007/978-3-319-10705-9_19|editor-last2=Deparis|editor-first2=Simone|editor-last3=Kressner|editor-first3=Daniel|editor-last4=Nobile|editor-first4=Fabio|editor-last5=Picasso|editor-first5=Marco}}</ref>
The vanilla version of Parareal has issues for problems with imaginary [[Eigenvalues and eigenvectors|eigenvalues]].<ref>{{Cite journal|last=Gander|first=M.|last2=Vandewalle|first2=S.|date=2007-01-01|title=Analysis of the Parareal Time‐Parallel Time‐Integration Method|url=http://epubs.siam.org/doi/abs/10.1137/05064607X|journal=SIAM Journal on Scientific Computing|volume=29|issue=2|pages=556–578|doi=10.1137/05064607X|issn=1064-8275}}</ref> It typically only converges toward the very last iterations, that is as <math>k</math> approaches <math>P</math>, and the speedup <math> S_p</math> is always going to be smaller than one. So either the number of iterations is small and Parareal is unstable or, if <math>k</math> is large enough to make Parareal stable, no speedup is possible. This also means that Parareal is typically unstable for [[Hyperbolic partial differential equation|hyperbolic]] equations.<ref>{{Cite book|url=http://link.springer.com/chapter/10.1007/3-540-26825-1_46|title=Stability of the Parareal Algorithm|last=Staff|first=Gunnar Andreas|last2=Rønquist|first2=Einar M.|date=2005-01-01|publisher=Springer Berlin Heidelberg|isbn=9783540225232|editor-last=Barth|editor-first=Timothy J.|series=Lecture Notes in Computational Science and Engineering|pages=449–456|language=en|doi=10.1007/3-540-26825-1_46|editor-last2=Griebel|editor-first2=Michael|editor-last3=Keyes|editor-first3=David E.|editor-last4=Nieminen|editor-first4=Risto M.|editor-last5=Roose|editor-first5=Dirk|editor-last6=Schlick|editor-first6=Tamar|editor-last7=Kornhuber|editor-first7=Ralf|editor-last8=Hoppe|editor-first8=Ronald|editor-last9=Périaux|editor-first9=Jacques}}</ref> Even though the formal analysis by Gander and Vandewalle covers only linear problems with constant coefficients, the problem also arises when Parareal is applied to the nonlinear [[Navier-stokes equations|Navier-Stokes equations]] when the [[viscosity]] coefficient becomes too small and the [[Reynolds number]] too large.<ref>{{Cite book|url=http://link.springer.com/chapter/10.1007/978-3-319-10705-9_19|title=Convergence of Parareal for the Navier-Stokes Equations Depending on the Reynolds Number|last=Steiner|first=Johannes|last2=Ruprecht|first2=Daniel|last3=Speck|first3=Robert|last4=Krause|first4=Rolf|date=2015-01-01|publisher=Springer International Publishing|isbn=9783319107042|editor-last=Abdulle|editor-first=Assyr|series=Lecture Notes in Computational Science and Engineering|pages=195–202|language=en|doi=10.1007/978-3-319-10705-9_19|editor-last2=Deparis|editor-first2=Simone|editor-last3=Kressner|editor-first3=Daniel|editor-last4=Nobile|editor-first4=Fabio|editor-last5=Picasso|editor-first5=Marco}}</ref> Different approaches exist to stabilise Parareal<ref>{{Cite journal|last=Dai|first=X.|last2=Maday|first2=Y.|date=2013-01-01|title=Stable Parareal in Time Method for First- and Second-Order Hyperbolic Systems|url=http://epubs.siam.org/doi/abs/10.1137/110861002|journal=SIAM Journal on Scientific Computing|volume=35|issue=1|pages=A52–A78|doi=10.1137/110861002|issn=1064-8275}}</ref><ref>{{Cite journal|last=Farhat|first=Charbel|last2=Cortial|first2=Julien|last3=Dastillung|first3=Climène|last4=Bavestrello|first4=Henri|date=2006-07-30|title=Time-parallel implicit integrators for the near-real-time prediction of linear structural dynamic responses|url=http://onlinelibrary.wiley.com/doi/10.1002/nme.1653/abstract|journal=International Journal for Numerical Methods in Engineering|language=en|volume=67|issue=5|pages=697–724|doi=10.1002/nme.1653|issn=1097-0207}}</ref><ref>{{Cite book|url=http://link.springer.com/chapter/10.1007/978-3-319-02090-7_7|title=On the Use of Reduced Basis Methods to Accelerate and Stabilize the Parareal Method|last=Chen|first=Feng|last2=Hesthaven|first2=Jan S.|last3=Zhu|first3=Xueyu|date=2014-01-01|publisher=Springer International Publishing|isbn=9783319020891|editor-last=Quarteroni|editor-first=Alfio|series=MS&A - Modeling, Simulation and Applications|pages=187–214|language=en|doi=10.1007/978-3-319-02090-7_7|editor-last2=Rozza|editor-first2=Gianluigi}}</ref>, one being Krylov-subspace enhanced Parareal.


== Variants ==
== Variants ==
Line 238: Line 238:
is defined and updated after every Parareal iteration.<ref>{{Cite journal|last=Gander|first=M.|last2=Petcu|first2=M.|title=Analysis of a Krylov subspace enhanced parareal algorithm for linear problems|url=http://www.edpsciences.org/10.1051/proc:082508|journal=ESAIM: Proceedings|volume=25|pages=114–129|doi=10.1051/proc:082508}}</ref> Denote as <math> P_k</math> the [[orthogonal projection]] from <math> \mathbb{R}^d</math> to <math> S_k</math>. Then, replace the coarse method with the improved integrator <math> \mathcal{K}_{\Delta t}(y) = \mathcal{F}_{\delta t}(P_k y) + \mathcal{G}_{\Delta t}((I-P_k)y)</math>.
is defined and updated after every Parareal iteration.<ref>{{Cite journal|last=Gander|first=M.|last2=Petcu|first2=M.|title=Analysis of a Krylov subspace enhanced parareal algorithm for linear problems|url=http://www.edpsciences.org/10.1051/proc:082508|journal=ESAIM: Proceedings|volume=25|pages=114–129|doi=10.1051/proc:082508}}</ref> Denote as <math> P_k</math> the [[orthogonal projection]] from <math> \mathbb{R}^d</math> to <math> S_k</math>. Then, replace the coarse method with the improved integrator <math> \mathcal{K}_{\Delta t}(y) = \mathcal{F}_{\delta t}(P_k y) + \mathcal{G}_{\Delta t}((I-P_k)y)</math>.


As the number of iterations increases, the space <math> S_k</math> will grow and the modified propagator <math> \mathcal{K}_{\Delta t}</math> will become more accurate. This will lead to faster convergence. This version of Parareal can also stably integrate linear hyperbolic partial differential equations.<ref>{{Cite journal|last=Ruprecht|first=D.|last2=Krause|first2=R.|date=2012-04-30|title=Explicit parallel-in-time integration of a linear acoustic-advection system|url=http://www.sciencedirect.com/science/article/pii/S0045793012000709|journal=Computers & Fluids|volume=59|pages=72–83|doi=10.1016/j.compfluid.2012.02.015}}</ref> An extension to nonlinear problems based on the reduced basis method exists as well.<ref>{{Cite book|url=http://link.springer.com/chapter/10.1007/978-3-319-02090-7_7|title=On the Use of Reduced Basis Methods to Accelerate and Stabilize the Parareal Method|last=Chen|first=Feng|last2=Hesthaven|first2=Jan S.|last3=Zhu|first3=Xueyu|date=2014-01-01|publisher=Springer International Publishing|isbn=9783319020891|editor-last=Quarteroni|editor-first=Alfio|series=MS&A - Modeling, Simulation and Applications|pages=187–214|language=en|doi=10.1007/978-3-319-02090-7_7|editor-last2=Rozza|editor-first2=Gianluigi}}</ref>
As the number of iterations increases, the space <math> S_k</math> will grow and the modified propagator <math> \mathcal{K}_{\Delta t}</math> will become more accurate. This will lead to faster convergence.


== External links ==
== External links ==

Revision as of 14:02, 30 April 2016

Parareal is an algorithm from numerical analysis and used for the solution of initial value problems.[1] In contrast to e.g. Runge-Kutta or multi-step methods, some of the computations in Parareal can be performed in parallel and Parareal is therefore one example of a parallel-in-time integration method. While historically most efforts to parallelize the numerical solution of partial differential equations focussed on the spatial discretization, in view of the challenges from exascale computing, parallel methods for temporal discretization have been identified as a possible way to increase concurrency in numerical software.[2] Because Parareal computes the numerical solution for multiple time steps in parallel, it is categorized as a parallel across the steps method.[3] This is in contrast to approaches using parallelism across the method like parallel Runge-Kutta methods, where independent stages can be computed in parallel or parallel across the system methods like waveform relaxation.

History

Parareal can be derived as both a multigrid method in time method or as multiple shooting along the time axis.[4] Both ideas, multigrid in time as well as adopting multiple shooting for time integration, go back to the 1980s and 1990s.[5][6] Parareal is a widely studied method and has been used and modified for a range of different applications.[7] Ideas to parallelize the solution of initial value problems go back even further: the first paper proposing a parallel-in-time integration method appeared in 1964.[8]

Algorithm

Parareal solves an initial value problem of the form

Here, the right hand side can correspond to the spatial discretization of a partial differential equation in a method of lines approach.

Parareal now requires a decomposition of the time interval into so-called time slices such that

Each time slice is assigned to one processing unit when parallelizing the algorithm, so that is equal to the number of processing units used for Parareal: in an MPI based code for example, this would be the number of processes, while in an OpenMP based code, would be equal to the number of threads.

Parareal is based on the iterative application of two methods for integration of ordinary differential equations. One, commonly labelled , should be of high accuracy and computational cost while the other, typically labelled , must be computationally cheap but can be much less accurate. Typically, some form of Runge-Kutta method is chosen for both coarse and fine integrator, where might be of lower order and use a larger time step than . If the initial value problem stems from the discretization of a PDE, can also use a coarser spatial discretization. The result of numerical integration with one of these methods over a time slice for some starting value given at is then written as

or .

Serial time integration with the fine method would then correspond to a step-by-step computation of

Parareal instead uses the following iteration

where is the iteration counter. As the iteration converges and , the terms from the coarse method cancel out and Parareal reproduces the solution that is obtained by the serial execution of the fine method only. It can be shown that Parareal converges after a maximum of iterations.[4] For Parareal to provide speedup, however, it has to converge in a number of iterations significantly smaller than the number of time slices, that is .

In the Parareal iteration, the computationally expensive evaluation of can be performed in parallel on processing units. By contrast, the dependency of on means that the coarse correction has to be computed in serial order.

Speedup

Under some assumptions, a simple theoretical model for the speedup of Parareal can be derived.[9] Although in applications these assumptions can be too restrictive, the model still is useful to illustrate the trade offs that are involved in obtaining speedup with Parareal.

First, assume that every time slice consists of exactly steps of the fine integrator and of steps of the coarse integrator. This includes in particular the assumption that all time slices are of identical length and that both coarse and fine integrator use a constant step size over the full simulation. Second, denote by and the computing time required for a single step of the coarse or fine method and assume that both are constant. This is typically not exactly true when an implicit method is used, because then runtimes vary depending on the number of iterations required by the iterative solver.

Under these two assumptions, the runtime for the fine method integrating over time slices can be modelled as

The runtime of Parareal using processing units and performing iterations is

Speedup of Parareal then is

These two bounds illustrate the trade off that has to be made in choosing the coarse method: on the one hand, it has to be cheap and/or use a much larger time step to make the first bound as large as possible, on the other hand the number of iterations has to be kept low to keep the second bound large. In particular, Parareal's parallel efficiency is bounded by

that is by the inverse of the number of required iterations.

Instability for imaginary eigenvalues

The vanilla version of Parareal has issues for problems with imaginary eigenvalues.[10] It typically only converges toward the very last iterations, that is as approaches , and the speedup is always going to be smaller than one. So either the number of iterations is small and Parareal is unstable or, if is large enough to make Parareal stable, no speedup is possible. This also means that Parareal is typically unstable for hyperbolic equations.[11] Even though the formal analysis by Gander and Vandewalle covers only linear problems with constant coefficients, the problem also arises when Parareal is applied to the nonlinear Navier-Stokes equations when the viscosity coefficient becomes too small and the Reynolds number too large.[12] Different approaches exist to stabilise Parareal[13][14][15], one being Krylov-subspace enhanced Parareal.

Variants

There are multiple algorithms that are directly based or at least inspired by the original Parareal algorithm.

Krylov-subspace enhanced Parareal

Early on it was recognised that for linear problems information generated by the fine method can be used to improve the accuracy of the coarse method .[16] Originally, the idea was formulated for the parallel implicit time-integrator PITA,[17] a method closely related to Parareal but with small differences in how the correction is done. In every iteration the result is computed for values for . Based on this information, the subspace

is defined and updated after every Parareal iteration.[18] Denote as the orthogonal projection from to . Then, replace the coarse method with the improved integrator .

As the number of iterations increases, the space will grow and the modified propagator will become more accurate. This will lead to faster convergence. This version of Parareal can also stably integrate linear hyperbolic partial differential equations.[19] An extension to nonlinear problems based on the reduced basis method exists as well.[20]

External links

References

  1. ^ Lions, Jacques-Louis; Maday, Yvon; Turinici, Gabriel (2015). "A "parareal" in time discretization of PDE's". Comptes Rendus de l’Académie des Sciences - Series I - Mathematics. 332 (7). Elsevier: 661–668. doi:10.1016/S0764-4442(00)01793-6. Retrieved August 2015. {{cite journal}}: Check date values in: |access-date= (help)
  2. ^ Jack Dongarra (March 2014). Applied Mathematics Research for Exascale Computing (PDF) (Report). US Department of Energy. Retrieved August 2015. {{cite report}}: Check date values in: |accessdate= (help); Unknown parameter |coauthors= ignored (|author= suggested) (help)
  3. ^ Burrage, Kevin (1997). "Parallel methods for ODEs". Advances in Computational Mathematics. 7 (1–2). Kluwer Academic Publishers: 1–31. doi:10.1023/A:1018997130884. {{cite journal}}: |access-date= requires |url= (help); Check date values in: |access-date= (help)
  4. ^ a b Gander, Martin J.; Vandewalle, Stefan (2007). "Analysis of the Parareal Time‐Parallel Time‐Integration Method". SIAM Journal on Scientific Computing. 29 (2). SIAM: 556–578. doi:10.1137/05064607X. Retrieved August 2015. {{cite journal}}: Check date values in: |access-date= (help)
  5. ^ Hackbusch, Wolfgang (1985). "Parabolic multi-grid methods". Computing Methods in Applied Sciences and Engineering, VI. North-Holland Publishing Co: 189–197. Retrieved August 2015. {{cite journal}}: Check date values in: |access-date= (help)
  6. ^ Kiehl, Martin (1994). "Parallel multiple shooting for the solution of initial value problems". Parallel Computing. 20 (3). Elsevier: 275–295. doi:10.1016/S0167-8191(06)80013-X. Retrieved August 2015. {{cite journal}}: Check date values in: |access-date= (help)
  7. ^ Gander, Martin J. (2015). 50 years of Time Parallel Time Integration. Contributions in Mathematical and Computational Sciences. Vol. 9 (1 ed.). Springer International Publishing. doi:10.1007/978-3-319-23321-5. ISBN 978-3-319-23321-5.
  8. ^ Nievergelt, Jürg (1964). "Parallel methods for integrating ordinary differential equations". Communications of the ACM. 7 (12). ACM New York: 731–733. doi:10.1145/355588.365137. Retrieved August 2015. {{cite journal}}: Check date values in: |access-date= (help)
  9. ^ Minion, Michael L. (2010). "A Hybrid Parareal Spectral Deferred Corrections Method". Communications in Applied Mathematics and Computational Science. 5 (2): 265–301. doi:10.2140/camcos.2010.5.265. Retrieved August 2015. {{cite journal}}: Check date values in: |access-date= (help)
  10. ^ Gander, M.; Vandewalle, S. (2007-01-01). "Analysis of the Parareal Time‐Parallel Time‐Integration Method". SIAM Journal on Scientific Computing. 29 (2): 556–578. doi:10.1137/05064607X. ISSN 1064-8275.
  11. ^ Staff, Gunnar Andreas; Rønquist, Einar M. (2005-01-01). Barth, Timothy J.; Griebel, Michael; Keyes, David E.; Nieminen, Risto M.; Roose, Dirk; Schlick, Tamar; Kornhuber, Ralf; Hoppe, Ronald; Périaux, Jacques (eds.). Stability of the Parareal Algorithm. Lecture Notes in Computational Science and Engineering. Springer Berlin Heidelberg. pp. 449–456. doi:10.1007/3-540-26825-1_46. ISBN 9783540225232.
  12. ^ Steiner, Johannes; Ruprecht, Daniel; Speck, Robert; Krause, Rolf (2015-01-01). Abdulle, Assyr; Deparis, Simone; Kressner, Daniel; Nobile, Fabio; Picasso, Marco (eds.). Convergence of Parareal for the Navier-Stokes Equations Depending on the Reynolds Number. Lecture Notes in Computational Science and Engineering. Springer International Publishing. pp. 195–202. doi:10.1007/978-3-319-10705-9_19. ISBN 9783319107042.
  13. ^ Dai, X.; Maday, Y. (2013-01-01). "Stable Parareal in Time Method for First- and Second-Order Hyperbolic Systems". SIAM Journal on Scientific Computing. 35 (1): A52–A78. doi:10.1137/110861002. ISSN 1064-8275.
  14. ^ Farhat, Charbel; Cortial, Julien; Dastillung, Climène; Bavestrello, Henri (2006-07-30). "Time-parallel implicit integrators for the near-real-time prediction of linear structural dynamic responses". International Journal for Numerical Methods in Engineering. 67 (5): 697–724. doi:10.1002/nme.1653. ISSN 1097-0207.
  15. ^ Chen, Feng; Hesthaven, Jan S.; Zhu, Xueyu (2014-01-01). Quarteroni, Alfio; Rozza, Gianluigi (eds.). On the Use of Reduced Basis Methods to Accelerate and Stabilize the Parareal Method. MS&A - Modeling, Simulation and Applications. Springer International Publishing. pp. 187–214. doi:10.1007/978-3-319-02090-7_7. ISBN 9783319020891.
  16. ^ Farhat, Charbel; Cortial, Julien; Dastillung, Climène; Bavestrello, Henri (2006-07-30). "Time-parallel implicit integrators for the near-real-time prediction of linear structural dynamic responses". International Journal for Numerical Methods in Engineering. 67 (5): 697–724. doi:10.1002/nme.1653. ISSN 1097-0207.
  17. ^ Farhat, Charbel; Chandesris, Marion (2003-11-07). "Time-decomposed parallel time-integrators: theory and feasibility studies for fluid, structure, and fluid–structure applications". International Journal for Numerical Methods in Engineering. 58 (9): 1397–1434. doi:10.1002/nme.860. ISSN 1097-0207.
  18. ^ Gander, M.; Petcu, M. "Analysis of a Krylov subspace enhanced parareal algorithm for linear problems". ESAIM: Proceedings. 25: 114–129. doi:10.1051/proc:082508.
  19. ^ Ruprecht, D.; Krause, R. (2012-04-30). "Explicit parallel-in-time integration of a linear acoustic-advection system". Computers & Fluids. 59: 72–83. doi:10.1016/j.compfluid.2012.02.015.
  20. ^ Chen, Feng; Hesthaven, Jan S.; Zhu, Xueyu (2014-01-01). Quarteroni, Alfio; Rozza, Gianluigi (eds.). On the Use of Reduced Basis Methods to Accelerate and Stabilize the Parareal Method. MS&A - Modeling, Simulation and Applications. Springer International Publishing. pp. 187–214. doi:10.1007/978-3-319-02090-7_7. ISBN 9783319020891.