Home | Amazing | Today | Tags | Publishers | Years | Account | Search 
Hands-On GPU Programming with Python and CUDA: Explore high-performance parallel computing with CUDA

Buy

Build GPU-accelerated high performing applications with Python 2.7, CUDA 9, and open source libraries such as PyCUDA and scikit-cuda. We recommend the use of Python 2.7 as this version has stable support across all libraries used in this book.

Key Features

  • Get to grips with GPU programming tools such as PyCUDA, scikit-cuda, and Nsight
  • Explore CUDA libraries such as cuBLAS, cuFFT, and cuSolver
  • Apply GPU programming to modern data science applications

Book Description

GPU programming is the technique of offloading intensive tasks running on the CPU for faster computing. Hands-On GPU Programming with Python and CUDA will help you discover ways to develop high performing Python apps combining the power of Python and CUDA.

This book will help you hit the ground running-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. You'll then see how to query a GPU's features and copy arrays of data to and from its memory. As you make your way through the book, you'll run your code directly on the GPU and write full blown GPU kernels and device functions in CUDA C. You'll even get to grips with profiling GPU code and fully test and debug your code using Nsight IDE. Furthermore, the book covers some well-known NVIDIA libraries such as cuFFT and cuBLAS.

With a solid background in place, you'll be able to develop your very own GPU-based deep neural network from scratch, and explore advanced topics such as warp shuffling, dynamic parallelism, and PTX assembly. Finally, you'll touch up on topics and applications like AI, graphics, and blockchain.

By the end of this book, you'll be confident in solving problems related to data science and high-performance computing with GPU programming.

What you will learn

  • Write effective and efficient GPU kernels and device functions
  • Work with libraries such as cuFFT, cuBLAS, and cuSolver
  • Debug and profile your code with Nsight and Visual Profiler
  • Apply GPU programming to data science problems
  • Build a GPU-based deep neural network from scratch
  • Explore advanced GPU hardware features such as warp shuffling

Who this book is for

This book is for developers and data scientists who want to learn the basics of effective GPU programming to improve performance using Python code. Familiarity with mathematics and physics concepts along with some experience with Python and any C-based programming language will be helpful.

Table of Contents

  1. Why GPU Programming?
  2. Setting Up Your GPU Programming Environment
  3. Getting Started with PyCUDA
  4. Kernels, Threads, Blocks, and Grids
  5. Streams, Events, Contexts, and Concurrency
  6. Debugging and Profiling Your CUDA Code
  7. Using the CUDA Libraries with Scikit-CUDA Draft complete
  8. The CUDA Device Function Libraries and Thrust
  9. Implementing a Deep Neural Network
  10. Working with Compiled GPU Code
  11. Performance Optimization in CUDA
  12. Where to Go from Here
(HTML tags aren't allowed.)

Agency and the Semantic Web
Agency and the Semantic Web
This highly topical text considers the construction of the next generation of the Web, called the Semantic Web. This will enable computers to automatically consume Web-based information, overcoming the human-centric focus of the Web as it stands at present, and expediting the construction of a whole new class of knowledge-based applications that...
Tkinter GUI Application Development Blueprints - Second Edition: Build nine projects by working with widgets, geometry management, event handling, and more
Tkinter GUI Application Development Blueprints - Second Edition: Build nine projects by working with widgets, geometry management, event handling, and more

Geometry Management, Event Handling, and more

Key Features

  • A Practical, guide to learn the application of Python and GUI programming with tkinter
  • Create multiple cross-platform real-world projects by integrating host of third party libraries and tools
  • ...
Mathematical Aspects Of Quantum Computing 2007 (Kinki University Series on Quantum Computing)
Mathematical Aspects Of Quantum Computing 2007 (Kinki University Series on Quantum Computing)
This volume contains lecture notes and poster contributions presented at the summer school “Mathematical Aspects of Quantum Computing”, held from 27 to 29 August, 2007 at Kinki University in Osaka, Japan. The aims of this summer school were to exchange and share ideas among researchers working in various fields of quantum computing...

Neuropsychological Assessment and Intervention for Childhood and Adolescent Disorders
Neuropsychological Assessment and Intervention for Childhood and Adolescent Disorders

A compelling and compassionate case study approach to a broad range of neuropsychological disorders

Neuropsychological Assessment and Intervention for Childhood and Adolescent Disorders focuses on the neuropsychological assessment and evidence-based practices available for assessing and treating children living with...

Audio Programming for Interactive Games
Audio Programming for Interactive Games
Martin Wilde explores the cutting-edge creative potential of game audio systems, addressing the latest working methods used in creating and programming immersive, interactive and non-linear audio for games. The book demonstrates how game programmers can create a software system enabling the audio content provider (composer or sound designer) to...
Wireless Communications Security (Artech House Universal Personal Communications)
Wireless Communications Security (Artech House Universal Personal Communications)
Addressing the fast-growing need to integrate effective security features into wireless communication systems, this cutting-edge book offers a broad overview of wireless security, so engineers can choose the methods and techniques that are most appropriate for their projects. Professionals gain a solid understanding of critical cryptography...
©2020 LearnIT (support@pdfchm.net) - Privacy Policy