Developer Reference for Intel® oneAPI Math Kernel Library for C

ID 766684
Date 3/22/2024
Public

A newer version of this document is available. Customers should click here to go to the newest version.

Document Table of Contents

vslConvExec1D/vslCorrExec1D

Computes convolution or correlation for one-dimensional case.

Syntax

status = vslsConvExec1D(task, x, xstride, y, ystride, z, zstride);

status = vsldConvExec1D(task, x, xstride, y, ystride, z, zstride);

status = vslcConvExec1D(task, x, xstride, y, ystride, z, zstride);

status = vslzConvExec1D(task, x, xstride, y, ystride, z, zstride);

status = vslsCorrExec1D(task, x, xstride, y, ystride, z, zstride);

status = vsldCorrExec1D(task, x, xstride, y, ystride, z, zstride);

status = vslcCorrExec1D(task, x, xstride, y, ystride, z, zstride);

status = vslzCorrExec1D(task, x, xstride, y, ystride, z, zstride);

Include Files

  • mkl.h

Input Parameters

Name

Type

Description

task

VSLConvTaskPtr for vslsConvExec1D, vsldConvExec1D, vslcConvExec1D, vslzConvExec1D

VSLCorrTaskPtr for vslsCorrExec1D, vsldCorrExec1D, vslcCorrExec1D, vslzCorrExec1D

Pointer to the task descriptor.

x, y

const float[] for vslsConvExec1D and vslsCorrExec1D,

const double[] for vsldConvExec1D and vsldCorrExec1D,

const MKL_Complex8[] for vslcConvExec1D and vslcCorrExec1D,

const MKL_Complex16[] for vslzConvExec1D and vslzCorrExec1D

Pointers to arrays containing input data. See Data Allocation for more information.

xstride, ystride, zstride

const MKL_INT

Strides for input and output data. For more information, see stride parameters.

Output Parameters

Name

Type

Description

z

const float[] for vslsConvExec1D and vslsCorrExec1D,

const double[] for vsldConvExec1D and vsldCorrExec1D,

const MKL_Complex8[] for vslcConvExec1D and vslcCorrExec1D,

const MKL_Complex16[] for vslzConvExec1D and vslzCorrExec1D

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 vslConvExec1D/vslCorrExec1D routines computes convolution or correlation of the data provided by the arrays x and y and then stores the results in the array z. These routines represent a special one-dimensional version of the operation, assuming that the value of the parameter dims is 1. Using this version of execution routines can help speed up performance in case of one-dimensional data.

Parameters of the operation are read from the task descriptor created previously by a corresponding vslConvNewTask1D/vslCorrNewTask1D constructor and pointed to by task. If task is NULL, no operation is done.