Improving Locality for ODE Solvers by Program Transformations
Author(s) -
Thomas Rauber,
Gudula Rünger
Publication year - 2004
Publication title -
scientific programming
Language(s) - English
Resource type - Journals
SCImago Journal Rank - 0.269
H-Index - 36
eISSN - 1875-919X
pISSN - 1058-9244
DOI - 10.1155/2004/175169
Subject(s) - locality , ode , computer science , implementation , runge–kutta methods , ordinary differential equation , hierarchy , locality of reference , memory hierarchy , function (biology) , theoretical computer science , parallel computing , differential equation , mathematics , programming language , mathematical analysis , philosophy , linguistics , evolutionary biology , cache , economics , market economy , biology
Runge-Kutta methods are popular methods for the solution of ordinary differential equations and implementations are provided by many scientific libraries. The performance of Runge-Kutta methods depends on the specific application problem to be solved, but also on the characteristics of the target machine. For processors with a memory hierarchy, the locality of data referencing pattern has a large impact on the efficiency of a program. In this paper, we describe program transformations for Runge-Kutta methods resulting in implementations with improved locality behavior for systems of ODEs. The transformations are based on properties of the solution method but are independent from the specific application problem or the specific target machine so that the resulting implementation is suitable as library function. We show that the locality improvement leads to performance gains on different recent microprocessors
Accelerating Research
Robert Robinson Avenue,
Oxford Science Park, Oxford
OX4 4GP, United Kingdom
Address
John Eccles HouseRobert Robinson Avenue,
Oxford Science Park, Oxford
OX4 4GP, United Kingdom