Skip to main content
Log in

Component-Based Derivation of a Parallel Stiff ODE Solver Implemented in a Cluster of Computers

  • Published:
International Journal of Parallel Programming Aims and scope Submit manuscript

Abstract

A component-based methodological approach to derive distributed implementations of parallel ODE solvers is proposed. The proposal is based on the incorporation of explicit constructs for performance polymorphism into a methodology to derive group parallel programs of numerical methods from SPMD modules. These constructs enable the structuring of the derivation process into clearly defined steps, each one associated with a different type of optimization. The approach makes possible to obtain a flexible tuning of a parallel ODE solver for several execution contexts and applications. Following this methodological approach, a relevant parallel numerical scheme for solving stiff ODES has been optimized and implemented on a PC cluster. This numerical scheme is obtained from a Radau IIA Implicit Runge–Kutta method and exhibits a high degree of potential parallelism. Several numerical experiments have been performed by using several test problems with different structural characteristics. These experiments show satisfactory speedup results.

This is a preview of subscription content, log in via an institution to check access.

Access this article

Price excludes VAT (USA)
Tax calculation will be finalised during checkout.

Instant access to the full article PDF.

Similar content being viewed by others

REFERENCES

  1. D. G. Zill, A First Course in Differential Equations with Modeling Applications, Brooks/ Cole (1997).

  2. J. D. Lambert, Numerical methods for ordinary differential systems, Wiley (1993).

  3. W. M. Lioen, J. J. B. De Swart, and W. A. Van Der Veen, Test set for IVP solvers, Technical Report NM-89615, CWI (1996).

  4. E. Hairer and G. Wanner, Solving Ordinary Differential Equations II: Stiff and Differential Algebraic Problems, Springer-Verlag (1996).

  5. K. Burrage, Parallel and Sequential Methods for Ordinary Differential Equations, Oxford Science Publications (1995).

  6. K. Dekker and J. G. Verwer, Stability of Runge-Kutta methods for stiff nonlinear differential equations, North Holland, Amsterdam (1984).

    Google Scholar 

  7. G. Bjurel, G. Dahlquist, B. Lindberg, S. Linde, and L. Odén, Survey of Stiff Ordinary Differential Equations, Technical Report TRITA-NA-70.11, Dept. of Numerical Analysis and Computing Science, The Royal Institute of Technology (1970).

  8. T. Rauber and G. Rünger, Deriving Structured Parallel Implementations for Numerical Methods, The Euromicro Journal 41:589–608 (1996).

    Google Scholar 

  9. C. Bendtsen, ParSODES-A Parallel Stiff ODE Solver. User's Guide, Technical Report 96-07, UNI-C,DTU, Bldg (1996).

  10. Message Passing Interface Forum. MPI: A Message Passing Interface Standard, University of Tennessee, Knoxville, Tennessee (1995).

  11. J. J. Dongarra, J. Du Croz, S. Hammarling, and R. J. Hanson, An extended set of FORTRAN basic linear algebra subroutines, ACM Transactions on Mathematical Software 14:1–17 (1988).

    Google Scholar 

  12. E. Anderson, Z. Bai, C. Bischof, J. Demmel, J. J. D ongarra, J. Du Croz, A. Grenbaum, S. Hammarling, A. McKenney, S. Ostrouchov, and D. Sorensen, LAPACK User's Guide, Society for Industrial and Applied Mathematics, Philadelphia, PA, USA (1995).

    Google Scholar 

  13. J. J. Dongarra and D. W. Walker, Software libraries for linear Algebra Computations on High Performance Computers, SIAM Review (1995).

  14. J. Choi, J. J. Dongarra, S. Ostrouchov, A. Petitet, D. Walker, and R. Clint Whaley, A proposal for a set of parallel basic linear algebra subprograms, Technical Report CS-95-292, Computer Science Dept., University of Tennesee (May 1995).

  15. A. Skjellum, A. P. Leung, S. G. Smith, R. D. Falgout, C. H. Still, and C. H. Baldwin, The Multicomputer Toolbox-First-Generation Scalable Libraries, HICSS-27, pp. 644–654 (1994).

  16. T. Rauber and G. Rünger, Diagonal-implicitly Runge-Kutta methods on distributed memory machines, International Journal of High Speed Computing 10:185–207 (June 1999).

    Google Scholar 

  17. T. Rauber and G. Rünger, Parallel execution of embedded and iterated Runge-Kutta methods, Concurrency: Practice and Experience 11:367–385 (1999).

    Google Scholar 

  18. L. Zhou, E. A. Rundensteiner, and K. G. Shin, OODB Support for Real Time Open-Architecture Controllers, Proceedings of the 4th International Conference on Database Systems for Advanced Applications (April 1995).

  19. J. M. Mantas and J. Ortega Lopera, A Component-Based Stiff ODE Solver on a Cluster of Computers, 4th International Meeting on Vector and Parallel Processing, VECPAR' 2000 (June 2000).

  20. C. Bendtsen, Parallel Numerical Algorithms for the Solution of Systems of Ordinary Differential Equations, Ph.D. thesis, Institute of Mathematical Modelling, Technical University of Denmark (1996).

  21. P. J. Van der Houwen and J. J. B. de Swart, Parallel linear system solvers for Runge- Kutta methods, Advances in Computational Mathematics 7:157–181 (March 1997).

    Google Scholar 

  22. J. J. B. de Swart, Parallel Software for Implicit Differential Equations, Ph.D. thesis, Amsterdam University (1997).

  23. E. Hairer and G. Wanner, Stiff Differential Equations solved by Radau Methods, Journal of Computational and Applied Mathematics 111:93–111 (1999).

    Google Scholar 

  24. K. Gustafsson, Control of Error and Convergence in ODE Solvers, Ph.D. thesis, Lund Institute of Technology (1992).

  25. T. Rauber, G. Rünger, and R. Wilhelm, Deriving Optimal Data Distributions for Group Numerical Algorithms, Conference on Massively Parallel Programming Models, pp. 33–41 (1995).

  26. J. J. Dongarra and R. Clint Whaley, A user's guide to the BLACS v1.0, Technical Report CS-95-292, Computer Science Dept., University of Tennesee (1995).

  27. J. Li, A Poly-Algorithm for Parallel Dense Matrix Multiplication on Two-Dimensional Process Grid Topologies, Master's thesis, Mississippi State University (December 1996).

  28. J. M. Mantas and A. Palma, Designing Reusable Software Components Following the CSP Distributed Programming Model, 2nd Workshop on Parallel and Distributed Software Engineering (May 1997).

  29. M. Sitaraman and B. Weide, Special Feature: Component-Based Software Using RESOLVE, ACM SIGSOFT, Software Engineering Notes, 19 (1994).

  30. O. Ciupke and R. Schmidt, Components as context-independent units of software, Workshop Reader of the 10th Eutopean Conference on Object-Oriented Programming ECOOP96 (1996).

  31. L. S. Blackford, J. Choi, A. Cleary, E. D'Azevedo, J. Demmel, I. Dhillon, J. J. Dongarra, S. Hammarling, G. Henry, A. Petitet, K. Stanley, D. Walker, and R. C. Whaley, ScaLAPACK User's Guide, Society for Industrial and Applied Mathematics, Philadelphia, PA, USA (1997).

    Google Scholar 

  32. X. Zhong, Additive Semi-Implicit Runge-Kutta Methods for Computing High-Speed Nonequilibrium Reactive Flows, Journal of Computational Physics 128:19–31 (1996).

    Google Scholar 

  33. B. A. Shirazi, A. R. Hurson, and K. M. Kavi, Scheduling and Load Balancing in Parallel and Distributed Systems, IEEE Computer Society Press (1995).

  34. I. A. Foster, Designing and Building Parallel Programs, Addison-Wesley (1995).

  35. W. Gropp and E. Lusk, User's guide for mpich, a portable implementation of MPI, Technical Report ANL-96/6, Argonne National Laboratory (1996). The updated version is at ftp://ftp.mcs.anl.gov/pub/mpi/userguide.ps.

  36. K. Gustafsson and G. Söderling, Control Strategies for the iterative solution of nonlinear equations in ODE solvers, SIAM Journal on Scientific and Statistical Computing 18:23–40 (January 1997).

    Google Scholar 

Download references

Author information

Authors and Affiliations

Authors

Rights and permissions

Reprints and permissions

About this article

Cite this article

Mantas Ruiz, J.M., Lopera, J.O. & Carrillo de la Plata, J.A. Component-Based Derivation of a Parallel Stiff ODE Solver Implemented in a Cluster of Computers. International Journal of Parallel Programming 30, 99–148 (2002). https://doi.org/10.1023/A:1014256713517

Download citation

  • Issue Date:

  • DOI: https://doi.org/10.1023/A:1014256713517

Navigation