VML includes mathematical and pack/unpack vector functions for single and double precision vector arguments of real and compex types. The library provides Fortran- and C-interfaces for all functions, including the associated service functions. The Function Naming Conventions topic shows how to call these functions from different languages.
Performance depends on a number of factors, including vectorization and threading overhead. The recommended usage is as follows:
Use VML for vector lengths larger than 40 elements.
Use the Intel® Compiler for vector lengths less than 40 elements.
All VML vector functions support the following accuracy modes:
High Accuracy (HA), the default mode
Low Accuracy (LA), which improves performance by reducing accuracy of the two least significant bits
Enhanced Performance (EP), which provides better performance at the cost of significantly reduced accuracy. Approximately half of the bits in the mantissa are correct.
Note that using the EP mode does not guarantee accurate processing of corner cases and special values. Although the default accuracy is HA, LA is sufficient in most cases. For applications that require less accuracy (for example, media applications, some Monte Carlo simulations, etc.), the EP mode may be sufficient.
VML handles special values in accordance with the C99 standard [C99].
Use the vmlSetMode(mode) function (see Table "Values of the mode Parameter") to switch between the HA, LA, and EP modes. The vmlGetMode() function returns the current mode.
Copyright © 1994 - 2010, Intel Corporation. All rights reserved.