Chapter 10

Libraries and SDK

Introduction

Writing programs directly in CUDA is not the only option available to people wishing to speed up their work by making use of GPUs. There are three broad ways of developing applications for CUDA:

• Using libraries

• Directive-based programming

• Writing CUDA kernels directly

We’ll look at each of these in turn and when you should apply them.

Libraries

Libraries are useful components that can save you weeks or months of development effort. It makes perfect sense to use libraries where possible because, generally, they are developed by experts in their particular field and thus are both reliable and fast. Some of the more common, and free, libraries are as follows:

• Thrust—An implementation of the C++ ...

Get CUDA Programming now with the O’Reilly learning platform.

O’Reilly members experience books, live events, courses curated by job role, and more from O’Reilly and nearly 200 top publishers.