Generic programming for high-performance scientific applications

被引:3
|
作者
Lee, LQ [1 ]
Lumsdaine, A [1 ]
机构
[1] Indiana Univ, Pervas Technol Labs, Open Syst Lab, Bloomington, IN 47405 USA
来源
CONCURRENCY AND COMPUTATION-PRACTICE & EXPERIENCE | 2005年 / 17卷 / 7-8期
关键词
C plus; generic programming; high-performance computing; iterative solvers; Krylov subspace; message passing; templates;
D O I
10.1002/cpe.864
中图分类号
TP31 [计算机软件];
学科分类号
081202 ; 0835 ;
摘要
We present case studies that apply generic programming to the development of high-performance parallel code for solving two archetypal partial differential equations (PDEs). We examine the overall structure of the example scientific codes and consider their generic implementation. With a generic approach it is a straightforward matter to reuse software components from different sources; implementations with components from the Iterative Template Library (ITL), the Matrix Template Library (MTL), Blitz++, A++/P++, and Fortran BLAS are presented. Our newly developed Generic Message Passing library is used for communication. We compare the generic implementations with equivalent implementations developed with alternative libraries and languages and discuss performance as well as software engineering issues. Copyright (c) 2005 John Wiley & Sons, Ltd.
引用
收藏
页码:941 / 965
页数:25
相关论文
共 50 条
  • [1] Generic programming and high-performance libraries
    Gregor, D
    Järvi, J
    Kulkarni, M
    Lumsdaine, A
    Musser, D
    Schupp, S
    INTERNATIONAL JOURNAL OF PARALLEL PROGRAMMING, 2005, 33 (2-3) : 145 - 164
  • [2] Generic Programming and High-Performance Libraries
    Douglas Gregor
    Jaakko Järvi
    Mayuresh Kulkarni
    Andrew Lumsdaine
    David Musser
    Sibylle Schupp
    International Journal of Parallel Programming, 2005, 33 : 145 - 164
  • [3] High-Performance Cloud Computing: A View of Scientific Applications
    Vecchiola, Christian
    Pandey, Suraj
    Buyya, Rajkumar
    2009 10TH INTERNATIONAL SYMPOSIUM ON PERVASIVE SYSTEMS, ALGORITHMS, AND NETWORKS (ISPAN 2009), 2009, : 4 - 16
  • [4] Composing Algorithmic Skeletons to Express High-Performance Scientific Applications
    Zandifar, Mani
    Jabbar, Mustafa Abdul
    Majidi, Alireza
    Keyes, David
    Amato, Nancy M.
    Rauchwerger, Lawrence
    PROCEEDINGS OF THE 29TH ACM INTERNATIONAL CONFERENCE ON SUPERCOMPUTING (ICS'15), 2015, : 415 - 424
  • [5] RAPPORT: running scientific high-performance computing applications on the cloud
    Cohen, Jeremy
    Filippis, Ioannis
    Woodbridge, Mark
    Bauer, Daniela
    Hong, Neil Chue
    Jackson, Mike
    Butcher, Sarah
    Colling, David
    Darlington, John
    Fuchs, Brian
    Harvey, Matt
    PHILOSOPHICAL TRANSACTIONS OF THE ROYAL SOCIETY A-MATHEMATICAL PHYSICAL AND ENGINEERING SCIENCES, 2013, 371 (1983):
  • [6] High-performance data structures for de novo assembly of genomes: cache oblivious generic programming
    Milicchio, Franco
    Tradigo, Giuseppe
    Veltri, Pierangelo
    Prosperi, Mattia
    PROCEEDINGS OF THE 7TH ACM INTERNATIONAL CONFERENCE ON BIOINFORMATICS, COMPUTATIONAL BIOLOGY, AND HEALTH INFORMATICS, 2016, : 657 - 662
  • [7] Tpetra, and the use of generic programming in scientific computing
    Baker, C. G.
    Heroux, M. A.
    SCIENTIFIC PROGRAMMING, 2012, 20 (02) : 115 - 128
  • [8] High-performance sampling of generic determinantal point processes
    Poulson, Jack
    PHILOSOPHICAL TRANSACTIONS OF THE ROYAL SOCIETY A-MATHEMATICAL PHYSICAL AND ENGINEERING SCIENCES, 2020, 378 (2166):
  • [9] Programming Tools for High-Performance Data Analysis
    Talia, Domenico
    Trunfio, Paolo
    PROCEEDINGS OF THE 33RD INTERNATIONAL SYMPOSIUM ON HIGH-PERFORMANCE PARALLEL AND DISTRIBUTED COMPUTING, HPDC 2024, 2024,