已合并
nn仓大模型资料扫描修改 #3686
sunchun创建于 4月10日
nn仓大模型资料扫描修改 #3686
已合并
sunchun创建于 4月10日
已删除 :nntextB合入到cann/ops-nn9.0.0
7 个文件变更+11-13
@@ -116,10 +116,8 @@ aclnnStatus aclnnGather(
116 <td>index(aclTensor*)</td>116 <td>index(aclTensor*)</td>
117 <td>输入</td>117 <td>输入</td>
118 <td>公式中的index。</td>118 <td>公式中的index。</td>
119- <td>119+ <td>维度数需要与self一致,且shape需要与out一致,除dim指定的维度外,其他维度的size需要小于等于self对应维度的size。<br>index中的具体数值代表self对应dim轴上的下标,取值范围[-self.shape[dim], self.shape[dim] - 1],index中的索引不支持越界。</td>
120- 维度数需要与self一致,且shape需要与out一致,除dim指定的维度外,其他维度的size需要小于等于self对应维度的size。120+ <td>INT32、INT64</td>
121- <br>index中的具体数值代表self对应dim轴上的下标,取值范围[-self.shape[dim], self.shape[dim] - 1],index中的索引不支持越界。</td>
122- <td>INT32、IND64</td>
123 <td>-</td>121 <td>-</td>
124 <td>0-8</td>122 <td>0-8</td>
125 <td>√</td>123 <td>√</td>
@@ -155,7 +155,7 @@ aclnnStatus aclnnGatherNd(
155 </tr>155 </tr>
156 </tbody></table>156 </tbody></table>
157 157 
158- - <term>Atlas A2 训练系列产品/Atlas A2 推理系列产品</term>、<term>Atlas A3 训练系列产品/Atlas A3 推理系列产品</term>:数据类型支持DOUBLE、INT16、UINT16、UINT32、UINT64。158+ - <term>Atlas A2 训练系列产品/Atlas A2 推理系列产品</term>、<term>Atlas A3 训练系列产品/Atlas A3 推理系列产品</term>:数据类型支持DOUBLE、INT16、UINT16、UINT32、UINT64。
159- **返回值**159- **返回值**
160 160 
161 aclnnStatus:返回状态码,具体参见[aclnn返回码](../../../docs/zh/context/aclnn返回码.md)。161 aclnnStatus:返回状态码,具体参见[aclnn返回码](../../../docs/zh/context/aclnn返回码.md)。
@@ -250,7 +250,7 @@ aclnnStatus aclnnInplaceIndexFillTensor(
250 <tr>250 <tr>
251 <td>workspaceSize</td>251 <td>workspaceSize</td>
252 <td>输入</td>252 <td>输入</td>
253- <td>在Device侧申请的workspace大小,由第一段接口aclnnIndexFillTensorTensor获取。</td>253+ <td>在Device侧申请的workspace大小,由第一段接口aclnnIndexFillTensorGetWorkspaceSize获取。</td>
254 </tr>254 </tr>
255 <tr>255 <tr>
256 <td>executor</td>256 <td>executor</td>
@@ -151,7 +151,7 @@ aclnnStatus aclnnIndexPutImpl(
151 </tr>151 </tr>
152 </tbody></table>152 </tbody></table>
153 153 
154- - <term>Atlas 训练系列产品</term>:数据类型不支持BFLOAT154+ - <term>Atlas 训练系列产品</term>:数据类型不支持BFLOAT16
155 - <term>Ascend 950PR/Ascend 950DT</term>:当accumulate为False,且indices有重复索引值的时候,结果不保序。155 - <term>Ascend 950PR/Ascend 950DT</term>:当accumulate为False,且indices有重复索引值的时候,结果不保序。
156 156 
157* **返回值**157* **返回值**
@@ -359,7 +359,7 @@ int main() {
359 alpha = aclCreateScalar(&alphaValue, aclDataType::ACL_FLOAT);359 alpha = aclCreateScalar(&alphaValue, aclDataType::ACL_FLOAT);
360 CHECK_RET(alpha != nullptr, return ret);360 CHECK_RET(alpha != nullptr, return ret);
361 361 
362- // 3. 调用CANN算子库API,需要修改为具体的Api名称362+ // 3. 调用CANN算子库API,需要修改为具体的API名称
363 uint64_t workspaceSize = 0;363 uint64_t workspaceSize = 0;
364 aclOpExecutor* executor;364 aclOpExecutor* executor;
365 // 调用aclnnIndexAdd第一段接口365 // 调用aclnnIndexAdd第一段接口
@@ -123,7 +123,7 @@ aclnnStatus aclnnInplaceIndexCopy(
123 <td>与selfRef一致</td>123 <td>与selfRef一致</td>
124 <td>ND</td>124 <td>ND</td>
125 <td>与selfRef一致</td>125 <td>与selfRef一致</td>
126- <td>d√</td>126+ <td>√</td>
127 </tr>127 </tr>
128 <tr>128 <tr>
129 <td>outRef</td>129 <td>outRef</td>
@@ -320,7 +320,7 @@ aclnnStatus aclnnInplaceIndexCopy(
320 <td>与selfRef一致</td>320 <td>与selfRef一致</td>
321 <td>ND</td>321 <td>ND</td>
322 <td>与selfRef一致</td>322 <td>与selfRef一致</td>
323- <td>d√</td>323+ <td>√</td>
324 </tr>324 </tr>
325 <tr>325 <tr>
326 <td>workspaceSize</td>326 <td>workspaceSize</td>
@@ -548,7 +548,7 @@ int main() {
548 ret = CreateAclTensor(outHostData, outShape, &outDeviceAddr, aclDataType::ACL_INT32, &out);548 ret = CreateAclTensor(outHostData, outShape, &outDeviceAddr, aclDataType::ACL_INT32, &out);
549 CHECK_RET(ret == ACL_SUCCESS, return ret);549 CHECK_RET(ret == ACL_SUCCESS, return ret);
550 550 
551- // 3. 调用CANN算子库API,需要修改为具体的Api名称551+ // 3. 调用CANN算子库API,需要修改为具体的API名称
552 uint64_t workspaceSize = 0;552 uint64_t workspaceSize = 0;
553 aclOpExecutor* executor;553 aclOpExecutor* executor;
554 // 调用aclnnIndexCopy第一段接口554 // 调用aclnnIndexCopy第一段接口
@@ -225,7 +225,7 @@ aclnnStatus aclnnModulateBackward(
225 <tr>225 <tr>
226 <td>workspaceSize</td>226 <td>workspaceSize</td>
227 <td>输入</td>227 <td>输入</td>
228- <td>在Device侧申请的workspace大小,由第一段接口aclnnMultiScaleDeformableAttentionGradGetWorkspaceSize获取。</td>228+ <td>在Device侧申请的workspace大小,由第一段接口aclnnModulateBackwardGetWorkspaceSize获取。</td>
229 </tr>229 </tr>
230 <tr>230 <tr>
231 <td>executor</td>231 <td>executor</td>
@@ -431,7 +431,7 @@ int main()
431 aclOpExecutor* executor = nullptr;431 aclOpExecutor* executor = nullptr;
432 // 调用aclnnModulate第一段接口432 // 调用aclnnModulate第一段接口
433 ret = aclnnModulateBackwardGetWorkspaceSize(grad_output, input, scale, shift, grad_input, grad_scale, grad_shift, &workspaceSize, &executor);433 ret = aclnnModulateBackwardGetWorkspaceSize(grad_output, input, scale, shift, grad_input, grad_scale, grad_shift, &workspaceSize, &executor);
434- CHECK_RET(ret == ACL_SUCCESS, LOG_PRINT("aclnnModulaBackwardteGetWorkspaceSize failed. ERROR: %d\n", ret); return ret);434+ CHECK_RET(ret == ACL_SUCCESS, LOG_PRINT("aclnnModulateBackwardGetWorkspaceSize failed. ERROR: %d\n", ret); return ret);
S
Ssunday4月11日
已过期

LOG_PRINT 里的字符串仍是 aclnnModulateBackwardteGetWorkspaceSize,中间多了 te,与上一行调用的 aclnnModulateBackwardGetWorkspaceSize 不一致,建议改成与真实 API 名完全一致,避免复制示例时搜不到符号。

likedislike
435 // 根据第一段接口计算出的workspaceSize申请device内存435 // 根据第一段接口计算出的workspaceSize申请device内存
436 void* workspaceAddr = nullptr;436 void* workspaceAddr = nullptr;
437 if (workspaceSize > 0) {437 if (workspaceSize > 0) {