跳到主要内容

aclprofGetModelId

aclprofGetModelId

函数功能

获取指定算子所在模型的ID。同步接口。

建议用户新建一个线程,在新线程内调用该接口,否则可能阻塞主线程中的其它任务调度。

函数原型

size_t aclprofGetModelId(const void *opInfo, size_t opInfoLen, uint32_t index)

参数说明

参数名输入/输出说明
opInfo输入包含算子信息的地址。
opInfoLen输入算子信息的长度。
index输入指定获取第几个算子所在模型的ID。 用户调用aclprofGetOpNum接口获取算子数量后,这个index的取值范围:[0, (算子数量-1)]。

返回值说明

模型的ID。

参考资源

接口调用示例,参见Profiling性能数据采集

父主题: Profiling AscendCL API for Subscription(订阅算子信息的Profiling AscendCL API)

aclprofGetStepTimestamp

函数功能

利用单算子加载与执行接口实现训练的场景下,使用本接口用于标记迭代开始与结束时间,为后续Profiling解析提供迭代标识,以便以迭代为粒度展示性能数据。

函数原型

aclError aclprofGetStepTimestamp(aclprofStepInfo* stepInfo, aclprofStepTag tag, aclrtStream stream)

参数说明

参数名输入/输出说明
stepinfo输入指定迭代信息。需提前调用aclprofCreateStepInfo接口创建**aclprofStepInfo**类型的数据。
tag输入用于标记迭代开始或结束。在迭代开始时传入枚举值ACL_STEP_START,迭代结束时需传入枚举值ACL_STEP_END。
stream输入指定Stream。

返回值说明

返回0表示成功,返回其它值表示失败。

父主题: Profiling AscendCL API(PyTorch场景标记迭代时间)

acltdtCreateChannel

函数功能

创建acltdtChannelHandle类型的数据,表示可以用于向Device发送数据或是从Device接收数据的通道。

Atlas 200/500 A2推理产品,不支持该接口。

函数原型

acltdtChannelHandle *acltdtCreateChannel(uint32_t deviceId, const char *name)

参数说明

参数名输入/输出说明
deviceId输入Device ID。 用户调用aclrtGetDeviceCount接口获取可用的Device数量后,这个Device ID的取值范围:[0, (可用的Device数量-1)]
name输入队列通道名称的指针。

返回值说明

  • 返回acltdtChannelHandle类型的指针,表示成功。
  • 返回nullptr,表示失败。

父主题: Tensor数据传输接口

acltdtSendTensor

函数功能

发送预处理好的数据。

Atlas 200/500 A2推理产品,不支持该接口。

函数原型

aclError acltdtSendTensor(const acltdtChannelHandle *handle,

const acltdtDataset *dataset,

int32_t timeout)

参数说明

参数名输入/输出说明
handle输入指定通道。 需提前调用acltdtCreateChannel接口或acltdtCreateChannelWithCapacity接口创建acltdtChannelHandle类型的数据。
dataset输入向Device发送的数据的指针。
timeout输入等待超时时间。 该参数取值范围如下:
- -1:阻塞方式,一直等待直到数据发送完成。
- 0:非阻塞方式,当通道满时,直接返回通道满这个错误,这时由用户自行设定重试间隔。
- >0:配置具体的超时时间,单位为毫秒。通道满时,等待达到超时时间后返回报错。超时时间受操作系统影响,一般偏差在操作系统的一个时间片内,例如,操作系统的一个时间片为4ms,用户设置的超时时间为1ms,则实际的超时时间在1ms到5ms范围内。在CPU负载高场景下,超时时间仍可能存在波动。

返回值说明

返回0表示成功,返回其它值表示失败。

父主题: Tensor数据传输接口

acltdtReceiveTensor

函数功能

在Host接收Device发过来的数据。

Atlas 200/500 A2推理产品,不支持该接口。

函数原型

aclError acltdtReceiveTensor(const acltdtChannelHandle *handle,

acltdtDataset *dataset,

int32_t timeout)

参数说明

参数名输入/输出说明
handle输入指定通道。 需提前调用acltdtCreateChannel接口或acltdtCreateChannelWithCapacity接口创建acltdtChannelHandle类型的数据。
dataset输出接收到的Device数据的指针。
timeout输入等待超时时间。 该参数取值范围如下:
- -1:阻塞方式,一直等待直到数据接收完成。
- 0:非阻塞方式,当通道空时,直接返回通道空这个错误,这时由用户自行设定重试间隔。
- >0:配置具体的超时时间,单位为毫秒。通道空时,等待达到超时时间后返回报错。超时时间受操作系统影响,一般偏差在操作系统的一个时间片内,例如,操作系统的一个时间片为4ms,用户设置的超时时间为1ms,则实际的超时时间在1ms到5ms范围内。在CPU负载高场景下,超时时间仍可能存在波动。

返回值说明

返回0表示成功,返回其它值表示失败。

父主题: Tensor数据传输接口

在线提单