SMT-Based Translation Validation for Machine Learning Compiler

被引:7
作者
Bang, Seongwon [1 ]
Nam, Seunghyeon [1 ]
Chun, Inwhan [1 ]
Jhoo, Ho Young [1 ]
Lee, Juneyoung [2 ]
机构
[1] Seoul Natl Univ, Seoul, South Korea
[2] CryptoLab, Seoul, South Korea
来源
COMPUTER AIDED VERIFICATION (CAV 2022), PT II | 2022年 / 13372卷
基金
新加坡国家研究基金会;
关键词
D O I
10.1007/978-3-031-13188-2_19
中图分类号
TP3 [计算技术、计算机技术];
学科分类号
0812 ;
摘要
Machine learning compilers are large software containing complex transformations for deep learning models, and any buggy transformation may cause a crash or silently bring a regression to the prediction accuracy and performance. This paper proposes an SMT-based translation validation framework for Multi-Level IR (MLIR), a compiler framework used by many deep learning compilers. It proposes an SMT encoding tailored for translation validation that is an over-approximation of the FP arithmetic and reduction operations. It performs abstraction refinement if validation fails. We also propose a new approach for encoding arithmetic properties of reductions in SMT. We found mismatches between the specification and implementation of MLIR, and validated high-level transformations for SqueezeNet, MobileNet, and text_classification with proper splitting.
引用
收藏
页码:386 / 407
页数:22
相关论文
共 43 条
  • [1] [Anonymous], 2017, ARXIV170404861
  • [2] Arm NN SDK, ARM NN SDK
  • [3] Becker H., 2019, LNCS, V11562, P155, DOI [10.1007/978-3-030-25543-5_10, DOI 10.1007/978-3-030-25543-5_10]
  • [4] Flocq: A Unified Library for Proving Floating-point Algorithms in Coq
    Boldo, Sylvie
    Melquiond, Guillaume
    [J]. 2011 20TH IEEE SYMPOSIUM ON COMPUTER ARITHMETIC (ARITH-20), 2011, : 243 - 252
  • [5] Invertibility Conditions for Floating-Point Formulas
    Brain, Martin
    Niemetz, Aina
    Preiner, Mathias
    Reynolds, Andrew
    Barrett, Clark
    Tinelli, Cesare
    [J]. COMPUTER AIDED VERIFICATION, CAV 2019, PT II, 2019, 11562 : 116 - 136
  • [6] Building Better Bit-Blasting for Floating-Point Problems
    Brain, Martin
    Schanda, Florian
    Sun, Youcheng
    [J]. TOOLS AND ALGORITHMS FOR THE CONSTRUCTION AND ANALYSIS OF SYSTEMS, PT I, 2019, 11427 : 79 - 98
  • [7] Brillout Angelo, 2009, Proceedings of the 2009 9th International Conference Formal Methods in Computer-Aided Design (FMCAD), P69, DOI 10.1109/FMCAD.2009.5351141
  • [8] DIFFY: Inductive Reasoning of Array Programs Using Difference Invariants
    Chakraborty, Supratik
    Gupta, Ashutosh
    Unadkat, Divyesh
    [J]. COMPUTER AIDED VERIFICATION, PT II, CAV 2021, 2021, 12760 : 911 - 935
  • [9] Semantic Program Alignment for Equivalence Checking
    Churchill, Berkeley
    Padon, Oded
    Sharma, Rahul
    Aiken, Alex
    [J]. PROCEEDINGS OF THE 40TH ACM SIGPLAN CONFERENCE ON PROGRAMMING LANGUAGE DESIGN AND IMPLEMENTATION (PLDI '19), 2019, : 1027 - 1040
  • [10] End-to-End Translation Validation for the Halide Language
    Clement, Basile
    Cohen, Albert
    [J]. PROCEEDINGS OF THE ACM ON PROGRAMMING LANGUAGES-PACMPL, 2022, 6 (OOPSLA):