<li>An interesting primer is that
of <a href="resources/Seland_2008_Cuda_Programming.pdf">Seland</a>.</li>
<li>Also look at
- the <a href="http://developer.download.nvidia.com/compute/cuda/3_2/toolkit/docs/CUDA_C_Programming_Guide.pdf">CUDA
- C Programming Guide</a> and other documentation distributed in
- the <a href="http://www.nvidia.com/object/cuda_get.html">CUDA
- toolkit</a>. Because the toolkit is a critical part of a working
- CUDA installation, it may already be installed on your system.
- On <code>borg3</code>, look in <code>/usr/local/cuda/</code>.</li>
- <li>The CUDA SDK (download links on
- the <a href="http://www.nvidia.com/object/cuda_get.html">CUDA
- toolkit page</a>) contain lots of useful examples. Your sysadmin
- may have installed it while setting up CUDA on your system.
- On <code>borg3</code> look
- in <code>/usr/local/cuda/doc/NVIDIA_GPU_Computing_SDK/</code>.</li>
+ the <a href="http://developer.download.nvidia.com/compute/cuda/3_2/toolkit/docs/CUDA_C_Programming_Guide.pdf">CUDA
+ C Programming Guide</a> and other documentation distributed in
+ the <a href="http://www.nvidia.com/object/cuda_get.html">CUDA
+ toolkit</a>. Because the toolkit is a critical part of a working
+ CUDA installation, it may already be installed on your system.
+ On <code>borg3</code>, look in <code>/usr/local/cuda/</code>.</li>
+ <li>The CUDA SDK (download links on
+ the <a href="http://www.nvidia.com/object/cuda_get.html">CUDA
+ toolkit page</a>) contain lots of useful examples. Your sysadmin
+ may have installed it while setting up CUDA on your system.
+ On <code>borg3</code> look
+ in <code>/usr/local/cuda/doc/NVIDIA_GPU_Computing_SDK/</code>.</li>
<li>David Kirk, NVDIA, and Wen-Mei Hwua, ECE, U of Illinos, have
written an excellent textbook on
CUDA: <a href="http://www.elsevierdirect.com/morgan_kaufmann/kirk/">Programming
Gems 3</a> contains great demonstration GPU codes.</li>
</ul>
+<h2 id="learn">Learning CUDA by examples</h2>
+<p>Jason Sanders and Edward
+Kandrot's <a href="http://developer.nvidia.com/object/cuda-by-example.html">CUDA
+by Example</a> contains a number of example problems. Here are
+solutions to some of the problems:</p>
+
+<ul>
+ <li><a href="../../src/cuda_by_example/cudaMallocAndMemcpy.cu">cudaMallocAndMemcpy.cu</a></li>
+ <li><a href="../../src/cuda_by_example/myFirstKernel.cu">myFirstKernel.cu</a></li>
+ <li><a href="../../src/cuda_by_example/reverseArray_singleblock.cu">reverseArray_singleblock.cu</a></li>
+ <li><a href="../../src/cuda_by_example/reverseArray_multiblock.cu">reverseArray_multiblock.cu</a></li>
+ <li><a href="../../src/cuda_by_example/reverseArray_multiblock_fast.cu">reverseArray_multiblock_fast.cu</a></li>
+</ul>
<!--#include virtual="$root_directory/shared/footer.shtml"-->