---
title: 总体说明
description: "不能与Profiling数据采集接口的接口交叉调用：acl.prof.model_subscribe接口和acl.prof.model_unsubscribe接口之间不能调用acl.prof.init接口、acl.prof.start接口、acl.prof.stop接口、acl.prof.finalize接口。"
url: https://www.hiascend.com/document/detail/zh/canncommercial/latest/API/runtimeapi/aclpythondevg_01_0869.html
sourcePath: /source/zh/canncommercial/900/API/runtimeapi/aclpythondevg_01_0869.html
indexId: 2e1c73650ce33540463b55c45e61161104daa99bd7569b7803b91522679610e471
---
# 总体说明

#### 总体约束

不能与Profiling数据采集接口的接口交叉调用：acl.prof.model_subscribe接口和acl.prof.model_unsubscribe接口之间不能调用acl.prof.init接口、acl.prof.start接口、acl.prof.stop接口、acl.prof.finalize接口。


#### 接口约束说明

- 接口调用要求：

  -     acl.prof.model_subscribe
接口在模型执行之前调用，若在模型执行过程中调用    acl.prof.model_subscribe
接口，Profiling采集到的数据为调用    acl.prof.model_subscribe
接口之后的数据，可能导致数据不完整。
  -     acl.prof.model_subscribe
接口需与    acl.prof.model_unsubscribe
接口配对使用，不能在调用    acl.prof.model_unsubscribe
接口前，多次调用    acl.prof.model_subscribe
接口重复订阅相同的模型。
  - 不能调用    acl.prof.model_subscribe
接口订阅不存在的模型ID。
  - 不能调用    acl.prof.model_unsubscribe
接口取消订阅不存在的模型ID或未订阅过的模型ID。
  - 如果在同一个Device上加载了多个模型，只能对多个模型下发同样的订阅配置。
- 接口调用顺序：

  - 建议的接口调用顺序如下：
    模型加载-->acl.prof.model_subscribe接口-->acl.prof.get_op_desc_size接口-->acl.prof.get_op_num接口-->acl.prof.get_op_type/acl.prof.get_op_name/acl.prof.get_op_start/acl.prof.get_op_end/acl.prof.get_op_duration/acl.prof.get_model_id接口-->acl.prof.model_unsubscribe接口

  - 错误的接口调用顺序示例如下，以重复定义同一个模型为例：
    模型1加载-->acl.prof.model_subscribe接口(指定模型1)-->acl.prof.model_subscribe接口(指定模型1)-->acl.prof.model_unsubscribe接口
