AbstractActive libraries can be defined as libraries which play an active part in the compilation, in particular, the optimisation of their client code. This paper explores the implementation of an active dense linear algebra library by delaying evaluation of expressions built using library calls, then generating code at runtime for the compositions that occur. The key optimisations in this context are loop fusion and array contraction.Our prototype C++ implementation, DESOLA, automatically fuses loops arising from different client calls, identifies unnecessary intermediate temporaries, and contracts temporary arrays to scalars. Performance is evaluated using a benchmark suite of linear solvers from ITL (Iterative Template Library), and is ...
Abstract—Scientific programmers often turn to vendor-tuned Basic Linear Algebra Subprograms (BLAS) t...
Design by Transformation (DxT) is an approach to software development that encodes domain-specific p...
AbstractDesign by Transformation (DxT) is an approach to software development that encodes domain-sp...
AbstractActive libraries can be defined as libraries which play an active part in the compilation, i...
In this thesis, I explore an approach called "active libraries". These are libraries that take part ...
In this thesis, I explore an approach called “active libraries”. These are libraries that take part ...
We present a new C++ library design for linear algebra computations on high performance architecture...
Abstract. We present a systematic methodology for deriving and implementing linear algebra libraries...
Researchers from the Formal Linear Algebra Method Environment (Flame) project have developed new met...
We present a generic programming methodology for expressing data structures and algorithms for high-...
The Multicomputer Toolbox includes sparse, dense, and iterative scalable linear algebra libraries. D...
We describe the design of ScaLAPACK++, an object oriented C++ library for implementing linear algebr...
Tpetra is a C++ library for linear algebra computations on high-performance distributed node systems...
The Global Matrix Library (GML) is a distributed matrix library in the X10 language. GML is designed...
We describe the design of ScaLAPACK++, an object oriented C++ library for implementing linear algebr...
Abstract—Scientific programmers often turn to vendor-tuned Basic Linear Algebra Subprograms (BLAS) t...
Design by Transformation (DxT) is an approach to software development that encodes domain-specific p...
AbstractDesign by Transformation (DxT) is an approach to software development that encodes domain-sp...
AbstractActive libraries can be defined as libraries which play an active part in the compilation, i...
In this thesis, I explore an approach called "active libraries". These are libraries that take part ...
In this thesis, I explore an approach called “active libraries”. These are libraries that take part ...
We present a new C++ library design for linear algebra computations on high performance architecture...
Abstract. We present a systematic methodology for deriving and implementing linear algebra libraries...
Researchers from the Formal Linear Algebra Method Environment (Flame) project have developed new met...
We present a generic programming methodology for expressing data structures and algorithms for high-...
The Multicomputer Toolbox includes sparse, dense, and iterative scalable linear algebra libraries. D...
We describe the design of ScaLAPACK++, an object oriented C++ library for implementing linear algebr...
Tpetra is a C++ library for linear algebra computations on high-performance distributed node systems...
The Global Matrix Library (GML) is a distributed matrix library in the X10 language. GML is designed...
We describe the design of ScaLAPACK++, an object oriented C++ library for implementing linear algebr...
Abstract—Scientific programmers often turn to vendor-tuned Basic Linear Algebra Subprograms (BLAS) t...
Design by Transformation (DxT) is an approach to software development that encodes domain-specific p...
AbstractDesign by Transformation (DxT) is an approach to software development that encodes domain-sp...