半精度代码生成支持金宝app
要将半精度数据类型分配给数字或变量,请使用一半
(定点设计师)构造函数。半精度数据类型占用16位内存,但其浮点表示使其能够处理比相同大小的整数或定点数据类型更宽的动态范围。有关更多信息,请参见浮点数(定点设计师).
MATLAB的一个子集®函数支持使用半精度输入。金宝app此外,一些函数支持使用半精度数据类型生成代码。金宝app生成C和c++代码需要MATLAB编码器™.CUDA®代码生成NVIDIA®GPU需要GPU Coder™。金宝app支持的函数按字母顺序出现在下表中。有关半精度代码生成的一般信息,请参见一半
(定点设计师).
函数 | MATLAB仿真支持金宝app | C/ c++代码生成支持金宝app | GPU代码生成支持金宝app |
---|---|---|---|
腹肌 |
✔ | ✔ | ✔ |
这些“可信赖医疗组织” |
✔ | ✔ | ✔ |
作用是 |
✔ | ✔ | ✔ |
激活 (深度学习工具箱) |
✔ | ✔ 将一半输入转换为单精度,并以单精度进行计算。 |
✔ 将一半输入转换为单精度,并以单精度进行计算。若要将计算减半,请将库目标设置为 |
所有 |
✔ | ✔ | ✔ |
和 ,& |
✔ | ✔ | ✔ |
任何 |
✔ | ✔ | ✔ |
区域 |
✔ | ||
印度历的7月 |
✔ | ✔ | ✔ |
的作用 |
✔ | ✔ | ✔ |
: |
✔ | ✔ | ✔ |
量化 |
✔ | ✔ | ✔ |
atanh |
✔ | ✔ | ✔ |
酒吧 |
✔ | ||
barh |
✔ | ||
投 |
✔ 金宝app支持语法:
|
✔ 金宝app支持语法:
|
✔ 金宝app支持语法:
|
猫 |
✔ | ✔
|
✔
|
装天花板 |
✔ | ✔ | ✔ |
细胞 |
✔ | ✔ | ✔ |
circshift |
✔ | ✔ | ✔ |
分类 (深度学习工具箱) |
✔ | ✔ 将一半输入转换为单精度,并以单精度进行计算。 |
✔ 将一半输入转换为单精度,并以单精度进行计算。若要将计算减半,请将库目标设置为 |
coder.ceval (金宝app模型) |
✔ | ✔ | |
结肠 ,: |
✔ | ✔ | ✔ |
复杂的 |
✔ | ✔ | |
连词 |
✔ | ✔ | ✔ |
conv |
✔ | ✔ | ✔ |
conv2 |
✔ | ✔ | ✔ |
因为 |
✔ | ✔ | ✔ |
cosh |
✔ | ✔ | ✔ |
cospi |
✔ | ✔ | ✔ |
ctranspose |
✔ | ✔ | ✔ |
cumsum |
✔ |
||
点 |
✔ | ||
双 |
✔ | ✔ | ✔ |
空 |
✔ | ||
每股收益 |
✔ | ✔ | ✔ |
情商 ,= = |
✔ | ✔ | ✔ |
经验值 |
✔ | ✔ | ✔ |
expm1 |
✔ | ✔ | ✔ |
眼睛 |
✔ 金宝app支持语法:
|
✔ 金宝app支持语法:
|
✔ 金宝app支持语法:
|
fft |
✔ | ✔ | |
fft2 |
✔ | ✔ | |
fftn |
✔ | ✔ | |
fftshift |
✔ | ✔ | ✔ |
修复 |
✔ | ✔ | ✔ |
翻转 |
✔ | ✔ 维度参数不能是半精度。 |
✔ 维度参数不能是半精度。 |
fliplr |
✔ | ✔ | ✔ |
flipud |
✔ | ✔ | ✔ |
地板上 |
✔ | ✔ | ✔ |
菲利普-马萨 (定点设计师) |
✔ 不支持复杂的半精度输入。金宝app |
✔ 不支持复杂的半精度输入。金宝app |
✔ 不支持复杂的半精度输入。金宝app |
fplot |
✔ | ||
通用电气 ,>= |
✔ | ✔ | ✔ |
gt ,> |
✔ | ✔ | ✔ |
一半 (定点设计师) |
✔ | ✔ | ✔ |
horzcat |
✔ | ✔ | ✔ |
函数的 |
✔ | ✔ | ✔ |
传输线 |
✔ | ✔ | |
ifft2 |
✔ | ✔ | |
ifftn |
✔ | ✔ | |
ifftshift |
✔ | ✔ | ✔ |
图像放大 |
✔ | ✔ | |
正 |
✔ 金宝app支持语法:
|
✔ 金宝app支持语法:
|
✔ 金宝app支持语法:
|
int16 |
✔ | ✔ | ✔ |
int32 |
✔ | ✔ | ✔ |
int64 |
✔ | ✔ | ✔ |
int8 |
✔ | ✔ | ✔ |
isa |
✔ | ✔ | ✔ |
iscolumn |
✔ | ✔ | ✔ |
isempty |
✔ | ✔ | ✔ |
isequal |
✔ | ✔ | ✔ |
isequaln |
✔ | ✔ | ✔ |
isfinite |
✔ | ✔ | ✔ |
isfloat (定点设计师) |
✔ | ✔ | ✔ |
isinf |
✔ | ✔ | ✔ |
isinteger |
✔ | ✔ | ✔ |
islogical |
✔ | ✔ | ✔ |
ismatrix |
✔ | ✔ | ✔ |
isnan |
✔ | ✔ | ✔ |
isnumeric |
✔ | ✔ | ✔ |
isobject |
✔ 使用半精度输入返回true。 |
✔ 使用半精度输入返回false。 |
✔ 使用半精度输入返回false。 |
伊斯雷尔 |
✔ | ✔ | ✔ |
isrow |
✔ | ✔ | ✔ |
isscalar |
✔ | ✔ | ✔ |
issorted |
✔ | ||
isvector |
✔ | ✔ | ✔ |
ldivide |
✔ | ✔ | ✔ |
勒 ,<= |
✔ | ✔ | ✔ |
长度 |
✔ | ✔ | ✔ |
行 |
✔ | ||
日志 |
✔ | ✔ | ✔ |
log10 |
✔ | ✔ | ✔ |
log1p |
✔ | ✔ | ✔ |
log2 |
✔ |
✔ 不支持双输出语法。金宝app |
✔ 不支持双输出语法。金宝app |
逻辑 |
✔ | ✔ | ✔ |
逻辑运算符:短路&& || |
✔ | ✔ | ✔ |
lt ,< |
✔ | ✔ | ✔ |
马克斯 |
✔ | ✔ | ✔ |
的意思是 |
✔ | ✔ | ✔ |
最小值 |
✔ | ✔ | ✔ |
- ,- |
✔ | ✔ | ✔ |
mldivide ,\ |
✔ 左边必须是标量 |
||
国防部 |
✔ | ✔ | ✔ |
mrdivide ,/ |
✔ 右边必须是标量 |
✔ 右边必须是标量 |
✔ 右边必须是标量 |
mtimes ,* |
✔ | ✔ | ✔ 对于GPU代码生成,您可以使用实际输入执行半精度矩阵乘法。 |
南 |
✔ 金宝app支持语法:
|
✔ 金宝app支持语法:
|
✔ 金宝app支持语法:
|
ndims |
✔ | ✔ | ✔ |
不 ,~ = |
✔ | ✔ | ✔ |
不 |
✔ | ✔ | ✔ |
元素个数 |
✔ | ✔ | ✔ |
的 |
✔ 金宝app支持语法:
|
✔ 金宝app支持语法:
|
✔ 金宝app支持语法:
|
或 ,|| |
✔ | ✔ | ✔ |
交换 |
✔ | ✔ | ✔ |
情节 |
✔ | ||
plot3 |
✔ | ||
plotmatrix |
✔ | ||
+ ,+ |
✔ | ✔ | ✔ |
pow10 (定点设计师) |
✔ | ✔ | ✔ |
pow2 |
✔ | ✔ | ✔ |
权力 ,.^ |
✔ | ✔ | ✔ |
预测 (深度学习工具箱) |
✔ | ✔ 将一半输入转换为单精度,并以单精度进行计算。 |
✔ 将一半输入转换为单精度,并以单精度进行计算。若要将计算减半,请将库目标设置为 |
predictAndUpdateState (深度学习工具箱) |
✔ | ✔ 将一半输入转换为单精度,并以单精度进行计算。 |
✔ 将一半输入转换为单精度,并以单精度进行计算。若要将计算减半,请将库目标设置为 |
刺激 |
✔ 将一半输入转换为单精度,并以单精度进行计算。因此,饱和行为在单输入和半输入之间有所不同: Maxhalf = half.realmax;= = (prod([maxhalf 2 0.5]), maxhalf) Ans =逻辑1 Maxsingle = realmax()“单一”);= = (prod([maxsingle 2 0.5]), maxsingle)
Ans =逻辑0 |
✔ | ✔ |
rdivide |
✔ | ✔ | ✔ |
真正的 |
✔ | ✔ | ✔ |
快速眼动 |
✔ | ✔ | ✔ |
repelem |
✔ | ✔ | ✔ |
repmat |
✔ | ✔ 维度参数不能是半精度。 |
✔ 维度参数不能是半精度。 |
重塑 |
✔ | ✔ 维度参数不能是半精度。 |
✔ 维度参数不能是半精度。 |
rgbplot |
✔ | ||
轮 |
✔ 只支持一个输入金宝app |
✔ 只支持一个输入金宝app |
✔ 只支持一个输入金宝app |
rsqrt (定点设计师) |
✔ 不支持复杂的半精度输入金宝app |
||
散射 |
✔ | ||
scatter3 |
✔ | ||
标志 |
✔ | ✔ | ✔ |
罪 |
✔ | ✔ | ✔ |
单 |
✔ | ✔ | ✔ |
sinh |
✔ | ✔ | ✔ |
sinpi |
✔ | ✔ | ✔ |
大小 |
✔ | ✔ | ✔ |
排序 |
✔ | ||
√6 |
✔ | ✔ | ✔ |
挤压 |
✔ | ✔ | ✔ |
storedInteger (定点设计师) |
✔ | ||
总和 |
✔ 将一半输入转换为单精度,并以单精度进行计算。因此,饱和行为在单输入和半输入之间有所不同: Maxhalfint = half.flintmax;Isequal (sum([maxhalfint, 1, -1]), maxhalfint) Ans =逻辑1 Maxsingleint = flintmax(“单一”);Isequal (sum([maxsingleint, 1, -1]), maxsingleint)
Ans =逻辑0 |
✔ | ✔ |
棕褐色 |
✔ | ✔ | ✔ |
双曲正切 |
✔ | ✔ | ✔ |
次 ,.* |
✔ | ✔ | ✔ |
转置 |
✔ | ✔ | ✔ |
定型 |
✔ | ||
uint16 |
✔ | ✔ | ✔ |
uint32 |
✔ | ✔ | ✔ |
uint64 |
✔ | ✔ | ✔ |
uint8 |
✔ | ✔ | ✔ |
uminus |
✔ | ✔ | ✔ |
uplus |
✔ | ✔ | ✔ |
vertcat |
✔ | ✔ | ✔ |
xlim |
✔ | ||
ylim |
✔ | ||
0 |
✔ 金宝app支持语法:
|
✔ 金宝app支持语法:
|
✔ 金宝app支持语法:
|
zlim |
✔ |
另请参阅
相关的话题
- 浮点数(定点设计师)
- 什么是半精度?(定点设计师)
- 生成使用半精度数据类型的Sobel边缘检测代码