Cuda-Projects
所属分类:GPU/显卡
开发工具:C++
文件大小:0KB
下载次数:0
上传日期:2023-10-08 05:57:07
上 传 者:
sh-1993
说明: CUDA编程工作的集合。,
(Collection of CUDA programming endeavors.,)
文件列表:
CMakeLists.txt (2535, 2023-12-21)
LICENSE (35149, 2023-12-21)
include/ (0, 2023-12-21)
include/CMakeLists.txt (51, 2023-12-21)
include/Saxpy/ (0, 2023-12-21)
include/Saxpy/CMakeLists.txt (215, 2023-12-21)
include/Saxpy/saxpy.h (720, 2023-12-21)
include/Utilities/ (0, 2023-12-21)
include/Utilities/CMakeLists.txt (290, 2023-12-21)
include/Utilities/debug.h (2448, 2023-12-21)
include/Utilities/device.h (280, 2023-12-21)
include/Utilities/streamtimer.h (644, 2023-12-21)
src/ (0, 2023-12-21)
src/CMakeLists.txt (84, 2023-12-21)
src/ExclusiveScan/ (0, 2023-12-21)
src/ExclusiveScan/CMakeLists.txt (225, 2023-12-21)
src/ExclusiveScan/exclusivescan.cu (8228, 2023-12-21)
src/Saxpy/ (0, 2023-12-21)
src/Saxpy/CMakeLists.txt (363, 2023-12-21)
src/Saxpy/saxpy.cu (2786, 2023-12-21)
src/Saxpy/saxpy.test.cpp (7132, 2023-12-21)
src/Saxpy/settings.h (433, 2023-12-21)
src/Utilities/ (0, 2023-12-21)
src/Utilities/CMakeLists.txt (316, 2023-12-21)
src/Utilities/debug.cpp (2397, 2023-12-21)
src/Utilities/device.cpp (869, 2023-12-21)
src/Utilities/streamtimer.cpp (1160, 2023-12-21)
# CUDA Projects
A place for my personal CUDA tinkering to reside. The layout of the repository adheres to [The Pitchfork Layout](https://api.csswg.org/bikeshed/?force=1&url=https://raw.githubusercontent.com/vector-of-bool/pitchfork/develop/data/spec.bs), specifically using [seperate header placement](https://api.csswg.org/bikeshed/?force=1&url=https://raw.githubusercontent.com/vector-of-bool/pitchfork/develop/data/spec.bs#src.header-placement) and [merged test placement](https://api.csswg.org/bikeshed/?force=1&url=https://raw.githubusercontent.com/vector-of-bool/pitchfork/develop/data/spec.bs#src.tests).
### Dependencies ###
* [CMake](https://cmake.org/download/)
* [CUDA Toolkit](https://developer.nvidia.com/cuda-downloads)
### Perform Out-Of-Source Build ###
From the repository root:
```
mkdir build && cd build && cmake ..
```
For example, to build *Tests* for *Release* on Windows:
```
msbuild.exe Tests.vcxproj /property:Platform=x64 /property:Configuration=Release
```
To then run the *Tests* executable:
```
Release\Tests.exe
```
---
## Exclusive Scan ##
*Work In Progress*. Currently toying around with my exclusive scan implementation using the CUDA *cooperative groups* API.
Given a binary associative operator $\oplus$ with the identity element $\mathbb{i}$ and a contiguous array of *n* elements $\mathbf{A}_n = [a_1, a_2, \ldots, a_n]$:
$$\textrm{Exclusive Scan}(\mathbf{A}_n) = [\mathbb{i}, a_1, a_1 \oplus a_2, a_1 \oplus a_2 \oplus a_3, \ldots, a_1 \oplus a_2 \ldots \oplus a_n-1]$$
---
## Saxpy ##
The canonical *single-precision ax + y kernel*:
$$\mathbf{\overline{z}} = \alpha\mathbf{\overline{x}} + \mathbf{\overline{y}} \quad \textrm{where} \quad \mathbf{\overline{x}}, \mathbf{\overline{y}}, \mathbf{\overline{z}} \in \mathbb{R}^{n}, \textrm{ } \alpha \in \mathbb{R}$$
This is used as a prototype kernel for code and file organization.
---
## Utilities ##
CUDA and host utility functions that are useful when working with the CUDA programming model.
---
近期下载者:
相关文件:
收藏者: