CUDA Programming: A Developer's Guide to Parallel Computing with GPUsNewnes, 28 груд. 2012 р. - 600 стор. If you need to learn CUDA but don't have experience with parallel computing, CUDA Programming: A Developer's Introduction offers a detailed guide to CUDA with a grounding in parallel fundamentals. It starts by introducing CUDA and bringing you up to speed on GPU parallelism and hardware, then delving into CUDA installation. Chapters on core concepts including threads, blocks, grids, and memory focus on both parallel and CUDA-specific issues. Later, the book demonstrates CUDA in practice for optimizing applications, adjusting to new hardware, and solving common problems.
|
З цієї книги
Результати 6-10 із 90
Сторінка 78
... per block in this example. Thus, you have a 1 Â 128 thread base addresses, before adding in the thread offset from the threadIdx.x parameter. Have you noticed the small error we have introduced in 78 CHAPTER 5 Grids, Blocks, and Threads ...
... per block in this example. Thus, you have a 1 Â 128 thread base addresses, before adding in the thread offset from the threadIdx.x parameter. Have you noticed the small error we have introduced in 78 CHAPTER 5 Grids, Blocks, and Threads ...
Сторінка 79
... block? You will now launch 256 threads in total and index the array from 0 to 255. If you don't also change the size ... per block, you can schedule 33,554,432 (around 33.5 million) threads in total. At 512 threads, you can have up to ...
... block? You will now launch 256 threads in total and index the array from 0 to 255. If you don't also change the size ... per block, you can schedule 33,554,432 (around 33.5 million) threads in total. At 512 threads, you can have up to ...
Сторінка 80
... per thread or use another dimension of blocks, which we'll cover in the next section. Block arrangement To ensure that you understand the block arrangement, we're going to write a short kernel program to print the block, thread, warp, and ...
... per thread or use another dimension of blocks, which we'll cover in the next section. Block arrangement To ensure that you understand the block arrangement, we're going to write a short kernel program to print the block, thread, warp, and ...
Сторінка 83
... threads each. The thread indexes within each of these blocks go from 0 to 63. You also see that each block generates ... per block. In most cases, this is the minimum number of threads you should think about using. This gives you exactly ...
... threads each. The thread indexes within each of these blocks go from 0 to 63. You also see that each block generates ... per block. In most cases, this is the minimum number of threads you should think about using. This gives you exactly ...
Сторінка 85
... threads and blocks in CUDA? CUDA is designed to allow for data decomposition ... per thread block. Never do this, as it will result in completely ... threads within the same block can communicate using shared memory, a very quick way to ...
... threads and blocks in CUDA? CUDA is designed to allow for data decomposition ... per thread block. Never do this, as it will result in completely ... threads within the same block can communicate using shared memory, a very quick way to ...
Зміст
Chapter 8 MultiCPU and MultiGPU Solutions | 267 |
Chapter 9 Optimizing Your Application | 305 |
Chapter 10 Libraries and SDK | 441 |
Chapter 11 Designing GPUBased Systems | 503 |
Chapter 12 Common Problems Causes and Solutions | 527 |
Index | 565 |
Інші видання - Показати все
CUDA Programming: A Developer's Guide to Parallel Computing with GPUs Shane Cook Обмежений попередній перегляд - 2012 |
Загальні терміни та фрази
256 threads algorithm allocate application array atomic atomic operations blockDim.x blockIdx.x bytes calculation compiler compute 2.x const int const u32 constant memory copy CUDA CALL cuda CUDA cores dataset device device_num elements example execution Fermi Figure function GB/s GeForce GTX 470:GMEM global memory GMEM hardware host memory ID:0 GeForce GTX InfiniBand instruction issue iterations Kepler kernel L1 cache latency Linux look loop malloc Memcpy memory access memory bandwidth memory fetch merge sort node num_elem num_elements num_threads number of blocks number of threads NVIDIA OpenMP operation optimization output Parallel Nsight parameter PCI-E performance pointer prefix sum problem processor radix sort reduce registers result serial shared memory SIMD simply single SP SP SP speedup stream synchronization Tesla threadIdx.x threads per block transfer typically uint4 unsigned int usage version is faster void warp write þ¼