FPChecker: Detecting Floating-Point Exceptions in GPU Applications
Wed 13 Nov 2019 12:10 - 12:20 at Cortez 1 - Testing and Program Analysis Chair(s): Jun Sun
Floating-point arithmetic is widely used in applications from several fields including scientific computing, machine learning, graphics, and finance. Many of these applications are rapidly adopting the use of GPUs to speedup computations. GPUs, however, have limited support to detect floating-point exceptions, making it difficult to software developers to detect unexpected exceptional cases in such applications. We present FPChecker, the first tool to automatically detect floating-point exceptions in GPU applications. FPChecker uses the clang/LLVM compiler to instrument GPU kernels and to detect floating-point exceptions in GPUs at runtime. Once an exception is detected, it reports to the programmer the code location of the exception as well as other useful information. The programmer can then use this information to avoid the exception, e.g., by modifying the application algorithm or changing its input. We present the design of FPChecker, an evaluation of the overhead of the tool, and a real-world case scenario on which the tool is used to identify a hidden exception. The slowdown of FPChecker is moderate ($1.5\times$ on average) and the code is publicly available as open source.
Tue 12 NovDisplayed time zone: Tijuana, Baja California change
10:00 - 10:40 | |||
10:00 40mDemonstration | Pangolin: An SFL-based Toolset for Feature Localization Demonstrations Bruno Miguel Sotto-Mayor de Castro Machado IST, University of Lisbon, Alexandre Perez Palo Alto Research Center, Rui Abreu Instituto Superior Técnico, U. Lisboa & INESC-ID | ||
10:00 40mDemonstration | A Quantitative Analysis Framework for Recurrent Neural Network Demonstrations Xiaoning Du Nanyang Technological University, Xiaofei Xie Nanyang Technological University, Yi Li Nanyang Technological University, Lei Ma Kyushu University, Yang Liu Nanyang Technological University, Singapore, Jianjun Zhao Kyushu University | ||
10:00 40mDemonstration | Ares: Inferring Error Specifications through Static Analysis Demonstrations Li Chi Tsinghua University, Zuxing Gu School of Software, Tsinghua University, Min Zhou Tsinghua University, Ming Gu Tsinghua University, Hongyu Zhang The University of Newcastle | ||
10:00 40mDemonstration | SiMPOSE - Configurable N-Way Program Merging Strategies for Superimposition-based Analysis of Variant-Rich Software Demonstrations Dennis Reuling Software Engineering Group, University of Siegen, Udo Kelter Software Engineering Group, University of Siegen, Sebastian Ruland TU Darmstadt, Real-time Systems Lab, Malte Lochau TU Darmstadt Pre-print Media Attached File Attached | ||
10:00 40mDemonstration | VeriAbs : Verification by Abstraction and Test Generation Demonstrations Mohammad Afzal Tata Cosultancy Services, A Asia Tata Cosultancy Services, Avriti Chauhan Tata Cosultancy Services, Bharti Chimdyalwar Tata Consultancy Services, Priyanka Darke Tata Consultancy Services, Advaita Datar Tata Consultancy Services Ltd, Shrawan Kumar Tata Cosultancy Services, R Venkatesh Tata Research Development and Design Centre | ||
10:00 40mDemonstration | DeepHunter: A Coverage-Guided Fuzzer for Deep Neural Networks Demonstrations Xiaofei Xie Nanyang Technological University, Hongxu Chen Nanyang Technological University, Yi Li Nanyang Technological University, Lei Ma Kyushu University, Yang Liu Nanyang Technological University, Singapore, Jianjun Zhao Kyushu University | ||
10:00 40mDemonstration | SPrinter: A Static Checker for Finding Smart Pointer Errors in C++ Programs Demonstrations Xutong Ma Institute of Software, Chinese Academy of Sciences, Jiwei Yan Institute of Software, Chinese Academy of Sciences, Yaqi Li Institute of Software, Chinese Academy of Sciences, Jun Yan Institute of Software, Chinese Academy of Sciences, Jian Zhang Institute of Software, Chinese Academy of Sciences | ||
10:00 40mDemonstration | LIRAT: Layout and Image Recognition Driving Automated Mobile Testing of Cross-Platform Demonstrations Shengcheng Yu Nanjing University, China, Chunrong Fang Nanjing University, Yang Feng University of California, Irvine, Wenyuan Zhao Nanjing University, Zhenyu Chen Nanjing University File Attached | ||
10:00 40mDemonstration | FogWorkflowSim: An Automated Simulation Toolkit for Workflow Performance Evaluation in Fog Computing Demonstrations Xiao Liu School of Information Technology, Deakin University, Lingmin Fan School of Computer Science and Technology, Anhui University, Jia Xu School of Computer Science and Technology, Anhui University, Xuejun Li School of Computer Science and Technology, Anhui University, Lina Gong School of Computer Science and Technology, Anhui University, John Grundy Monash University, Yun Yang Swinburne University of Technology | ||
10:00 40mDemonstration | SGUARD: A Feature-based Clustering Tool for Effective Spreadsheet Defect Detection Demonstrations Da Li State Key Lab. for Novel Software Tech. and Dept. of Comp. Sci. and Tech., Nanjing University, Nanjing, China, Huiyan Wang State Key Lab. for Novel Software Tech. and Dept. of Comp. Sci. and Tech., Nanjing University, Nanjing, China, Chang Xu Nanjing University, Ruiqing Zhang Search Tech. Center Asia, Microsoft, Suzhou, China, Shing-Chi Cheung Department of Computer Science and Engineering, The Hong Kong University of Science and Technology, Xiaoxing Ma State Key Lab. for Novel Software Tech. and Dept. of Comp. Sci. and Tech., Nanjing University | ||
10:00 40mDemonstration | FPChecker: Detecting Floating-Point Exceptions in GPU Applications Demonstrations Ignacio Laguna Lawrence Livermore National Laboratory | ||
10:00 40mDemonstration | PMExec: An Execution Engine of Partial UML-RT Models Demonstrations Mojtaba Bagherzadeh Queen's University, Karim Jahed Queen's University, Nafiseh Kahani Queen's University, Juergen Dingel Queen's University, Kingston, Ontario Pre-print |
Wed 13 NovDisplayed time zone: Tijuana, Baja California change
10:40 - 12:20 | Testing and Program AnalysisResearch Papers / Demonstrations at Cortez 1 Chair(s): Jun Sun Singapore Management University, Singapore | ||
10:40 20mTalk | Regexes are Hard: Decision-making, Difficulties, and Risks in Programming Regular ExpressionsACM SIGSOFT Distinguished Paper Award Research Papers Louis G. Michael IV Virginia Tech, James Donohue University of Bradford, James C. Davis Virginia Tech, USA, Dongyoon Lee Stony Brook University, Francisco Servant Virginia Tech Pre-print File Attached | ||
11:00 20mTalk | Testing Regex Generalizability And Its Implications: A Large-Scale Many-Language Measurement Study Research Papers James C. Davis Virginia Tech, USA, Daniel Moyer Virginia Tech, Ayaan M. Kazerouni Virginia Tech, Dongyoon Lee Stony Brook University Pre-print File Attached | ||
11:20 20mTalk | Accurate String Constraints Solution Counting with Weighted Automata Research Papers | ||
11:40 20mTalk | Subformula Caching for Model Counting and Quantitative Program Analysis Research Papers William Eiers University of California at Santa Barbara, USA, Seemanta Saha University of California Santa Barbara, Tegan Brennan University of California, Santa Barbara, Tevfik Bultan University of California, Santa Barbara | ||
12:00 10mDemonstration | SPrinter: A Static Checker for Finding Smart Pointer Errors in C++ Programs Demonstrations Xutong Ma Institute of Software, Chinese Academy of Sciences, Jiwei Yan Institute of Software, Chinese Academy of Sciences, Yaqi Li Institute of Software, Chinese Academy of Sciences, Jun Yan Institute of Software, Chinese Academy of Sciences, Jian Zhang Institute of Software, Chinese Academy of Sciences | ||
12:10 10mDemonstration | FPChecker: Detecting Floating-Point Exceptions in GPU Applications Demonstrations Ignacio Laguna Lawrence Livermore National Laboratory |