Für diesen Artikel ist leider kein Bild verfügbar.

Learn CUDA Programming

A beginner's guide to GPU programming and parallel computing with CUDA 10.x and C/C++
Buch | Softcover
508 Seiten
2019
Packt Publishing Limited (Verlag)
978-1-78899-624-2 (ISBN)
37,40 inkl. MwSt
  • Titel ist leider vergriffen;
    keine Neuauflage
  • Artikel merken
This book is for programmers who want to delve into parallel computing, become part of the high-performance computing community and apply those techniques to build modern applications. Experience with C++ programming is assumed. There are some sample examples on equivalent Fortran code. For Deep Learning enthusiasts python based sample code is also provided.
Explore different GPU programming methods using libraries and directives, such as OpenACC, with extension to languages such as C, C++, and Python


Key Features


* Learn parallel programming principles and practices and performance analysis in GPU computing

Get to grips with distributed multi GPU programming and other approaches to GPU programming


Understand how GPU acceleration in deep learning models can improve their performance




Book Description



Compute Unified Device Architecture (CUDA) is NVIDIA's GPU computing platform and application programming interface. It's designed to work with programming languages such as C, C++, and Python. With CUDA, you can leverage a GPU's parallel computing power for a range of high-performance computing applications in the fields of science, healthcare, and deep learning.




Learn CUDA Programming will help you learn GPU parallel programming and understand its modern applications. In this book, you'll discover CUDA programming approaches for modern GPU architectures. You'll not only be guided through GPU features, tools, and APIs, you'll also learn how to analyze performance with sample parallel programming algorithms. This book will help you optimize the performance of your apps by giving insights into CUDA programming platforms with various libraries, compiler directives (OpenACC), and other languages. As you progress, you'll learn how additional computing power can be generated using multiple GPUs in a box or in multiple boxes. Finally, you'll explore how CUDA accelerates deep learning algorithms, including convolutional neural networks (CNNs) and recurrent neural networks (RNNs).




By the end of this CUDA book, you'll be equipped with the skills you need to integrate the power of GPU computing in your applications.


What you will learn


* Understand general GPU operations and programming patterns in CUDA

Uncover the difference between GPU programming and CPU programming


Analyze GPU application performance and implement optimization strategies


Explore GPU programming, profiling, and debugging tools


Grasp parallel programming algorithms and how to implement them


Scale GPU-accelerated applications with multi-GPU and multi-nodes


Delve into GPU programming platforms with accelerated libraries, Python, and OpenACC


Gain insights into deep learning accelerators in CNNs and RNNs using GPUs


Who This Book Is For



This beginner-level book is for programmers who want to delve into parallel computing, become part of the high-performance computing community and build modern applications. Basic C and C++ programming experience is assumed. For deep learning enthusiasts, this book covers Python InterOps, DL libraries, and practical examples on performance estimation.

Jaegeun Han is currently working as a solutions architect at NVIDIA, Korea. He has around 9 years' experience and he supports consumer internet companies in deep learning. Before NVIDIA, he worked in system software and parallel computing developments, and application development in medical and surgical robotics fields. He obtained a master's degree in CSE from Seoul National University. Bharatkumar Sharma obtained a master's degree in information technology from the Indian Institute of Information Technology, Bangalore. He has around 10 years of development and research experience in the domains of software architecture and distributed and parallel computing. He is currently working with NVIDIA as a senior solutions architect, South Asia.

Table of Contents



Introduction to CUDA programming
CUDA Memory Management
CUDA Thread Programming: Performance Indicators and Optimization Strategies
CUDA Kernel Execution model and optimization strategies
CUDA Application Monitoring and Debugging
Scalable Multi-GPU programming
Parallel Programming Patterns in CUDA
GPU accelerated Libraries and popular programming languages
GPU programming using OpenACC
Deep Learning Acceleration with CUDA
Appendix

Erscheinungsdatum
Verlagsort Birmingham
Sprache englisch
Maße 75 x 93 mm
Themenwelt Mathematik / Informatik Informatik Programmiersprachen / -werkzeuge
Mathematik / Informatik Informatik Theorie / Studium
ISBN-10 1-78899-624-0 / 1788996240
ISBN-13 978-1-78899-624-2 / 9781788996242
Zustand Neuware
Haben Sie eine Frage zum Produkt?
Mehr entdecken
aus dem Bereich
Das Handbuch für Webentwickler

von Philip Ackermann

Buch | Hardcover (2023)
Rheinwerk (Verlag)
49,90
das große Praxisbuch – Grundlagen, fortgeschrittene Themen und Best …

von Ferdinand Malcher; Danny Koppenhagen; Johannes Hoppe

Buch | Hardcover (2023)
dpunkt (Verlag)
42,90
Programmiersprache, grafische Benutzeroberflächen, Anwendungen

von Ulrich Stein

Buch | Hardcover (2023)
Hanser (Verlag)
39,99