CuLab is a high-performance GPU acceleration toolkit for LabVIEW, designed to offload computationally intensive tasks to NVIDIA GPUs.
It provides a comprehensive set of APIs for vectorized mathematics, matrix operations, filtering, and advanced signal processing enabling users to develop custom parallel algorithms entirely within LabVIEW without relying on external CUDA or C++ code.
CuLab is ideal for applications requiring high throughput and low latency, such as RF signal processing, computer vision, real-time analytics, and scientific computing. Its user-friendly design empowers engineers to achieve significant performance gains without deep GPU programming expertise.
LabVIEW-like GPU Code Development
CuLab’s LabVIEW-like API minimizes boilerplate code and makes GPU programming extremely easy and seamless, allowing engineers to accelerate complex computations without writing CUDA or C++ code.
Key Features​
-
Simple and intuitive API.
-
Over 150 GPU-optimized functions.
-
Full support for LabVIEW numeric data types: SGL, DBL, CSG, CDB, I/U8–I/U64.
-
Batch data processing for maximum throughput.
-
Linear Algebra: Full BLAS Level 1, 2, and 3 support.
-
Advanced array manipulation: permutation, reduction, and broadcasting.
-
Signal Processing: FFTs, FIR filtering, resampling, RF functions
-
Computer Vision: Resampling, morphological operations, and more.
-
Basic, complex, trigonometric, and logarithmic math operations.
-
Comparison and Boolean operations.
-
Efficient CPU-GPU data transfer for real-time and batch workflows.
Requirements
Installation
The toolkit comes as a VIPM (VI Package Manager) installer which includes the toolkit itself, all required drivers, documentation and reference examples
Development
-
LabVIEW 2020 (64-bit) or later
-
NVIDIA GPUs with Compute Capability 5.0 or higher
-
Windows 10/11 x64
Supported Functions
CuLab provides a broad set of optimized functions for vector math, matrix operations, advanced signal processing, and computer vision - enabling efficient GPU acceleration across diverse LabVIEW applications. It is designed to support virtually any computational workload.




Supported Numeric Types and Array Dimensions
CuLab supports a full range of numeric types (I/U8, I/U16, I/U32, I/U64, SGL, CSG, DBL, CDB) and array dimensionalities (from scalars up to 4D arrays) covering most algorithm requirements. This broad support enables seamless switching between data formats, simplifies error handling, and helps maximize hardware performance.
