Advances in GPU Research and Practice focuses on research and practices in GPU based systems. The topics treated cover a range of issues, ranging from hardware and architectural issues, to high level issues, such as application systems, parallel programming, middleware, and power and energy issues.
Divided into six parts, this edited volume provides the latest research on GPU computing. Part I: Architectural Solutions focuses on the architectural topics that improve on performance of GPUs, Part II: System Software discusses OS, compilers, libraries, programming environment, languages, and paradigms that are proposed and analyzed to help and support GPU programmers. Part III: Power and Reliability Issues covers different aspects of energy, power, and reliability concerns in GPUs. Part IV: Performance Analysis illustrates mathematical and analytical techniques to predict different performance metrics in GPUs. Part V: Algorithms presents how to design efficient algorithms and analyze their complexity for GPUs. Part VI: Applications and Related Topics provides use cases and examples of how GPUs are used across many sectors.
- Discusses how to maximize power and obtain peak reliability when designing, building, and using GPUs
- Covers system software (OS, compilers), programming environments, languages, and paradigms proposed to help and support GPU programmers
- Explains how to use mathematical and analytical techniques to predict different performance metrics in GPUs
- Illustrates the design of efficient GPU algorithms in areas such as bioinformatics, complex systems, social networks, and cryptography
- Provides applications and use case scenarios in several different verticals, including medicine, social sciences, image processing, and telecommunications
Part 1: Programming and Tools 1. Formal analysis techniques for reliable GPU programming: current solutions and call to action 2. SnuCL: A unified OpenCL framework for heterogeneous clusters 3. Thread communication and synchronization on massively parallel GPUs 4. Software-level task scheduling on GPUs 5. Data placement on GPUs
Part 2: Algorithms and Applications 6. Biological sequence analysis on GPU 7. Graph algorithms on GPUs 8. GPU alignment of two and three sequences 9. Augmented Block Cimmino Distributed Algorithm for solving tridiagonal systems on GPU 10. GPU computing applied to linear and mixed-integer programming 11. GPU-accelerated shortest paths computations for planar graphs 12. GPU sorting algorithms 13. MPC: An effective floating-point compression algorithm for GPUs 14. Adaptive sparse matrix representation for efficient matrix-vector multiplication
Part 3: Architecture and Performance 15. A framework for accelerating bottlenecks in GPU execution with assist warps 16. Accelerating GPU accelerators through neural algorithmic transformation 17. The need for heterogeneous network-on-chip architectures with GPGPUs: A case study with photonic interconnects 18. Accurately modeling GPGPU frequency scaling with the CRISP performance model
Part 4: Power and Reliability 19. Energy and power considerations of GPUs 20. Architecting the last-level cache for GPUs using STT-MRAM nonvolatile memory 21. Power management of mobile GPUs 22. Advances in GPU reliability research 23. Addressing hardware reliability challenges in general-purpose GPUs
Professor Hamid Sarbazi-Azad, Ph.D. is currently a professor at the department of computer engineering of Sharif University of Technology, and heads the IPM School of Computer Science, Tehran, Iran. His research interests include high-performance computer architectures, NoCs and SoCs, multicore systems, GPUs, and memory architectures. He is an associate editor/editorial board member of several journals including IEEE Transactions on Computers and ACM Computing Surveys. He received his PhD in computing science from the University of Glasgow, Glasgow, UK, in 2002