Compilation of mathematical models to parallel code

Abstract: Generating parallel code from high-level mathematical models is in its general form an intractable problem. Rather than trying to solve this problem, a more realistic approach is to solve specific problem instances for limited domains.In this thesis, we focus our efforts on problems where the main computation is to solve ordinary differential equation systems. When solving such a system of equations, the major part of the computing time is spent in application specific code, rather than in the serial solver kernel. By applying domain specific knowledge, we can generate efficient parallel code for numerical solution.We investigate automatic parallelisation of the computation of ordinary differential equation systems at three different levels of granularity: equation system level, equation level, and clustered task level. At the clustered task level we employ existing scheduling and clustering algorithms to partition and distribute the computation.Moreover, an interface is provided to express explicit parallelism through annotations in the the mathematical model.This work is performed in the context of ObjectMath, a programming environment and modelling language that supports classes of equation objects, inheritance of equations, and solving systems of equations. The environment is designed to handle realistic problems.

  This dissertation MIGHT be available in PDF-format. Check this page to see if it is available for download.