Hands-On GPU Programming with CUDA C and Python 3 - Second Edition

By Dr. Brian Tuomanen
  • Instant online access to over 8,000+ books and videos
  • Constantly updated with 100+ new titles each month
  • Breadth and depth in over 1,000+ technologies

About this book

GPUs are designed for maximum throughput but are subject to low-level subtleties. In contrast, Python is a high-level language that places emphasis on ease-of-use over speed. This updated second edition follows a practical approach to teaching you efficient GPU programming techniques with the latest version of Python and CUDA.

You’ll start by learning how to apply Amdahl’s Law, use a code profiler to identify bottlenecks in your Python code, and set up a GPU programming environment. In the chapters that follow, you’ll understand how to query the GPU’s features and set up an environment on the Microsoft Azure cloud, and on a NVIDIA Jetson Nano board. Next, you’ll get hands-on with launching code directly onto the GPU and writing GPU kernels and device functions in CUDA C. You’ll later get to grips with profiling GPU code, and testing and debugging your code using Nsight IDE. The book will then delve into well-known NVIDIA libraries, such as cuFFT and cuBLAS. From developing a custom TensorFlow module in CUDA to adding gradient outputs to a TensorFlow module, you’ll gradually build on your skills. Finally, you'll learn ray tracing in CUDA, and how to develop a simple ray tracer from scratch.

By the end of this book, you’ll be able to apply GPU programming to solve problems related to data science and high-performance computing.

Publication date:
October 2021

About the Author

  • Dr. Brian Tuomanen

    Dr. Brian Tuomanen has been working with CUDA and General-Purpose GPU Programming since 2014. He received his Bachelor of Science in Electrical Engineering from the University of Washington in Seattle, and briefly worked as a Software Engineer before switching to Mathematics for Graduate School. He completed his Ph.D. in Mathematics at the University of Missouri in Columbia, where he first encountered GPU programming as a means for studying scientific problems. Dr. Tuomanen has spoken at the US Army Research Lab about General Purpose GPU programming, and has recently lead GPU integration and development at a Maryland based start-up company. He currently lives and works in the Seattle area.

    Browse publications by this author
Book Title
Unlock this full book with a FREE 10-day trial
Start Free Trial