Intel® MKL Vector Mathematical Functions Library (VML) computes a mathematical function of each of the vector elements. VML includes a set of highly optimized functions (arithmetic, power, trigonometric, exponential, hyperbolic, special, and rounding) that operate on vectors of real and complex numbers.
Application programs that improve performance with VML include nonlinear programming software, computation of integrals, financial calculations, computer graphics, and many others.
VML functions fall into the following groups according to the operations they perform:
VML Mathematical Functions compute values of mathematical functions, such as sine, cosine, exponential, or logarithm, on vectors stored contiguously in memory.
VML Pack/Unpack Functions convert to and from vectors with positive increment indexing, vector indexing, and mask indexing (see Appendix "Vector Arguments in VML" for details on vector indexing methods).
VML Service Functions set/get the accuracy modes and the error codes.
The VML mathematical functions take an input vector as an argument, compute values of the respective function element-wise, and return the results in an output vector. All the VML mathematical functions can perform in-place operations, where the input and output arrays are at the same memory locations.
The Intel MKL interfaces are given in the following include files:
mkl_vml.f77, which declares the FORTRAN 77 interfaces
mkl_vml.f90, which declares the Fortran 90 interfaces; the mkl_vml.fi include file available in the previous versions of Intel MKL is retained for backward compatibility
mkl_vml_functions.h, which declares the C interfaces
The following directories provide examples that demonstrate how to use the VML functions:
${MKL}/examples/vmlc/source
${MKL}/examples/vmlf/source
See VML performance and accuracy data in the online VML Performance and Accuracy Data document available at http://software.intel.com/en-us/articles/intel-math-kernel-library-documentation/
Optimization Notice |
---|
Intel compilers, associated libraries and associated development tools may include or utilize options that optimize for instruction sets that are available in both Intel and non-Intel microprocessors (for example SIMD instruction sets), but do not optimize equally for non-Intel microprocessors. In addition, certain compiler options for Intel compilers, including some that are not specific to Intel micro-architecture, are reserved for Intel microprocessors. For a detailed description of Intel compiler options, including the instruction sets and specific microprocessors they implicate, please refer to the "Intel Compiler User and Reference Guides" under "Compiler Options." Many library routines that are part of Intel compiler products are more highly optimized for Intel microprocessors than for other microprocessors. While the compilers and libraries in Intel compiler products offer optimizations for both Intel and Intel-compatible microprocessors, depending on the options you select, your code and other factors, you likely will get extra performance on Intel microprocessors. Intel compilers, associated libraries and associated development tools 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 Intel® Streaming SIMD Extensions 2 (Intel® SSE2), Intel® Streaming SIMD Extensions 3 (Intel® SSE3), and Supplemental Streaming SIMD Extensions 3 (Intel 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. While Intel believes our compilers and libraries are excellent choices to assist in obtaining the best performance on Intel and non-Intel microprocessors, Intel recommends that you evaluate other compilers and libraries to determine which best meet your requirements. We hope to win your business by striving to offer the best performance of any compiler or library; please let us know if you find we do not. Notice revision #20110307 |
Copyright © 1994 - 2011, Intel Corporation. All rights reserved.