An Optimizing Multi-platform Source-to-source Compiler Framework for the NEURON MODeling Language

被引:3
|
作者
Kumbhar, Pramod [1 ]
Awile, Omar [1 ]
Keegan, Liam [1 ]
Alonso, Jorge Blanco [1 ]
King, James [1 ]
Hines, Michael [2 ]
Schuermann, Felix [1 ]
机构
[1] Ecole Polytech Fed Lausanne EPFL, Blue Brain Project, Campus Biotech, CH-1202 Geneva, Switzerland
[2] Yale Univ, Dept Neurosci, New Haven, CT 06510 USA
来源
关键词
NEURON; HPC; DSL; Code generation; Neuroscience; SIMULATION;
D O I
10.1007/978-3-030-50371-0_4
中图分类号
TP39 [计算机的应用];
学科分类号
081203 ; 0835 ;
摘要
Domain-specific languages (DSLs) play an increasingly important role in the generation of high performing software. They allow the user to exploit domain knowledge for the generation of more efficient code on target architectures. Here, we describe a new code generation framework (NMODL) for an existing DSL in the NEURON framework, a widely used software for massively parallel simulation of biophysically detailed brain tissue models. Existing NMODL DSL transpilers lack either essential features to generate optimized code or capability to parse the diversity of existing models in the user community. Our NMODL framework has been tested against a large number of previously published user models and offers high-level domain-specific optimizations and symbolic algebraic simplifications before target code generation. NMODL implements multiple SIMD and SPMD targets optimized for modern hardware. When comparing NMODL-generated kernels with NEURON we observe a speedup of up to 20x, resulting in overall speedups of two different production simulations by similar to 7x. When compared to SIMD optimized kernels that heavily relied on autovectorization by the compiler still a speedup of up to similar to 2x is observed.
引用
收藏
页码:45 / 58
页数:14
相关论文
共 50 条
  • [21] Decentralised multi-platform search for a hazardous source in a turbulent flow
    Ristic, Branko
    Gilliam, Christopher
    Moran, William
    Palmer, Jennifer L.
    INFORMATION FUSION, 2020, 58 (58) : 13 - 23
  • [22] POET: A scripting language for applying parameterized source-to-source program transformations
    University of Texas at San Antonio, San Antonio, TX, United States
    Software Pract Exper, 1600, 6 (675-706):
  • [23] A multi-platform co-array Fortran compiler
    Dotsenko, Y
    Coarfa, C
    Mellor-Crummey, J
    13TH INTERNATIONAL CONFERENCE ON PARALLEL ARCHITECTURE AND COMPILATION TECHNIQUES, PROCEEDINGS, 2004, : 29 - 40
  • [24] Using a source-to-source transformation to introduce multi-threading into the AliRoot framework for a parallel event reconstruction
    Lohn, Stefan B.
    Dong, Xin
    Carminati, Federico
    INTERNATIONAL CONFERENCE ON COMPUTING IN HIGH ENERGY AND NUCLEAR PHYSICS 2012 (CHEP2012), PTS 1-6, 2012, 396
  • [25] POET: a scripting language for applying parameterized source-to-source program transformations
    Yi, Qing
    SOFTWARE-PRACTICE & EXPERIENCE, 2012, 42 (06): : 675 - 706
  • [26] An Abstract Analysis Framework for Synchronous Concurrent Languages based on source-to-source Transformation
    Alpuente, M.
    Gallardo, M. M.
    Pimentel, E.
    Villanueva, A.
    ELECTRONIC NOTES IN THEORETICAL COMPUTER SCIENCE, 2008, 206 : 3 - 21
  • [27] A multi-platform framework for distributed computing
    Grivas, Michael
    Kehagias, Dimitris
    PCI 2008: 12TH PAN-HELLENIC CONFERENCE ON INFORMATICS, PROCEEDINGS, 2008, : 163 - 167
  • [28] Perldoop2: a Big Data-oriented source-to-source Perl-Java']Java compiler
    Pineiro, Cesar
    Abuin, Jose M.
    Pichel, Juan C.
    2017 IEEE 15TH INTL CONF ON DEPENDABLE, AUTONOMIC AND SECURE COMPUTING, 15TH INTL CONF ON PERVASIVE INTELLIGENCE AND COMPUTING, 3RD INTL CONF ON BIG DATA INTELLIGENCE AND COMPUTING AND CYBER SCIENCE AND TECHNOLOGY CONGRESS(DASC/PICOM/DATACOM/CYBERSCI, 2017, : 933 - 940
  • [29] Exploring Source-to-Source Compiler Transformation of OpenMP SIMD Constructs for Intel AVX and Arm SVE Vector Architectures
    Flynn, Patrick
    Yi, Xinyao
    Yan, Yonghong
    PROCEEDINGS OF THE THIRTEENTH INTERNATIONAL WORKSHOP ON PROGRAMMING MODELS AND APPLICATIONS FOR MULTICORES AND MANYCORES (PMAM '22), 2022, : 11 - 20
  • [30] Source-to-Source Optimization of CUDA C for GPU Accelerated Cardiac Cell Modeling
    Lionetti, Fred V.
    McCulloch, Andrew D.
    Baden, Scott B.
    EURO-PAR 2010 PARALLEL PROCESSING, PT I, 2010, 6271 : 38 - +