Function cpfloatf
Defined in File cpfloat_binary32.h
Function Documentation
-
static inline int cpfloatf(float *X, const float *A, const size_t numelem, optstruct *fpopts)
Round
floatarray to lower precision.If the function executes without errors, then the array
Xcontains thenumelementries of the arrayArounded to a lower-precision target format. The parameters of the target format and the rounding mode to be used are encoded infpopts. If required, the function flips one bit in some of the entries ofX.If OpenMP support is specified at compile time, several OpenMP threads are used if
numelemis large enough. This parameter is machine-dependent.- Parameters:
X – [out] Array of rounded values.
A – [in] Input array.
numelem – [in] Number of elements in
XandA.fpopts – [in] Parameters describing the target format, the rounding mode, and the probability of soft errors striking the rounded values.
- Returns:
The function returns 1 if
fpopts->precisionis larger than 24 , 2 iffptops->eminis smaller than -126 or fpopts->emax is larger than 127 , and 0 otherwise.