Expression Templates and OpenCL.
In: Proceedings of Parallel Processing and Applied Mathematics (PPAM 2011).
Torun, Poland, to appear.
Uwe Bawidamann and Marco Nehmeier.
[abstract]
[BibTeX]
In this paper we discuss the interaction of expression templates with
OpenCL devices. We show how the expression tree of expression templates
can be used to generate problem specific OpenCL kernels. In a second approach
we use expression templates to optimize the data transfer between the host and
the device which leads to a measurable performance increase in a domain
specific language approach.
We tested the functionality, correctness and performance for both
implementations in a case study for vector and matrix operations.
Generative Programming for Automatic Differentiation.
In: Proceedings of the 6th International Conference on Automatic Differentiation (AD 2012).
Fort Collins, CO, USA, to appear.
Marco Nehmeier.
[abstract]
[BibTeX]
In this paper we present a concept for a C++ implementation of forward
automatic differentiation of an arbitrary order using expression templates
and template meta programming. In contrast to other expression template
implementations, the expression tree in our implementation has only
symbolic characteristics. The run time code is then generated from the
tree structure using template meta programming functions to apply the
rules of symbolic differentiation onto the single operations at compile
time. This generic approach has the advantage that the template meta
programming functions are replaceable which offers the opportunity to
easily generate different specialized algorithms. We tested the functionality,
correctness and performance of a prototype in different case studies for floating
point as well as interval data types and compared it against other
implementations.
Interval Comparisons and Lattice Operations based on the Interval Overlapping Relation.
In: Proceedings of the World Conference on Soft Computing 2011 (WConSC'11).
San Francisco, CA, USA, 2011.
Marco Nehmeier and Jürgen Wolff von Gudenberg.
[doi]
[abstract]
[BibTeX]
The interval overlapping relation defines 13 different states of the relative position of two intervals. In this paper we show that this relation can be used to define the interval
comparisons and lattice operations. The shift from a boolean (binary) comparison to a comprehensive relation (13 different states) enables the user to exploit involved dependencies. We
further introduce an object oriented abstract datatype to provide a userfriendly interface.
|