首页 | 本学科首页   官方微博 | 高级检索  
     


SafeGPU: Contract- and library-based GPGPU for object-oriented languages
Affiliation:1. Department of Computer Science, ETH Zürich, Switzerland;2. Singapore University of Technology and Design, Singapore;1. ETH Zurich, Switzerland;2. Technion, Israel;1. Computer Science Department, Laval University, Canada;2. Computer Science Department, Kuwait University, Kuwait
Abstract:Using GPUs as general-purpose processors has revolutionized parallel computing by providing, for a large and growing set of algorithms, massive data-parallelization on desktop machines. An obstacle to their widespread adoption, however, is the difficulty of programming them and the low-level control of the hardware required to achieve good performance. This paper proposes a programming approach, SafeGPU, that aims to make GPU data-parallel operations accessible through high-level libraries for object-oriented languages, while maintaining the performance benefits of lower-level code. The approach provides data-parallel operations for collections that can be chained and combined to express compound computations, with data synchronization and device management all handled automatically. It also integrates the design-by-contract methodology, which increases confidence in functional program correctness by embedding executable specifications into the program text. We present a prototype of SafeGPU for Eiffel, and show that it leads to modular and concise code that is accessible for GPGPU non-experts, while still providing performance comparable with that of hand-written CUDA code. We also describe our first steps towards porting it to C#, highlighting some challenges, solutions, and insights for implementing the approach in different managed languages. Finally, we show that runtime contract-checking becomes feasible in SafeGPU, as the contracts can be executed on the GPU.
Keywords:GPGPU  Parallel computing  Runtime code generation  Generative programming  Object-orientation  Managed languages  Design-by-contract  Program correctness
本文献已被 ScienceDirect 等数据库收录!
设为首页 | 免责声明 | 关于勤云 | 加入收藏

Copyright©北京勤云科技发展有限公司  京ICP备09084417号