Ready to go? Add this product to your cart and select a plan during checkout. Payment plans are offered through our trusted finance partners Klarna, PayTomorrow, Affirm, Afterpay, Apple Pay, and PayPal. No-credit-needed leasing options through Acima may also be available at checkout.
Learn more about financing & leasing here.
30-day refund/replacement
To qualify for a full refund, items must be returned in their original, unused condition. If an item is returned in a used, damaged, or materially different state, you may be granted a partial refund.
To initiate a return, please visit our Returns Center.
View our full returns policy here.
Description
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 FeaturesGet to grips with GPU programming tools such as PyCUDA, scikit-cuda, and NsightExplore CUDA libraries such as cuBLAS, cuFFT, and cuSolverApply GPU programming to modern data science applicationsBook DescriptionGPU 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 learnWrite effective and efficient GPU kernels and device functionsWork with libraries such as cuFFT, cuBLAS, and cuSolverDebug and profile your code with Nsight and Visual ProfilerApply GPU programming to data science problemsBuild a GPU-based deep neural network from scratchExplore advanced GPU hardware features such as warp shufflingWho this book is forThis 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 ContentsWhy GPU Programming?Setting Up Your GPU Programming EnvironmentGetting Started with PyCUDAKernels, Threads, Blocks, and GridsStreams, Events, Contexts, and ConcurrencyDebugging and Profiling Your CUDA CodeUsing the CUDA Libraries with Scikit-CUDA Draft completeThe CUDA Device Function Libraries and ThrustImplementing a Deep Neural Network Working with Compiled GPU Code Performance Optimization in CUDA Where to Go from Here Read more
Publisher : Packt Publishing (November 28, 2018)
Language : English
Paperback : 310 pages
ISBN-10 : 1788993918
ISBN-13 : 13
Item Weight : 1.21 pounds
Dimensions : 9.25 x 7.52 x 0.65 inches
Best Sellers Rank: #1,028,020 in Books (See Top 100 in Books) #56 in Parallel Computer Programming #719 in Computer Programming Languages #1,061 in Python Programming
#56 in Parallel Computer Programming:
#719 in Computer Programming Languages: