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
bitonic.cu Apply consistent code formatting across the repo. Add clang-format and pre-commit hooks. 3 months ago
main.cpp Apply consistent code formatting across the repo. Add clang-format and pre-commit hooks. 3 months ago
mergeSort.cu Apply consistent code formatting across the repo. Add clang-format and pre-commit hooks. 3 months ago
mergeSort_common.h Apply consistent code formatting across the repo. Add clang-format and pre-commit hooks. 3 months ago
mergeSort_host.cpp Apply consistent code formatting across the repo. Add clang-format and pre-commit hooks. 3 months ago
mergeSort_validate.cpp Apply consistent code formatting across the repo. Add clang-format and pre-commit hooks. 3 months ago

README.md

mergeSort - Merge Sort

Description

This sample implements a merge sort (also known as Batcher's sort), algorithms belonging to the class of sorting networks. While generally subefficient on large sequences compared to algorithms with better asymptotic algorithmic complexity (i.e. merge sort or radix sort), may be the algorithms of choice for sorting batches of short- to mid-sized (key, value) array pairs. Refer to the excellent tutorial by H. W. Lang http://www.iti.fh-flensburg.de/lang/algorithmen/sortieren/networks/indexen.htm

Key Concepts

Data-Parallel Algorithms

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

cudaMalloc, cudaDeviceSynchronize, cudaMemcpy, cudaFree

Prerequisites

Download and install the CUDA Toolkit for your corresponding platform.

References (for more details)