Intel® Integrated Performance Primitives Developer Guide and Reference

ID 790148
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

Fixed-Accuracy Arithmetic Functions

This chapter describes Intel® IPP fixed-accuracy transcendental mathematical real and complex functions of vector arguments. These functions take an input vector as argument, compute values of the respective elementary function element-wise, and return the results in an output vector.

Function specifications comply with the common API agreement of Intel IPP, but include some new features essential to scientific arithmetic functions. The main feature is a more elaborate specification of accuracy that differs from the common definition in adding several new levels of accuracy, besides original levels introduced by single precision and double precision data formats.

Fixed-accuracy vector functions implementation supports the IEEE-754 standard in all flavors, which means that:

  • All functions have a precisely determined and guaranteed level of accuracy for all argument values.
  • All special value processing and exceptions handling requirements are met, which implies that when accuracy is below the standard level, the function meets the IEEE-754 requirements in all other respects.

The choice of accuracy levels should be based on practical experience and identified application demands. Available options are specified in the function name suffix and include A11, A21, or A24 for the single precision, and A26, A50, or A53 for the double precision data format. Flavors A11, A21, A26, and A50 provide approximately 3, 6, 8, and 15 exact decimal digits, respectively. For flavors A24 and A53, the maximum guaranteed error is within 1 ulp and in most cases does not exceed 0.55 ulp.

Fixed-accuracy arithmetic functions subset of Intel IPP has the similar functionality as the respective part of the Intel® Math Kernel Library (Intel® MKL).

However, Intel IPP provides lower-level transcendental functions that have separate flavors for each mode of operations and data type and are better suitable for multimedia and signal processing in real time applications.

NOTE:

Do not confuse fixed-accuracy arithmetic functions described here with common arithmetic functions that have similar functionality but follow different accuracy specifications.

Intel IPP fixed-accuracy arithmetic functions may return status codes of the specific warnings listed in the table below. In this case, the value returned is positive and the computation is continued.

Warning Status Codes for Fixed-Accuracy Arithmetic Functions
  Value Message
IppStsOverflow 12 Overflow occurred in the operation.
IppStsUnderflow 17 Underflow occurred in the operation.
IppStsSingularity 18 Singularity occurred in the operation.
IppStsDomain 19 Argument is out of the function domain.

See appendix A "Handling of Special Cases" for more information on function operation in cases when their arguments take on specific values that are outside the range of function definition.

NOTE:

All functions described in this chapter support in-place operation.