- 雑誌
- 第54回プログラミング・シンポジウム予稿集
- 巻号頁・発行日
- vol.2013, pp.81-86, 2013-01-11
Graphics processing units (GPUs) are the state of the art embracing the concept of many-core technology. Their significant advantage in performance and performance-per-watt compared to traditional microprocessors has facilitated development of GPUs in many compute applications. However, GPUs are often treated as ``black-box'' devices due to proprietary strategies of hardware vendors. One of the greatest challenges of this research domain is the in-depth understanding of GPU architectures and runtime mechanisms so that the systems research community can tackle fundamental problems of GPUs. In this paper, we present an open-source implementation of CUDA runtime, which is the most widely-recognized programming framework for GPUs, as well as a documentation of ``how GPUs work'' investigated by our reverse engineering work. Our implementation is based on Linux and is targeted at NVIDIA GPUs.