jax.numpy.finfo#

class jax.numpy.finfo(dtype)[source]#

Machine limits for floating point types.

bits#

The number of bits occupied by the type.

Type

int

eps#

The difference between 1.0 and the next smallest representable float larger than 1.0. For example, for 64-bit binary floats in the IEEE-754 standard, eps = 2**-52, approximately 2.22e-16.

Type

float

epsneg#

The difference between 1.0 and the next smallest representable float less than 1.0. For example, for 64-bit binary floats in the IEEE-754 standard, epsneg = 2**-53, approximately 1.11e-16.

Type

float

iexp#

The number of bits in the exponent portion of the floating point representation.

Type

int

machar#

The object which calculated these parameters and holds more detailed information.

Deprecated since version 1.22.

Type

MachAr

machep#

The exponent that yields eps.

Type

int

max#

The largest representable number.

Type

floating point number of the appropriate type

maxexp#

The smallest positive power of the base (2) that causes overflow.

Type

int

min#

The smallest representable number, typically -max.

Type

floating point number of the appropriate type

minexp#

The most negative power of the base (2) consistent with there being no leading 0’s in the mantissa.

Type

int

negep#

The exponent that yields epsneg.

Type

int

nexp#

The number of bits in the exponent including its sign and bias.

Type

int

nmant#

The number of bits in the mantissa.

Type

int

precision#

The approximate number of decimal digits to which this kind of float is precise.

Type

int

resolution#

The approximate decimal resolution of this type, i.e., 10**-precision.

Type

floating point number of the appropriate type

tiny#

An alias for smallest_normal, kept for backwards compatibility.

Type

float

smallest_normal#

The smallest positive floating point number with 1 as leading bit in the mantissa following IEEE-754 (see Notes).

Type

float

smallest_subnormal#

The smallest positive floating point number with 0 as leading bit in the mantissa following IEEE-754.

Type

float

Parameters

dtype (float, dtype, or instance) – Kind of floating point data-type about which to get information.

See also

MachAr

The implementation of the tests that produce this information.

iinfo

The equivalent for integer data types.

spacing

The distance between a value and the nearest adjacent number

nextafter

The next floating point value after x1 towards x2

Notes

For developers of NumPy: do not instantiate this at the module level. The initial calculation of these parameters is expensive and negatively impacts import times. These objects are cached, so calling finfo() repeatedly inside your functions is not a problem.

Note that smallest_normal is not actually the smallest positive representable value in a NumPy floating point type. As in the IEEE-754 standard 1, NumPy floating point types make use of subnormal numbers to fill the gap between 0 and smallest_normal. However, subnormal numbers may have significantly reduced precision 2.

References

1

IEEE Standard for Floating-Point Arithmetic, IEEE Std 754-2008, pp.1-70, 2008, http://www.doi.org/10.1109/IEEESTD.2008.4610935

2

Wikipedia, “Denormal Numbers”, https://en.wikipedia.org/wiki/Denormal_number

__init__()#

Methods

__init__()

Attributes

machar

The object which calculated these parameters and holds more detailed information.

smallest_normal

Return the value for the smallest normal.

tiny

Return the value for tiny, alias of smallest_normal.