CuLab -
GPU Toolkit for LabVIEW
CuLab is a very intuitive and simple to use toolkit for LabVIEW designed to accelerate computationally intensive tasks on Nvidia GPUs.
The purpose of CuLab is to provide extensive API to accelerate mathematical operations, BLAS (Basic Linear Algebra Subroutine) functions and common signal processing functions (FFT/IFFT) on GPUs.
The main idea of CuLab is to provide simple mechanisms to accelerate any processing intensive code developed in LabVIEW on GPUs.
FEATURES & FUNCTIONALITY
Easily get up to 100x ​​speed up on computationally intensive tasks in LabVIEW with GPU
FEATURE HIGHLIGHTS
​
CuLab is designed to simplify GPU code development in LabVIEW.
-
Minimum efforts to accelerate existing LabVIEW code on GPUs.
-
Supporting most common numeric operations and functions available in LabVIEW (more functions to be added in future)
-
Supporting almost all numeric types common dimensionalities available in LabVIEW
-
Single step installation to start using the code (no requirements additional driver installation)
-
Start with ready-to-run examples
​
LabVIEW-LIKE GPU CODE DEVELOPMENT
SUPPORTED FUNCTIONS
CuLab supports all essential functions required to accelerate numerically intensive codes:
​
-
Numeric functions (add, subtract,..., type conversion, complex numbers)
​​
-
Array manipulation
-
Linear algebra (BLAS1, BLAS2, BLAS3)
​
​
​
-
Signal processing (1D and 2D FFT and IFFT, single channel and batched mode)
​
-
Trigonometric function ([arc]sine, [arc]cosine, [arc]tan, ...)
​
-
Exponential functions (exponent, power, root, logarithm, ...)
​
-
Hyperbolic functions (hyperbolic sine, cosine, tan, ...)
NUMERIC TYPES AND DIMENSIONALITIES
CuLab supports all the numeric types (I/U8, I/U16, I/U32, I/U64, SGL. CSG, DBL. CDB ) and dimensionalities (from scalars up to 4-dimensional arrays) required to implement most of the algorithms. Supporting mentioned types and dimensionalities allows user to seamlesly switch between between different data representations, automate error handling and squeez maximum performance out of available hardware.
INSTALLATION AND SYSTEM REQUIREMENTS
​
The toolkit comes as a VIPM (VI Package Manager) installer which includes the toolkit itself, all required drivers, documentation and reference examples
DEVELOPMENT SYSTEM REQUIREMENTS
​​
-
LabVIEW 2020 x64 and later
-
Nvidia GPUs with Compute Capability 5.0 and higher
-
Windows 10/11 x64