Alias verification for Fortran code optimization

被引:0
|
作者
Nguyen, TVN [1 ]
Irigoin, F [1 ]
机构
[1] Ecole Mines Paris, Paris, France
关键词
alias; dummy aliasing; verification; optimization;
D O I
暂无
中图分类号
TP31 [计算机软件];
学科分类号
081202 ; 0835 ;
摘要
Alias analysis for Fortran is less complicated than for programming languages with pointers but many real Fortran programs violate the standard: a formal parameter or a common variable that is aliased with another formal parameter is modified. Compilers, assuming standard-conforming programs, consider that an assignment to one variable will not change the value of any other variable, allowing optimizations involving the aliased variables. Higher performance results but anything may happen: the program may appear to run normally, or produce incorrect answers, or behave unpredictably. The results may depend on the compiler and the optimization level. To guarantee the standard conformance of programs in order to make program analyses exact and program optimizations safe, precise alias information, i.e the determination of overlaps among arrays is studied in this paper. Static analyses and code instrumentation are used to find all violations of the aliasing rules in Fortran code. Alias violation tests are inserted only at places where it cannot be proved statically that they are useless in order to reduce the number of dynamic checks at run-time. A specific memory location naming technique is used to obtain compact representation and to enhance the precision of alias analysis. Modifications on the dependence graph created by aliasing are also studied to show the impact of aliases on the correctness of some program optimizing transformations. Experimental results on SPEC95 CFP benchmark are presented and some related issues are also discussed.
引用
收藏
页码:270 / 297
页数:28
相关论文
共 50 条
  • [31] Islaris: Verification of Machine Code Against Authoritative ISA Semantics
    Sammler, Michael
    Hammond, Angus
    Lepigre, Rodolphe
    Campbell, Brian
    Pichon-Pharabod, Jean
    Dreyer, Derek
    Garg, Deepak
    Sewell, Peter
    PROCEEDINGS OF THE 43RD ACM SIGPLAN INTERNATIONAL CONFERENCE ON PROGRAMMING LANGUAGE DESIGN AND IMPLEMENTATION (PLDI '22), 2022, : 825 - 840
  • [32] Code Optimization as a Tool for Testing Software
    Bajwa, Manpreet Singh
    Agarwal, Arun Prakash
    Gupta, Nitika
    PROCEEDINGS OF THE 10TH INDIACOM - 2016 3RD INTERNATIONAL CONFERENCE ON COMPUTING FOR SUSTAINABLE GLOBAL DEVELOPMENT, 2016, : 961 - 967
  • [33] Optimization of code book in vector quantization
    Thangavel, K
    Kumar, DA
    ANNALS OF OPERATIONS RESEARCH, 2006, 143 (01) : 317 - 325
  • [34] Sound Modular Verification of C Code Executing in an Unverified Context
    Agten, Pieter
    Jacobs, Bart
    Piessens, Frank
    ACM SIGPLAN NOTICES, 2015, 50 (01) : 581 - 594
  • [35] LabVIEW's Code Style and Optimization
    Wang, Hongmin
    Li, Kongqi
    Li, Dandan
    PROCEEDINGS OF 2013 2ND INTERNATIONAL CONFERENCE ON MEASUREMENT, INFORMATION AND CONTROL (ICMIC 2013), VOLS 1 & 2, 2013, : 1483 - 1486
  • [36] Using automatic code differentiation for optimization
    Fischer, V
    Gerbaud, L
    Wurtz, F
    IEEE TRANSACTIONS ON MAGNETICS, 2005, 41 (05) : 1812 - 1815
  • [37] Source Code Partitioning in Program Optimization
    Bolat, Murat
    Kelsey, Kirk
    Li, Xiaoming
    Gao, Guang R.
    2011 IEEE 17TH INTERNATIONAL CONFERENCE ON PARALLEL AND DISTRIBUTED SYSTEMS (ICPADS), 2011, : 56 - 63
  • [38] Optimization of code book in vector quantization
    K. Thangavel
    D. Ashok Kumar
    Annals of Operations Research, 2006, 143 : 317 - 325
  • [39] IP Cores Design from Specifications to Production: Modeling, Verification, Optimization, and Protection
    Salah, Khaled
    AbdelSalam, Mohamed
    2013 25TH INTERNATIONAL CONFERENCE ON MICROELECTRONICS (ICM), 2013,
  • [40] Calibration and verification of QUAL2E using genetic algorithm optimization
    Goktas, Recep Kaya
    Aksoy, Aysegul
    JOURNAL OF WATER RESOURCES PLANNING AND MANAGEMENT, 2007, 133 (02) : 126 - 136