Miscellaneous¶
This page documents the miscellaneous members of the blosc2 module that do not fit into other categories.
- blosc2.cpu_info = {'count': 4, 'l1_data_cache_size': 32768, 'l2_cache_size': 1048576, 'l3_cache_size': 33554432}¶
- class blosc2.finfo(dtype)¶
Machine limits for floating point types.
- bits¶
The number of bits occupied by the type.
- Type:
int
- dtype¶
Returns the dtype for which finfo returns information. For complex input, the returned dtype is the associated
float*dtype for its real and complex components.- Type:
dtype
- 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
- 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. Corresponds to the C standard MAX_EXP.
- 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. Corresponds to the C standard MIN_EXP - 1.
- 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 explicit bits in the mantissa (excluding the implicit leading bit for normalized numbers).
- 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 or complex floating point data-type about which to get information.
See also
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_normalis 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 andsmallest_normal. However, subnormal numbers may have significantly reduced precision [2].For
longdouble, the representation varies across platforms. On most platforms it is IEEE 754 binary128 (quad precision) or binary64-extended (80-bit extended precision). On PowerPC systems, it may use the IBM double-double format (a pair of float64 values), which has special characteristics for precision and range.This function can also be used for complex data types as well. If used, the output will be the same as the corresponding real float type (e.g. numpy.finfo(numpy.csingle) is the same as numpy.finfo(numpy.single)). However, the output is true for the real and imaginary components.
References
[1]IEEE Standard for Floating-Point Arithmetic, IEEE Std 754-2008, pp.1-70, 2008, https://doi.org/10.1109/IEEESTD.2008.4610935
[2]Wikipedia, “Denormal Numbers”, https://en.wikipedia.org/wiki/Denormal_number
Examples
>>> import numpy as np >>> np.finfo(np.float64).dtype dtype('float64') >>> np.finfo(np.complex64).dtype dtype('float32')
- Attributes:
- epsneg
- iexp
- machep
- negep
- nexp
- resolution
- tiny
Return the value for tiny, alias of smallest_normal.
- tinyfloat
Value for the smallest normal, alias of smallest_normal.
- UserWarning
If the calculated value for the smallest normal is requested for double-double.
- class blosc2.iinfo(type)¶
Machine limits for integer types.
- bits¶
The number of bits occupied by the type.
- Type:
int
- dtype¶
Returns the dtype for which iinfo returns information.
- Type:
dtype
- min¶
The smallest integer expressible by the type.
- Type:
int
- max¶
The largest integer expressible by the type.
- Type:
int
- Parameters:
int_type¶ (integer type, dtype, or instance) – The kind of integer data type to get information about.
See also
finfoThe equivalent for floating point data types.
Examples
With types:
>>> import numpy as np >>> ii16 = np.iinfo(np.int16) >>> ii16.min -32768 >>> ii16.max 32767 >>> ii32 = np.iinfo(np.int32) >>> ii32.min -2147483648 >>> ii32.max 2147483647
With instances:
>>> ii32 = np.iinfo(np.int32(10)) >>> ii32.min -2147483648 >>> ii32.max 2147483647
- blosc2.get_matmul_library() str | None[source]¶
Return the library used by the active matmul fast backend, if any.
- Returns:
"Accelerate.framework"when the selected backend is Accelerate, the loaded CBLAS library path for runtime-discovered CBLAS backends, orNonewhen the selected backend isnaive.- Return type:
str | None
Unclassified module members¶
The list below is intentionally generated from blosc2 module members that
are not excluded above. It acts as a reminder to classify newly documented
public objects into the appropriate reference section.