Heterogeneous Hardware
摘要
This chapter provides the necessary background on computer architecture in order to understand how hardware accelerators are programmed and execute code. While this book focuses on high-level programming languages and managed runtime systems, programming accelerators usually requires deep understanding of the architecture underneath. This chapter focuses on GPU architectures as a representative accelerator type. Besides, this chapter highlights the main differences between CPU architectures and GPUs and explains the GPU execution model. Since, this chapter is geared towards readers that are new to GPU architecture and GPU programming, it introduces the terms related to the GPU architecture and explains the similarities and differences between different GPU vendors.