Developer Reference for Intel® oneAPI Math Kernel Library for C

ID 766684
Date 11/07/2023
Public

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

Document Table of Contents

vslLoadStreamM

Creates a new stream and reads stream descriptive data, including stream state, from the memory buffer.

Syntax

errstatus = vslLoadStreamM( &stream, memptr );

Include Files

  • mkl.h

Input Parameters

Name

Type

Description

memptr

const char*

Memory buffer to load random stream descriptive data from

Output Parameters

Name

Type

Description

stream

VSLStreamStatePtr*

Pointer to a new random stream

errstatus

int

Error status of the operation

Description

The vslLoadStreamM function creates a new stream and reads stream descriptive data, including the stream state, from the memory buffer. A new random stream is created using the stream descriptive data from the memory pointer by memptr. If the stream cannot be read (for example, memptr is invalid), errstatus has a non-zero value. To save random stream to the memory, use vslSaveStreamM function. Use the service routine vslGetStreamSize to determine the amount of memory sufficient to hold the random stream.

CAUTION:

Calling LoadStreamM with a previously initialized stream pointer can have unintended consequences such as a memory leak. To initialize a stream which has been in use until calling vslLoadStreamM, you should call the vslDeleteStream function first to deallocate the resources.

Product and Performance Information

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

Notice revision #20201201

Return Values

VSL_ERROR_OK, VSL_STATUS_OK

Indicates no error, execution is successful.

VSL_ERROR_NULL_PTR

memptr is a NULL pointer.

VSL_ERROR_MEM_FAILURE

System cannot allocate memory for internal needs.

VSL_RNG_ERROR_BAD_MEM_FORMAT

Descriptive random stream format is unknown.

VSL_RNG_ERROR_NONDETERMINISTIC_NOT_SUPPORTED

Non-deterministic random number generator is not supported.

VSL_RNG_ERROR_ARS5_NOT_SUPPORTED

ARS-5 random number generator is not supported on the CPU running the application.