ssk*_*ssk 4 floating-point matlab ieee-754
MATLAB是否支持float16操作?如果是这样,如何将双矩阵转换为float16?我正在对一个大矩阵进行算术运算,其中16位浮点表示足以表示我的表示.以double数据类型表示需要4倍的内存.
你的矩阵满了吗?否则,sparse如果有很多零值元素,请尝试-- 节省大量内存。
AFAIK,float16不支持。float-datatype 的最低值是 with single,它是 32 位数据类型:
A = single( rand(50) );
Run Code Online (Sandbox Code Playgroud)
你可以乘以一个常数并转换为int16,但你会失去精度。
Matlab支持的数字类如下:
int8
int16
int32
int64
uint8
uint16
uint32
uint64
single (32-bit float)
double (64-bit float)
Run Code Online (Sandbox Code Playgroud)
加上复杂的数据类型.不幸的是,没有16位浮点数.
在Mathworks文件交换中,似乎有一个半精度浮点库.但是,它需要MEX.