1
1
<a href =' https://gpuci.gpuopenanalytics.com/job/nvidia/job/thrust/job/branch/job/thrust-cpu-build/CXX_TYPE=gcc,CXX_VER=9,OS_TYPE=ubuntu,OS_VER=20.04,SDK_TYPE=cuda,SDK_VER=11.0-devel/ ' ><img src =' https://gpuci.gpuopenanalytics.com/job/nvidia/job/thrust/job/branch/job/thrust-cpu-build/CXX_TYPE=gcc,CXX_VER=9,OS_TYPE=ubuntu,OS_VER=20.04,SDK_TYPE=cuda,SDK_VER=11.0-devel/badge/icon ' ></a >
2
2
3
- Thrust: Code at the speed of light
4
- ==================================
3
+ # Thrust: Code at the speed of light
5
4
6
5
Thrust is a C++ parallel programming library which resembles the C++ Standard
7
6
Library. Thrust's ** high-level** interface greatly enhances
@@ -12,15 +11,22 @@ software. Develop **high-performance** applications rapidly with Thrust!
12
11
13
12
Thrust is included in the NVIDIA HPC SDK and the CUDA Toolkit.
14
13
15
- Quick Start: Using Thrust From Your Project
16
- -------------------------------------------
14
+ ## Quick Start
17
15
18
- To use Thrust from your project, first recursively clone the Thrust Github repository:
16
+ ### Getting the Thrust Source Code
17
+
18
+ The CUDA Toolkit provides a recent release of the Thrust source code in
19
+ ` include/thrust ` . This will be suitable for most users.
20
+
21
+ Users that wish to contribute to Thrust or try out newer features should
22
+ recursively clone the Thrust Github repository:
19
23
20
24
```
21
25
git clone --recursive https://github.com/NVIDIA/thrust.git
22
26
```
23
27
28
+ ### Using Thrust From Your Project
29
+
24
30
Thrust is a header-only library; there is no need to build or install the project
25
31
unless you want to run the Thrust unit tests.
26
32
@@ -39,8 +45,7 @@ For non-CMake projects, compile with:
39
45
- ` -DTHRUST_DEVICE_SYSTEM=THRUST_DEVICE_SYSTEM_XXX ` , where ` XXX ` is
40
46
` CPP ` , ` OMP ` , ` TBB ` , or ` CUDA ` (default).
41
47
42
- Examples
43
- --------
48
+ ### Examples
44
49
45
50
Thrust is best explained through examples. The following source code
46
51
generates random numbers serially and then transfers them to a parallel
@@ -98,8 +103,16 @@ int main(void)
98
103
}
99
104
```
100
105
101
- CI Status
102
- ---------
106
+ Additional usage examples can be found in the [ ` examples/ ` ] ( examples/ ) and
107
+ [ ` testing/ ` ] ( testing/ ) directories of the Github repo.
108
+
109
+ ## Documentation Resources
110
+
111
+ - [ API Reference] ( https://thrust.github.io/doc/modules.html )
112
+ - [ Examples] ( https://github.com/NVIDIA/thrust/tree/main/examples )
113
+ - [ User Support] ( https://github.com/NVIDIA/thrust/discussions )
114
+
115
+ ## CI Status
103
116
104
117
<a href =' https://gpuci.gpuopenanalytics.com/job/nvidia/job/thrust/job/branch/job/thrust-gpu-build/CXX_TYPE=gcc,CXX_VER=7,OS_TYPE=ubuntu,OS_VER=20.04,SDK_TYPE=cuda,SDK_VER=11.3.1-devel/ ' ><img src =' https://gpuci.gpuopenanalytics.com/job/nvidia/job/thrust/job/branch/job/thrust-gpu-build/CXX_TYPE=gcc,CXX_VER=7,OS_TYPE=ubuntu,OS_VER=20.04,SDK_TYPE=cuda,SDK_VER=11.3.1-devel/badge/icon?subject=NVCC%2011.3.1%20%2B%20GCC%207%20build%20and%20device%20tests ' ></a >
105
118
@@ -129,8 +142,7 @@ CI Status
129
142
130
143
<a href =' https://gpuci.gpuopenanalytics.com/job/nvidia/job/thrust/job/branch/job/thrust-cpu-build/CXX_TYPE=nvcxx,CXX_VER=21.5,OS_TYPE=ubuntu,OS_VER=20.04,SDK_TYPE=nvhpc,SDK_VER=21.5-devel-cuda11.3/ ' ><img src =' https://gpuci.gpuopenanalytics.com/job/nvidia/job/thrust/job/branch/job/thrust-cpu-build/CXX_TYPE=nvcxx,CXX_VER=21.5,OS_TYPE=ubuntu,OS_VER=20.04,SDK_TYPE=nvhpc,SDK_VER=21.5-devel-cuda11.3/badge/icon?subject=NVC%2B%2B%2021.5%20build%20and%20host%20tests ' ></a >
131
144
132
- Supported Compilers
133
- -------------------
145
+ ## Supported Compilers
134
146
135
147
Thrust is regularly tested using the specified versions of the following
136
148
compilers. Unsupported versions may emit deprecation warnings, which can be
@@ -142,8 +154,7 @@ silenced by defining THRUST_IGNORE_DEPRECATED_COMPILER during compilation.
142
154
- Clang 7+
143
155
- MSVC 2019+ (19.20/16.0/14.20)
144
156
145
- Releases
146
- --------
157
+ ## Releases
147
158
148
159
Thrust is distributed with the NVIDIA HPC SDK and the CUDA Toolkit in addition
149
160
to GitHub.
@@ -194,8 +205,7 @@ See the [changelog](CHANGELOG.md) for details about specific releases.
194
205
| 1.1.0 | |
195
206
| 1.0.0 | |
196
207
197
- Development Process
198
- -------------------
208
+ ## Development Process
199
209
200
210
Thrust uses the [ CMake build system] ( https://cmake.org/ ) to build unit tests,
201
211
examples, and header tests. To build Thrust as a developer, the following
0 commit comments