Replaceability
Intel Short Vector Math Library (Intel SVML) is an automatic vectorization interface provided by Intel for the compiler. It converts one pair of scalar operations into parallel processing of multiple pairs of vector operations, which is an optimization of scalar operations by the compiler. The Intel SVML interface is not provided for users. KML_SVML provides 30 interfaces for the compiler. For details, see Table 1.
SVML Interface |
MATH Interface |
Description |
|---|---|---|
__svml_sin? __svml_sinf? |
_ZGVnN2v_sin _ZGVnN4v_sinf |
Sine function |
__svml_cos? __svml_cosf? |
_ZGVnN2v_cos _ZGVnN4v_cosf |
Cosine function |
__svml_tan? __svml_tanf? |
_ZGVnN2v_tan _ZGVnN4v_tanf |
Tangent function |
__svml_atan? __svml_atanf? |
_ZGVnN2v_atan _ZGVnN4v_atanf |
Arc tangent function |
__svml_atan2? __svml_atan2f? |
_ZGVnN2vv_atan2 _ZGVnN4vv_atan2f |
Arc tangent function |
__svml_sinh? __svml_sinhf? |
_ZGVnN2v_sinh _ZGVnN4v_sinhf |
Hyperbolic sine function |
__svml_cosh? __svml_coshf? |
_ZGVnN2v_cosh _ZGVnN4v_coshf |
Hyperbolic cosine function |
__svml_tanh? __svml_tanhf? |
_ZGVnN2v_tanh _ZGVnN4v_tanhf |
Hyperbolic tangent function |
__svml_exp? __svml_expf? |
_ZGVnN2v_exp _ZGVnN4v_expf |
Exponential function (base e) |
__svml_exp2? __svml_exp2f? |
_ZGVnN2v_exp2 _ZGVnN4v_exp2f |
Exponential function (base 2) |
__svml_expm1? __svml_expm1f? |
_ZGVnN2v_expm1 _ZGVnN4v_expm1f |
Exponential function (base e) |
__svml_log? __svml_logf? |
_ZGVnN2v_log _ZGVnN4v_logf |
Logarithmic function (base e) |
__svml_log10? __svml_log10f? |
_ZGVnN2v_log10 _ZGVnN4v_log10f |
Logarithm function (base 10) |
__svml_log1p? __svml_log1pf? |
_ZGVnN2v_log1p _ZGVnN4v_log1pf |
Logarithmic function (base e) |
__svml_pow? __svml_powf? |
_ZGVnN2vv_pow _ZGVnN4vv_powf |
Power function |