文件名称:给出了除法和开-bp反向传播神经网络介绍及公式推导
文件大小:3.79MB
文件格式:PDF
更新时间:2024-06-29 04:12:23
opencl
6. 单精度基本浮点运算(加、减和乘)应当进行正确舍入。表 10.1 给出了除法和开 方的精度。 如果 CL_DEVICE_SINGLE_FP_CONFIG 中没有设置 CL_FP_INF_NAN,并且加减乘除 的一个操作数或正确舍入后的结果是 INF 或 NaN,结果的值依赖于具体实现。同样,如果 一个或多个操作数是 NaN,则单精度比较运算(<、>、<=、>=、==、!=)所返回的结 果也依赖于具体实现。 在所有情况中,变换(节 6.2 和 6.11.7)应当和 FULL_PROFILE 中一样进行正确的舍 入,包括那些使用或产生 INF 或 NaN 的变换。内建数学函数(节 6.11.2)也应当与 FULL_PROFILE 中的表现一样,包括节 7.5.1 中的边界情况的行为,不过精度由表 10.1 给 出。 注意: 如果加减乘的默认舍入模式是向零舍入,则 fract、fma 和 fdim 也会按向零舍入进行 运算。 对于基本浮点运算,放宽了 IEEE 754 的需求,尽管非常不情愿,但是这样可以为那些 硬件预算有严格限制的嵌入式设备提供更好的灵活性。 7. 当使用 vstore_half 的变体执行从 float 到 half 的变换,或使用 vload_half 的变体执行从 half 到 float 的变换时,所生成的数据类型为 half 的去规格化数 可能会被刷新称零。请参考 6.1.1.1。 8. 对于从 CL_UNORM_INT8、CL_SNORM_INT8、CL_UNORM_INT16 和 CL_SNORM_INT16 到 float 的变换,在嵌入式简档中其精度是<=2ulp(节 8.3.1.1 中为<=1.5ulp)。对于嵌入式简档,节 8.3.1.1 中所描述的异常情况和下面给出的 异常情况都有效。 For CL_UNORM_INT8 48 如果支持扩展 cl_khr_fp16。