Error Reporting
VS RNG routines return status codes of the performed operation to report errors to the calling program. The application should perform error-related actions and/or recover from the error. The status codes are of integer type and have the following format:
VSL_ERROR_<
ERROR_NAME
> - indicates VS errors common for all VS domains.
VSL_RNG_ERROR_<
ERROR_NAME
> - indicates VS RNG errors.
VS RNG errors are of negative values while warnings are of positive values. The status code of zero value indicates successful completion of the operation:
VSL_ERROR_OK
(or synonymic
VSL_STATUS_OK
).
Status Code
| Description
|
---|---|
Common VSL | |
VSL_ERROR_OK ,
VSL_STATUS_OK | No error, execution is successful.
|
VSL_ERROR_BADARGS | Input argument value is not valid.
|
VSL_ERROR_CPU_NOT_SUPPORTED | CPU version is not supported.
|
VSL_ERROR_FEATURE_NOT_IMPLEMENTED | Feature invoked is not implemented.
|
VSL_ERROR_MEM_FAILURE | System cannot allocate memory.
|
VSL_ERROR_NULL_PTR | Input pointer argument is NULL.
|
VSL_ERROR_UNKNOWN | Unknown error.
|
VS RNG Specific | |
VSL_RNG_ERROR_BAD_FILE_FORMAT | File format is unknown.
|
VSL_RNG_ERROR_BAD_MEM_FORMAT | Descriptive random stream format is unknown.
|
VSL_RNG_ERROR_BAD_NBITS | The value in
NBits field is bad.
|
VSL_RNG_ERROR_BAD_NSEEDS | The value in
NSeeds field is bad.
|
VSL_RNG_ERROR_BAD_STREAM | The random stream is invalid.
|
VSL_RNG_ERROR_BAD_STREAM_STATE_SIZE | The value in
StreamStateSize field is bad.
|
VSL_RNG_ERROR_BAD_UPDATE | Callback function for an abstract BRNG returns an invalid number of updated entries in a buffer, that is, < 0 or > nmax .
|
VSL_RNG_ERROR_BAD_WORD_SIZE | The value in
WordSize field is bad.
|
VSL_RNG_ERROR_BRNG_NOT_SUPPORTED | BRNG is not supported by the function.
|
VSL_RNG_ERROR_BRNG_TABLE_FULL | Registration cannot be completed due to lack of free entries in the table of registered BRNGs.
|
VSL_RNG_ERROR_BRNGS_INCOMPATIBLE | Two BRNGs are not compatible for the operation.
|
VSL_RNG_ERROR_FILE_CLOSE | Error in closing the file.
|
VSL_RNG_ERROR_FILE_OPEN | Error in opening the file.
|
VSL_RNG_ERROR_FILE_READ | Error in reading the file.
|
VSL_RNG_ERROR_FILE_WRITE | Error in writing the file.
|
VSL_RNG_ERROR_INVALID_ABSTRACT_STREAM | The abstract random stream is invalid.
|
VSL_RNG_ERROR_INVALID_BRNG_INDEX | BRNG index is not valid.
|
VSL_RNG_ERROR_LEAPFROG_UNSUPPORTED | BRNG does not support Leapfrog method.
|
VSL_RNG_ERROR_NO_NUMBERS | Callback function for an abstract BRNG returns zero as the number of updated entries in a buffer.
|
VSL_RNG_ERROR_QRNG_PERIOD_ELAPSED | Period of the generator is exceeded.
|
VSL_RNG_ERROR_SKIPAHEAD_UNSUPPORTED | BRNG does not support Skip-Ahead method.
|
VSL_RNG_ERROR_SKIPAHEADEX_UNSUPPORTED | BRNG does not support advanced Skip-Ahead method.
|
VSL_RNG_ERROR_UNSUPPORTED_FILE_VER | File format version is not supported.
|
VSL_RNG_ERROR_NONDETERM_NOT_SUPPORTED
| Non-deterministic random number generator is not supported on the CPU running the application.
|
VSL_RNG_ERROR_NONDETERM_ NRETRIES_EXCEEDED | Number of retries to generate a random number using non-deterministic random number generator exceeds threshold (see Section 7.2.1.12
Non-deterministic in [VS Notes] for more details)
|
VSL_RNG_ERROR_ARS5_NOT_SUPPORTED | ARS-5 random number generator is not supported on the CPU running the application.
|
Optimization Notice
|
---|
Intel's compilers may or may not optimize to the same degree for non-Intel microprocessors for optimizations that are not unique to Intel microprocessors. These optimizations include SSE2, SSE3, and SSSE3 instruction sets and other optimizations. Intel does not guarantee the availability, functionality, or effectiveness of any optimization on microprocessors not manufactured by Intel. Microprocessor-dependent optimizations in this product are intended for use with Intel microprocessors. Certain optimizations not specific to Intel microarchitecture are reserved for Intel microprocessors. Please refer to the applicable product User and Reference Guides for more information regarding the specific instruction sets covered by this notice.
Notice revision #20110804
|
This notice covers the following instruction sets: SSE2, SSE4.2, AVX2, AVX-512.