Developer Reference

  • 2021.1
  • 12/04/2020
  • Public Content
Contents

vslConvExec
/
vslCorrExec

Computes convolution or correlation for multidimensional case.

Syntax

status
=
vslsConvExec
(
task
,
x
,
xstride
,
y
,
ystride
,
z
,
zstride
);
status
=
vsldConvExec
(
task
,
x
,
xstride
,
y
,
ystride
,
z
,
zstride
);
status
=
vslcConvExec
(
task
,
x
,
xstride
,
y
,
ystride
,
z
,
zstride
);
status
=
vslzConvExec
(
task
,
x
,
xstride
,
y
,
ystride
,
z
,
zstride
);
status
=
vslsCorrExec
(
task
,
x
,
xstride
,
y
,
ystride
,
z
,
zstride
);
status
=
vsldCorrExec
(
task
,
x
,
xstride
,
y
,
ystride
,
z
,
zstride
);
status
=
vslcCorrExec
(
task
,
x
,
xstride
,
y
,
ystride
,
z
,
zstride
);
status
=
vslzCorrExec
(
task
,
x
,
xstride
,
y
,
ystride
,
z
,
zstride
);
Include Files
  • mkl.h
Input Parameters
Name
Type
Description
task
VSLConvTaskPtr
for
vslsConvExec
,
vsldConvExec
,
vslcConvExec
,
vslzConvExec
VSLCorrTaskPtr
for
vslsCorrExec
,
vsldCorrExec
,
vslcCorrExec
,
vslzCorrExec
Pointer to the task descriptor
x
,
y
const float[]
for
vslsConvExec
and
vslsCorrExec
,
const double[]
for
vsldConvExec
and
vsldCorrExec
,
const MKL_Complex8[]
for
vslcConvExec
and
vslcCorrExec
,
const MKL_Complex16[]
for
vslzConvExec
and
vslzCorrExec
Pointers to arrays containing input data
. See Data Allocation for more information.
xstride
,
ystride
,
zstride
const int[]
Strides for input and output data.
For more information, see stride parameters.
Output Parameters
Name
Type
Description
z
const float[]
for
vslsConvExec
and
vslsCorrExec
,
const double[]
for
vsldConvExec
and
vsldCorrExec
,
const MKL_Complex8[]
for
vslcConvExec
and
vslcCorrExec
,
const MKL_Complex16[]
for
vslzConvExec
and
vslzCorrExec
Pointer to the array that stores output data.
See Data Allocation for more information.
status
int
Set to
VSL_STATUS_OK
if the task is executed successfully or set to non-zero error code otherwise.
Description
Each of the
vslConvExec
/
vslCorrExec
routines computes convolution or correlation of the data provided by the arrays
x
and
y
and then stores the results in the array
z
. Parameters of the operation are read from the task descriptor created previously by a corresponding
vslConvNewTask
/
vslCorrNewTask
constructor and pointed to by
task
. If
task
is
NULL
, no operation is done.
The stride parameters
xstride
,
ystride
, and
zstride
specify the physical location of the input and output data in the arrays
x
,
y
, and
z
, respectively. In a one-dimensional case, stride is an interval between locations of consecutive elements of the array. For example, if the value of the parameter
zstride
is
s
, then only every
s
th
element of the array
z
will be used to store the output data. The stride value must be positive or negative but not zero.

Product and Performance Information

1

Performance varies by use, configuration and other factors. Learn more at www.Intel.com/PerformanceIndex.