Multi GPU parallelization using CUDA - abria/TeraStitcher GitHub Wiki

Prerequisites

Before enabling the execution of CUDA code, a check should be done about compatibility of the GPU device and its driver with the Toolkit used to generate the TeraStitcher binaries. To execute the CUDA implementation of the MIP-NCC algorithm at least an NVIDIA GPU with compute capability 3.0 is needed. TeraStitcher has been generated using NVIDIA CUDA Toolkit 7.5. Under Windows the Visual Studio 2013 Community interfaced with the CUDA compiler has been used to generate the binaries.

In order to check GPU device and driver compatibility, right-click on desktop, select NVIDIA configuration panel. After the panel opens, go to help->system information. In the Display tab you find which is the GPU device and its driver. Check if they are compatible with NVIDIA CUDA Toolkit 7.5. If the device is compatible, but the driver not, download and install the latest driver for your device at http://www.nvidia.it/Download/index.aspx?lang=en.

Further details can be found in the TeraTools Documentation.

Usage

Since version 1.11 of TeraStitcher, a CUDA implementation of the MIP-NCC alignment algorithm (Align step) has been included in the binary distribution. In order to execute the MIP-NCC alignment algorithm on NVIDIA accelerators, you must set the environment variable:

USECUDA_X_NCC=1

Use nvprof to check if the GPU is actually used by TeraStitcher.