Click or drag to resize
OIV.Inventor.Cuda Namespace

Open Inventor 8.0 (and above) brings CUDA support for fast GPGPU computation.

Classes
  ClassDescription
Public classSoCuda

Cuda module class.

Public classSoCudaApi

CUDA access API.

Public classSoCudaHandle
Enumerations
  EnumerationDescription
Public enumerationSoCudaSoCudaErrors

This enum defines the possible errors returned by the Cuda API.

Remarks

The Cuda module is built in a separate module called InvCuda.

<font color="#0000FF">NOTE:</font> The classes in this module do not exist in Open Inventor 10.0 and later.

CUDA

The CUDA technology extends the regular C language environment to enable software to run complex algorithms using the multi-core parallel architecture of the GPU.

CUDA Devices

The CUDA module brings classes to manage the multiple devices available in the system. The

SoCudaDevice class is able to detect the available devices in the system, it also brings useful information about the computing capabilities of each device.

CUDA Contexts

A CUDA context is a working area in the graphic card memory which encapsulates all the memory used by a thread. At a specific time t only one thread can use a context and the pointer on a memory area is valid only in one context. A context is specific to a device, it's not possible to migrate one context from a device to another one; that's why when you create a context you must indicates to the constructor the device which will manage the context.

CUDA buffer objects

The InvCuda module brings a CUDA buffer object class (

SoCudaBufferObject) which brings all the functions needed to allocate and use memory located on the GPU memory.

Computing in CUDA

The InvCuda module contains classes called

SoCuda and

SoCudaApi which brings functions for computing purpose.

InvCuda included algorithms

The algorithms section contains multiple useful CUDA kernels to improve application development time-line.