ICachePreLoad(ISASI)
产 品 支 持 情 况
| 产 品 | 是 否 支 持 |
|---|---|
Ascend 950PR/Ascend 950DT | √ |
Atlas A3 训 练 系 列 产 品/Atlas A3 推 理 系 列 产 品 | √ |
Atlas A2 训 练 系 列 产 品/Atlas A2 推 理 系 列 产 品 | √ |
Atlas 200I/500 A2 推 理 产 品 | x |
Atlas 推 理 系 列 产 品AI Core | √ |
Atlas 推 理 系 列 产 品Vector Core | x |
Atlas 训 练 系 列 产 品 | x |
功 能 说 明
头 文 件 路 径 为:"basic_api/kernel_operator_cache_intf.h"。
开 发 者 手 动 调 用ICachePreLoad接 口,能 够 从 指 令 所 在GM地 址 预 加 载 指 令 到ICache中。
函 数 原 型
C++
__aicore__ inline void ICachePreLoad(const int64_t preFetchLen)
参 数 说 明
表 1 参 数 说 明
| 参 数 名 | 输 入/输 出 | 描 述 |
|---|---|---|
| preFetchLen | 输 入 | 预 取 长 度。 • 针 对Ascend 950PR/Ascend 950DT,preFetchLen参 数 单 位 为2K Byte,取 值 应 小 于ICache的 大 小/2K。AIC和AIV的ICache大 小 分 别 为32KB和16KB。 • 针 对Atlas A3 训 练 系 列 产 品/Atlas A3 推 理 系 列 产 品,preFetchLen参 数 单 位 为2K Byte,取 值 应 小 于ICache的 大 小/2K。AIC和AIV的ICache大 小 分 别 为32KB和16KB。 • 针 对Atlas A2 训 练 系 列 产 品/Atlas A2 推 理 系 列 产 品,preFetchLen参 数 单 位 为2K Byte,取 值 应 小 于ICache的 大 小/2K。AIC和AIV的ICache大 小 分 别 为32KB和16KB。 • 针 对Atlas 推 理 系 列 产 品AI Core,传 入 该 参 数 无 效,预 取 长 度 均 为128Byte。 |
返 回 值 说 明
无
约 束 说 明
无
调 用 示 例
C++
int64_t preFetchLen = 2; // 预 取 指 令 长 度。
AscendC::ICachePreLoad(preFetchLen);