CUDA_Toolkit_Reference_Manual.pdf
(
4413 KB
)
Pobierz
451457529 UNPDF
NVIDIA CUDA
Reference Manual
Version 3.2 Beta
August 2010
Contents
1 Deprecated List
1
2 Module Index
5
2.1 Modules
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
5
3 Data Structure Index
7
3.1 Data Structures
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
7
4 Module Documentation
9
4.1 CUDA Runtime API
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
9
4.1.1 Detailed Description
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10
4.1.2 Define Documentation
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10
4.1.2.1 CUDART_VERSION
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10
4.2 Thread Management
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 11
4.2.1 Detailed Description
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 11
4.2.2 Function Documentation
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 11
4.2.2.1 cudaThreadExit
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 11
4.2.2.2 cudaThreadGetCacheConfig
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 12
4.2.2.3 cudaThreadGetLimit
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 12
4.2.2.4 cudaThreadSetCacheConfig
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 13
4.2.2.5 cudaThreadSetLimit
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 13
4.2.2.6 cudaThreadSynchronize
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 14
4.3 Error Handling
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 15
4.3.1 Detailed Description
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 15
4.3.2 Function Documentation
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 15
4.3.2.1 cudaGetErrorString
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 15
4.3.2.2 cudaGetLastError
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 15
4.3.2.3 cudaPeekAtLastError
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 16
4.4 Device Management
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 17
ii
CONTENTS
4.4.1 Detailed Description
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 17
4.4.2 Function Documentation
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 17
4.4.2.1 cudaChooseDevice
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 17
4.4.2.2 cudaGetDevice
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 18
4.4.2.3 cudaGetDeviceCount
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 18
4.4.2.4 cudaGetDeviceProperties
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 18
4.4.2.5 cudaSetDevice
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 20
4.4.2.6 cudaSetDeviceFlags
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 21
4.4.2.7 cudaSetValidDevices
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 21
4.5 Stream Management
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 23
4.5.1 Detailed Description
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 23
4.5.2 Function Documentation
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 23
4.5.2.1 cudaStreamCreate
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 23
4.5.2.2 cudaStreamDestroy
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 23
4.5.2.3 cudaStreamQuery
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 24
4.5.2.4 cudaStreamSynchronize
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 24
4.5.2.5 cudaStreamWaitEvent
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 25
4.6 Event Management
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 26
4.6.1 Detailed Description
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 26
4.6.2 Function Documentation
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 26
4.6.2.1 cudaEventCreate
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 26
4.6.2.2 cudaEventCreateWithFlags
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 27
4.6.2.3 cudaEventDestroy
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 27
4.6.2.4 cudaEventElapsedTime
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 28
4.6.2.5 cudaEventQuery
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 28
4.6.2.6 cudaEventRecord
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 29
4.6.2.7 cudaEventSynchronize
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 29
4.7 Execution Control
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 30
4.7.1 Detailed Description
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 30
4.7.2 Function Documentation
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 30
4.7.2.1 cudaConfigureCall
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 30
4.7.2.2 cudaFuncGetAttributes
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 31
4.7.2.3 cudaFuncSetCacheConfig
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 31
4.7.2.4 cudaLaunch
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 32
4.7.2.5 cudaSetDoubleForDevice
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 32
4.7.2.6 cudaSetDoubleForHost
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 33
4.7.2.7 cudaSetupArgument
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 33
Generated for NVIDIA CUDA Library by Doxygen
CONTENTS
iii
4.8 Memory Management
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 34
4.8.1 Detailed Description
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 37
4.8.2 Function Documentation
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 37
4.8.2.1 cudaFree
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 37
4.8.2.2 cudaFreeArray
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 37
4.8.2.3 cudaFreeHost
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 38
4.8.2.4 cudaGetSymbolAddress
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 38
4.8.2.5 cudaGetSymbolSize
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 39
4.8.2.6 cudaHostAlloc
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 39
4.8.2.7 cudaHostGetDevicePointer
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 40
4.8.2.8 cudaHostGetFlags
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 41
4.8.2.9 cudaMalloc
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 41
4.8.2.10 cudaMalloc3D
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 41
4.8.2.11 cudaMalloc3DArray
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 42
4.8.2.12 cudaMallocArray
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 43
4.8.2.13 cudaMallocHost
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 44
4.8.2.14 cudaMallocPitch
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 44
4.8.2.15 cudaMemcpy
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 45
4.8.2.16 cudaMemcpy2D
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 45
4.8.2.17 cudaMemcpy2DArrayToArray
. . . . . . . . . . . . . . . . . . . . . . . . . . . . 46
4.8.2.18 cudaMemcpy2DAsync
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 47
4.8.2.19 cudaMemcpy2DFromArray
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 48
4.8.2.20 cudaMemcpy2DFromArrayAsync
. . . . . . . . . . . . . . . . . . . . . . . . . . 48
4.8.2.21 cudaMemcpy2DToArray
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 49
4.8.2.22 cudaMemcpy2DToArrayAsync
. . . . . . . . . . . . . . . . . . . . . . . . . . . . 50
4.8.2.23 cudaMemcpy3D
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 51
4.8.2.24 cudaMemcpy3DAsync
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 52
4.8.2.25 cudaMemcpyArrayToArray
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 54
4.8.2.26 cudaMemcpyAsync
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 54
4.8.2.27 cudaMemcpyFromArray
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 55
4.8.2.28 cudaMemcpyFromArrayAsync
. . . . . . . . . . . . . . . . . . . . . . . . . . . . 56
4.8.2.29 cudaMemcpyFromSymbol
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 56
4.8.2.30 cudaMemcpyFromSymbolAsync
. . . . . . . . . . . . . . . . . . . . . . . . . . . 57
4.8.2.31 cudaMemcpyToArray
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 58
4.8.2.32 cudaMemcpyToArrayAsync
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 58
4.8.2.33 cudaMemcpyToSymbol
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 59
4.8.2.34 cudaMemcpyToSymbolAsync
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . 60
Generated for NVIDIA CUDA Library by Doxygen
Plik z chomika:
Quantomix
Inne pliki z tego folderu:
Colin Campbell, Ade Miller A Parallel Programming with Microsoft Visual C++ Design Patterns for Decomposition and Coordination on Multicore Architectures 2011-with notes(1).pdf
(8908 KB)
Using_OpenMP_Portable_Shared_Memory_Parallel_Programming__2007.pdf
(16768 KB)
CppAMPLanguageAndProgrammingModel.pdf
(2839 KB)
Foundations_of_Parallel_Programming__Cambridge_International_Series_on_Parallel_Computation_.pdf
(5607 KB)
Rohit_Chandra,_Ramesh_Menon,_Leo_Dagum,_David_Parallel_Programming_in_OpenMP(2000).pdf
(1666 KB)
Inne foldery tego chomika:
Architektura Komputerów
ASP.NET
C++
CSharp.NET
HTML
Zgłoś jeśli
naruszono regulamin