Research Commons
      • Browse 
        • Communities & Collections
        • Titles
        • Authors
        • By Issue Date
        • Subjects
        • Types
        • Series
      • Help 
        • About
        • Collection Policy
        • OA Mandate Guidelines
        • Guidelines FAQ
        • Contact Us
      • My Account 
        • Sign In
        • Register
      View Item 
      •   Research Commons
      • University of Waikato Research
      • Computing and Mathematical Sciences
      • Computing and Mathematical Sciences Papers
      • View Item
      •   Research Commons
      • University of Waikato Research
      • Computing and Mathematical Sciences
      • Computing and Mathematical Sciences Papers
      • View Item
      JavaScript is disabled for your browser. Some features of this site may not work without it.

      Bound analysis for Whiley programs

      Weng, Min-Hsien; Utting, Mark; Pfahringer, Bernhard
      Thumbnail
      Files
      Weng-Utting-Pfahringer.pdf
      Accepted version, 158.5Kb
      DOI
       10.1016/j.entcs.2016.01.005
      Find in your library  
      Citation
      Export citation
      Weng, M.-H., Utting, M., & Pfahringer, B. (2015). Bound analysis for Whiley programs. Electronic Notes in Theoretical Computer Science, 320, 53–67. https://doi.org/10.1016/j.entcs.2016.01.005
      Permanent Research Commons link: https://hdl.handle.net/10289/11038
      Abstract
      The Whiley compiler can generate naive C code, but the code is inefficient because it uses infinite integers and dynamic array sizes. Our project goal is to build up a compiler that can translate Whiley programs into efficient OpenCL code with fixed-size integer types and fixed-size arrays, for parallel execution on GPUs. This paper presents an abstract interpretation-based bound inference approach along with symbolic analysis for Whiley programs. The source Whiley program is first analyzed by using our symbolic analyzer to find the matching pattern and make any necessary program transformation. Then the bound analyzer is used to analyze the transformed program to make use of primitive integer types rather than third-party infinite integer type (e.g. using GMP arbitrary precision library). The bound analysis results provide conservative estimates of the ranges of integer variables and array sizes so that efficient code can be generated and integer overflows avoided. The bound analyzer combines the bound consistency technique along with a widening operator to give fast time of solving program constraints and of converging to the fixed point. Several example programs are used to illustrate the bound analyzer algorithm and the program transformation.
      Date
      2015
      Type
      Conference Contribution
      Publisher
      Elsevier
      Rights
      © 2016 The Authors. Published by Elsevier B.V. This is an open access article under the CC BY-NC-ND license.
      Collections
      • Computing and Mathematical Sciences Papers [1455]
      Show full item record  

      Usage

      Downloads, last 12 months
      96
       
       
       

      Usage Statistics

      For this itemFor all of Research Commons

      The University of Waikato - Te Whare Wānanga o WaikatoFeedback and RequestsCopyright and Legal Statement