Task Constructors

Task constructors are routines intended for creating a new task descriptor and setting up basic parameters. No additional parameter adjustment is typically required and other routines can use the task object.

Intel® MKL implementation of the convolution and correlation API provides two different forms of constructors: a general form and an X-form. X-form constructors work in the same way as the general form constructors but also assign particular data to the first operand vector used in the convolution or correlation operation (stored in array x).

Using X-form constructors is recommended when you need to compute multiple convolutions or correlations with the same data vector held in array x against different vectors held in array y. This helps improve performance by eliminating unnecessary overhead in repeated computation of intermediate data required for the operation.

Each constructor routine has an associated one-dimensional version that provides algorithmic and computational benefits.

Note

If the constructor fails to create a task descriptor, it returns the NULL task pointer.

The Table "Task Constructors" lists available task constructors:

Task Constructors

Routine

Description

vslConvNewTask/vslCorrNewTask

Creates a new convolution or correlation task descriptor for a multidimensional case.

vslConvNewTask1D/vslCorrNewTask1D

Creates a new convolution or correlation task descriptor for a one-dimensional case.

vslConvNewTaskX/vslCorrNewTaskX

Creates a new convolution or correlation task descriptor as an X-form for a multidimensional case.

vslConvNewTaskX1D/vslCorrNewTaskX1D

Creates a new convolution or correlation task descriptor as an X-form for a one-dimensional case.

For more complete information about compiler optimizations, see our Optimization Notice.