Delayed Evaluation, Self-optimising Software Components as a Programming Model [chapter]

Peter Liniker, Olav Beckmann, Paul H. J. Kelly
2002 Lecture Notes in Computer Science  
We argue that delayed-evaluation, self-optimising scientific software components, which dynamically change their behaviour according to their calling context at runtime offer a possible way of bridging the apparent conflict between the quality of scientific software and its performance. Rather than equipping scientific software components with a performance interface which allows the caller to supply the context information that is lost when building abstract software components, we propose to
more » ... ecapture this lost context information at runtime. This paper is accompanied by a public release of a parallel linear algebra library with both C and C++ language interfaces which implements this proposal. We demonstrate the usability of this library by showing that it can be used to supply linear algebra component functionality to an existing external software package. We give preliminary performance figures and discuss avenues for future work.
doi:10.1007/3-540-45706-2_92 fatcat:dicfwflssfbkbgrffrkgoi55yq