language-icon Old Web
English
Sign In

The numerical template toolbox

2014 
The design and implementation of high level tools for parallel programming is a major challenge as the complexity of modern architectures increases. Domain Specific Languages (or DSL) have been proposed as a solution to facilitate this design but few of those DSLs?actually take full advantage of said parallel architectures. In this paper, we propose a library-based solution by designing a C++ ? DSLs?using generative programming: NT 2 . By adapting generative programming idioms so that architecture specificities become mere parameters of the code generation process, we demonstrate that our library can deliver high performance while featuring a high level API and being easy to extend over new architectures. We propose a design strategy for DSEL including architecture information in the process.We propose an implementation of a C++ DSEL for scientific computing using this strategy.Implementation demonstrates extensibility on new architectures.Benchmarks show that hierarchical architecture features are properly used.
    • Correction
    • Source
    • Cite
    • Save
    • Machine Reading By IdeaReader
    45
    References
    10
    Citations
    NaN
    KQI
    []