top of page

CuLab - GPU Toolkit for LabVIEW
Release Notes

V2.2.1.55
Backward Compatibility

This is a minor update which does not break backward compatibility with v6.x.x versions of the toolkit.

 

Features

  1. Added “Boolean Operation” palette with the following functions.

    • CU_Boolean_2in.vi – compound function for different binary(two-input) logical operations.

      • Supported Boolean Operations:

        • AND

        • OR

        • XOR

        • NAND

        • NO

        • XNOR

        • Select X

        • Select Y

    • CU_Boolean_Not.vi

    • CU_And_Array_Elements.vi

    • CU_Or_Array_Elements.vi

  2. Added “Comparison Operation” palette with the following functions.

    • CU_Compare_1_Input.vi – compound function for different unary (single-input) comparison operations.

      • Supported Comparison Operations:

        • Equal To 0?

        • Not Equal To 0?

        • Greater Than 0?

        • Greater Or Equal To 0?

        • Less than 0?

        • Less Or Equal To 0?

      • Supports all Tensor types, except complex types.

    • CU_Compare_2_Inputs.vi – compound function for different binary (two-input) comparison operations.

      • Supported Comparison Operations:

        • Equal?

        • Not Equal?

        • Greater?

        • Greater Or Equal?

        • Less?

        • Less Or Equal?

      • Supports all Tensor types.

      • Accepts Comparison with a Constant.

    • CU_In_Range_and_Coerce.vi

      • Supports all Tensor types, except complex types.

      • Supports all tensor dimensionalities except T0D.

    • CU_Max_Min.vi

      • Supports all Tensor types, except complex types.

      • Supports tensor dimensionalities: T1D, T2D.

  3. Added “Lookup” subpalette in “Array” palette with the following functions.

    • CU_Array_Lookup_by_Index.vi. - Returns a Tensor containing elements of the input Tensor specified by Index Tensor.

      • Supports all tensor dimensionalities except T0D.

      • Supports all Tensor types.

    • CU_Array_Lookup_by_Bool.vi.

      • Description: Returns a Tensor containing elements of the input Tensor, that have a value 1 (TRUE) in Boolean input Tensor.

      • Supports all tensor dimensionalities except T0D.

      • Supports all Tensor types, except complex types.

  4. Added the following function in “Array” palette

    • CU_Replace_Array_Elemenets_by_Index_Batch.vi - replaces elements in input Tensor with elements from Sub-Tensor at indices specified in Index-Tensor

      • Supports tensor dimensionalities: T1D, T2D.

      • Accepts all input Tensor types

  5. Added “Utilities” palette with the following function:

    • Get_Exec_Time.vi – Returns the relative current time in seconds, as well as time difference between execution of two instances of this VI.

  6. Changed the “FFT” subpalette name to “Transforms” and added the following functions.

    • CU_Hilbert_Transform.vi - Computes the fast Hilbert transform of the input Tensor.

      • Accepted input Tensor types: SGL, DBL

      • Supported dimensionalities: T1D

    • CU_Analytic_Signal.vi - Computes the complex Analytic Signal of the real-valued input Tensor.

      • Accepted input Tensor types: SGL, DBL

      • Return Tensor types: CSG, CDB

      • Supported dimensionalities: T1D

Optimizations

  1. Significantly improved the performance of CU_Tensor_Create_Push.vi and CU_Tensor_Push.vi.

  2. Optimized execution of CU_to_SGL.vi function.

  3. Other optimizations.

Extended Functionalities

 

  1. Error Dialog Box returns the full path for call chain.

  2. CU_Tensor_Create_Push.vi and CU_Tensor_Push.vi check if Input Tensor and CPU Data Array dimensions match before pushing the data to GPU. 

  3. The help file was updated to reflect the updated functionalities.

Bug Fixes

 

  1. Fixed array max dimension (65535) issue in CU_Power_Spectrum.vi.

  2. CU_Decimate_Single_Shot.vi connector pane changed to match with LabVIEW Decimate Single Shot vi.

  3. Changed the name of "CU_Add Array Elements.vi" to "CU_Add_Array_Elements.vi".

  4. Other minor fixes.

V2.1.1.50
Backward Compatibility

This is a minor update which does not break backward compatibility with v6.x.x versions of the toolkit.

 

Features
  1.  Added Signal Operation subpalette with the following functions.

    • CU_Decimate_Single_Shot.vi

      •  Supports 1Ch-1Ch, MCh-1Ch, MCh-MCh modes.

      • Accepts (SGL, DBL, CSG, CDB) Tensor Types.

    • CU_Rational_Resampl.vi

      • Supports single channel mode.

      • Accepts (SGL, DBL, CSG, CDB) Tensor Types.

    • CU_Convolution.vi

      • Supports 1Ch-1Ch, MCh-1Ch, MCh-MCh modes.

      • Accepts (SGL, DBL, CSG, CDB) Tensor Types.

    • Cross_Correlation.vi

      • Supports single channel mode.

      • Accepts (SGL, DBL, CSG, CDB) Tensor Types.

  2. Added a function to the Complex subpalette.

    • CU_Interleaved_to_Complex.vi.

    • Description: Converts interleaved sampled IQ data into complex representation. Designed to minimize data copy overhead during conversion.

      • Supports all tensor dimensionalities except T0D.

      • Accepted input datatypes (I8, U8, I16, U16, I32, U32, I64, U64, SGL, DBL)

      • Supported output datatypes (CSG, CDB)

  3. Added following functions to the Device Management subpalette.

    • CU_Get_GPU_List.vi

      • Returns list of Nvidia GPUs available on the PC.

    • CU_Get_GPU_Properties.vi

      • Returns the properties for the selected GPU ID.

    • CU_Set_GPU.vi

      • Sets the selected GPU to be active.

  4. Extended Functionalities

    • CU_Sine.vi, CU_Cosine.vi and CU_exponential.vi accept tensors with complex data representations (CSG, CDB) as input.

  5. The help file was updated to reflect the updated functionalities.​

​Bug Fixes
  1. Fixed array max dimension issue in CU_Transpose_2D_Array.vi.

  2. Fixed “Dest in” memory allocation issue in CU_Power_Spectrum.vi.

  3. Fixed issue when CU_Square_Root.vi returned incorrect results when imaginary part is 0, and when run in in-place mode.

  4. Other minor fixes.

V2.0.1.39
 
General Description

This version of CuLab toolkit brings new functionalities and improves the performance of existing ones.

Backward Compatibility

This is a minor update which does not break backward compatibility with v6.x.x versions of the toolkit.

 

Features
  1. Added Trigonometric functions

    • ​Sine

    • Cosine

    • Tangent

    • Cotangent

    • Inverse Sine

    • Inverse Cosine

    • Inverse Tangent

    • Inverse Tangent 2 Input (atan2)

    • Inverse Cotangent

    • Sine & Cosine

    • Sinc

  2. Added Exponential functions

    • Exponential

    • Exponential Arg -1

    • Logarithm Base 10

    • Logarithm Base 2

    • Logarithm Base X

    • Natural Logarithm

    • Natural Logarithm Arg +1

    • Power Of 10

    • Power Of 2

    • Power Of X

    • Y-th Root of X

  3. Added Hyperbolic functions

    • Hyperbolic Sine

    • Hyperbolic Cosine

    • Hyperbolic Tangent

    • Hyperbolic Cotangent

    • Inverse Hyperbolic Sine

    • Inverse Hyperbolic Cosine

    • Inverse Hyperbolic Tangent

    • Inverse Hyperbolic Cotangent

  4. Added missed complex APIs

    • Complex to Polar

    • Polar to Complex

    • Polar to Re/Im

    • Re/Im to Polar

  5. Added function for Quotient & Remainder

  6. Added support for Tensor-Constant operations for binary numeric operations. This allows to choose a CPU based constant as a second operand

  7. Added new function generation functions

    • Ramp Pattern

    • Sine Pattern

    • Power Spectrum

  8. Added support for missing numeric types for numeric operations

  9. Redesigned colors for tensor wires to make them distinguishable across numeric types and dimensionality

  10. Added batched versions of FFT and IFFT

  11. Added spectrum shifting functionality single channel and batched FFT

Optimizations
  1. Greatly improved the performance of Real-to-Complex (R2C and D2Z) FFTs

  2. Optimized execution times for Complex functions

  3. Other optimizations

 
​Bug Fixes
  1. Fixed automatic instance selection issue in Array Max Min polymorphic function

  2. Fixed memory leakage issue

  3. Fixed an error in BLAS benchmarking example

  4. Corrected typos

  5. Other bug fixes

V1.0.1.19
 

Initial version of the toolkit. 

<< Back to product page

HAVE QUESTIONS?

bottom of page