HPC/Applications/cuda

From CNM Wiki
Jump to navigation Jump to search

Introduction

Carbon offers the 4.2 and 5.0 CUDA versions.

Components

There are three components to CUDA 4.2.

CUDA toolkit

  • The CUDA toolkit contains the compiler nvcc, C include files, and libraries.
  • Load this component as a module to compile and run applications that use GPUs on Carbon.
module load cuda

Driver

  • This is a Linux kernel module (not to be confused with an environment module) plus supporting binaries and other files.
  • This component is pre-installed on Carbon nodes that have a GPU.

SDK

  • The GPU Computing SDK contains code samples and white papers to help you get started writing software with CUDA C/C++.
  • Not necessary to merely run GPU applications.
  • Available on Carbon in two forms.
  • For inspection:
cd ~soft/cuda/NVIDIA_GPU_Computing_SDK-4.2
ls
  • For modifying and compiling:
Unpack the tree yourself. Supply a target directory and the CUDA directory when asked. For reference, here is what happens:
$ module load cuda
$ echo $CUDA_HOME
'/opt/soft/cuda-4.2.9-1
$ ~soft/cuda/dist/4.2/gpucomputingsdk_4.2.9_linux.run
Script started, file is ./gpucomputingsdk_4.2.9_linux.log
Verifying archive integrity... All good.
Uncompressing NVIDIA GPU Computing SDK.......................................................................... … .....

Enter install path (default ~/NVIDIA_GPU_Computing_SDK):
INPUT> /home/share/soft/cuda/NVIDIA_GPU_Computing_SDK-4.2 

Located CUDA at /opt/soft/cuda-4.2.9-1
If this is correct, choose the default below.
If it is not correct, enter the correct path to CUDA

Cannot create second readline interface, falling back to dumb.
Enter CUDA install path (default /opt/soft/cuda-4.2.9-1): 
`sdk/C' -> `/home/share/soft/cuda/NVIDIA_GPU_Computing_SDK-4.2/C'
`sdk/C/common' -> `/home/share/soft/cuda/NVIDIA_GPU_Computing_SDK-4.2/C/common'
`sdk/C/common/Makefile_rendercheckgl' -> `/home/share/soft/cuda/NVIDIA_GPU_Computing_SDK-4.2/C/common/Makefile_rendercheckgl'
…
`sdk/shared/inc/nvMatrix.h' -> `/home/share/soft/cuda/NVIDIA_GPU_Computing_SDK-4.2/shared/inc/nvMatrix.h'
`sdk/shared/inc/exception.h' -> `/home/share/soft/cuda/NVIDIA_GPU_Computing_SDK-4.2/shared/inc/exception.h'

========================================

Configuring SDK Makefile (/home/share/soft/cuda/NVIDIA_GPU_Computing_SDK-4.2/C/common/common.mk)...
Configuring SDK Makefile (/home/share/soft/cuda/NVIDIA_GPU_Computing_SDK-4.2/OpenCL/common/common_opencl.mk)...
Configuring SDK Makefile (/home/share/soft/cuda/NVIDIA_GPU_Computing_SDK-4.2/CUDALibraries/common/common_cudalib.mk)...
Configuring SDK Makefile (/home/share/soft/cuda/NVIDIA_GPU_Computing_SDK-4.2/CUDALibraries/common/common_npplib.mk)...
Configuring SDK Makefile (/home/share/soft/cuda/NVIDIA_GPU_Computing_SDK-4.2/CUDALibraries/common/UtilNPP/defines.mk)...

========================================

* Please make sure your PATH includes /opt/soft/cuda-4.2.9-1/bin
* Please make sure your LD_LIBRARY_PATH includes:
*   for 32-bit Linux distributions: /opt/soft/cuda-4.2.9-1/lib
*   for 64-bit Linux distributions: /opt/soft/cuda-4.2.9-1/lib64 and /opt/soft/cuda-4.2.9-1/lib

* To uninstall the NVIDIA GPU Computing SDK, please delete /home/share/soft/cuda/NVIDIA_GPU_Computing_SDK-4.2
* Installation Complete