Samples for CUDA Developers which demonstrates features in CUDA Toolkit
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 
 
 
Rob Armstrong 14b1bfdcc4 Replace README references to "CUDA Toolkit 12.5" with general "CUDA Toolkit" 2 months ago
..
.vscode add and update samples for CUDA 11.6 4 years ago
CMakeLists.txt Update all sample CMakeLists.txt to include ENABLE_CUDA_DEBUG flag to enable cuda-gdb 3 months ago
README.md Replace README references to "CUDA Toolkit 12.5" with general "CUDA Toolkit" 2 months ago
simpleMultiCopy.cu Apply consistent code formatting across the repo. Add clang-format and pre-commit hooks. 3 months ago

README.md

simpleMultiCopy - Simple Multi Copy and Compute

Description

Supported in GPUs with Compute Capability 1.1, overlapping compute with one memcopy is possible from the host system. For Quadro and Tesla GPUs with Compute Capability 2.0, a second overlapped copy operation in either direction at full speed is possible (PCI-e is symmetric). This sample illustrates the usage of CUDA streams to achieve overlapping of kernel execution with data copies to and from the device.

Key Concepts

CUDA Streams and Events, Asynchronous Data Transfers, Overlap Compute and Copy, GPU Performance

Supported SM Architectures

SM 5.0 SM 5.2 SM 5.3 SM 6.0 SM 6.1 SM 7.0 SM 7.2 SM 7.5 SM 8.0 SM 8.6 SM 8.7 SM 8.9 SM 9.0

Supported OSes

Linux, Windows

Supported CPU Architecture

x86_64, armv7l

CUDA APIs involved

CUDA Runtime API

cudaHostAlloc, cudaStreamDestroy, cudaMalloc, cudaMemcpyAsync, cudaFree, cudaSetDevice, cudaEventSynchronize, cudaDeviceSynchronize, cudaEventRecord, cudaFreeHost, cudaMemset, cudaEventDestroy, cudaEventElapsedTime, cudaStreamCreate, cudaGetDeviceProperties, cudaEventCreate

Prerequisites

Download and install the CUDA Toolkit for your corresponding platform.

References (for more details)