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
data add and update samples for CUDA 11.6 4 years ago
doc 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 4 months ago
README.md Replace README references to "CUDA Toolkit 12.5" with general "CUDA Toolkit" 2 months ago
particleSystem.cpp Apply consistent code formatting across the repo. Add clang-format and pre-commit hooks. 3 months ago
particleSystem.cuh Apply consistent code formatting across the repo. Add clang-format and pre-commit hooks. 3 months ago
particleSystem.h Apply consistent code formatting across the repo. Add clang-format and pre-commit hooks. 3 months ago
particleSystem_cuda.cu Apply consistent code formatting across the repo. Add clang-format and pre-commit hooks. 3 months ago
particles.cpp Apply consistent code formatting across the repo. Add clang-format and pre-commit hooks. 3 months ago
particles_kernel.cuh Apply consistent code formatting across the repo. Add clang-format and pre-commit hooks. 3 months ago
particles_kernel_impl.cuh Apply consistent code formatting across the repo. Add clang-format and pre-commit hooks. 3 months ago
render_particles.cpp Apply consistent code formatting across the repo. Add clang-format and pre-commit hooks. 3 months ago
render_particles.h Apply consistent code formatting across the repo. Add clang-format and pre-commit hooks. 3 months ago
shaders.cpp Apply consistent code formatting across the repo. Add clang-format and pre-commit hooks. 3 months ago
shaders.h add and update samples for CUDA 11.6 4 years ago

README.md

particles - Particles

Description

This sample uses CUDA to simulate and visualize a large set of particles and their physical interaction. Adding "-particles=" to the command line will allow users to set # of particles for simulation. This example implements a uniform grid data structure using either atomic operations or a fast radix sort from the Thrust library

Key Concepts

Graphics Interop, Data Parallel Algorithms, Physically-Based Simulation, Performance Strategies

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

cudaGraphicsUnmapResources, cudaMemcpy, cudaFree, cudaGraphicsResourceGetMappedPointer, cudaGraphicsMapResources, cudaDeviceSynchronize, cudaMemset, cudaMemcpyToSymbol, cudaGraphicsGLRegisterBuffer, cudaGraphicsUnregisterResource, cudaMalloc, cudaInit, cudaGLInit

Dependencies needed to build/run

X11, GL

Prerequisites

Download and install the CUDA Toolkit for your corresponding platform. Make sure the dependencies mentioned in Dependencies section above are installed.

References (for more details)

whitepaper