Behavioral Non-portability in Scientific Numeric Computing

被引:10
|
作者
Gu, Yijia [1 ]
Wahl, Thomas [1 ]
Bayati, Mahsa [2 ]
Leeser, Miriam [2 ]
机构
[1] Northeastern Univ, Coll Comp & Informat Sci, Boston, MA 02115 USA
[2] Northeastern Univ, Dept Elect & Comp Engn, Boston, MA 02115 USA
来源
关键词
D O I
10.1007/978-3-662-48096-0_43
中图分类号
TP [自动化技术、计算机技术];
学科分类号
0812 ;
摘要
The precise semantics of floating-point arithmetic programs depends on the execution platform, including the compiler and the target hardware. Platform dependencies are particularly pronounced for arithmetic-intensive parallel numeric programs and infringe on the highly desirable goal of software portability (which is nonetheless promised by heterogeneous computing frameworks like OpenCL): the same program run on the same inputs on different platforms often produces different results. Serious doubts on the portability of numeric applications arise when these differences are behavioral, i.e. when they lead to changes in the control flow of a program. In this paper we present an algorithm that takes a numeric procedure and determines an input that may lead to different branching decisions depending on how the arithmetic in the procedure is compiled. We illustrate the algorithm on a diverse set of examples, characteristic of scientific numeric computing, where control flow divergence actually occurs across different execution platforms.
引用
收藏
页码:558 / 569
页数:12
相关论文
共 50 条
  • [1] Portability Testing of Scientific Computing Software Systems
    Nori, Rahul
    Karodiya, Nitin
    Reza, Hassan
    [J]. 2013 IEEE INTERNATIONAL CONFERENCE ON ELECTRO-INFORMATION TECHNOLOGY (EIT 2013), 2013,
  • [2] A first course in scientific computing: Symbolic, graphic and numeric modeling
    Zetie, Ken
    [J]. MATHEMATICAL GAZETTE, 2006, 90 (519): : 564 - 565
  • [3] Performance Portability of an SpMV Kernel Across Scientific Computing and Data Science Applications
    Olivier, Stephen L.
    Ellingwood, Nathan D.
    Berry, Jonathan
    Dunlavy, Daniel M.
    [J]. 2021 IEEE HIGH PERFORMANCE EXTREME COMPUTING CONFERENCE (HPEC), 2021,
  • [4] Using Compiler Directives for Performance Portability in Scientific Computing: Kernels from Molecular Simulation
    Sedova, Ada
    Tillack, Andreas F.
    Tharrington, Arnold
    [J]. ACCELERATOR PROGRAMMING USING DIRECTIVES, 2019, 11381 : 22 - 47
  • [5] 2020 22nd International Symposium on Symbolic and Numeric Algorithms for Scientific Computing
    [J]. Proceedings - 2020 22nd International Symposium on Symbolic and Numeric Algorithms for Scientific Computing, SYNASC 2020, 2020,
  • [6] Identifying volatile numeric expressions in numeric computing applications
    Bayati, Mahsa
    Leeser, Miriam
    Gu, Yijia
    Wahl, Thomas
    [J]. MATHEMATICS AND COMPUTERS IN SIMULATION, 2019, 166 : 451 - 460
  • [7] From Computing with Numbers to Computing with Numeric Words
    Fiorini, Rodolfo A.
    [J]. 2017 IEEE 16TH INTERNATIONAL CONFERENCE ON COGNITIVE INFORMATICS & COGNITIVE COMPUTING (ICCI*CC), 2017, : 84 - 91
  • [8] HISTORY OF SCIENTIFIC AND NUMERIC COMPUTATION
    GROSCH, H
    [J]. COMMUNICATIONS OF THE ACM, 1987, 30 (06) : 474 - 475
  • [9] Overview of cloud computing and portability problems
    Moravcik, Marek
    Sege, Pavel
    Papan, Jozef
    Hrabovsky, Jakub
    [J]. 2017 15TH IEEE INTERNATIONAL CONFERENCE ON EMERGING ELEARNING TECHNOLOGIES AND APPLICATIONS (ICETA 2017), 2017, : 313 - 318
  • [10] A bibliometric overview of the International Symposium on Symbolic and Numeric Algorithms for Scientific Computing between 2005 and 2018
    Fortis, Teodor-Florin
    Fortis, Alexandra-Emilia
    [J]. 2020 22ND INTERNATIONAL SYMPOSIUM ON SYMBOLIC AND NUMERIC ALGORITHMS FOR SCIENTIFIC COMPUTING (SYNASC 2020), 2020, : 278 - 285