aclrtSetDeviceResLimit
Applicability
Product |
Supported |
|---|---|
Atlas 350 Accelerator Card |
√ |
√ |
|
√ |
|
√ |
|
√ |
|
√ |
Description
Sets the device resource limits for the current process.
This API must be called after aclrtSetDevice is called and before operators are executed. If the same device is set multiple times, the last setting takes effect.
In addition to device resource limits for processes, you can also use aclrtSetStreamResLimit and aclrtUseStreamResInCurrentThread to set device resource limits for streams.
The priorities of device resource limits are as follows: device resource limits for streams > device resource limits for processes > AI processor resource limits.
Prototype
1 | aclError aclrtSetDeviceResLimit(int32_t deviceId, aclrtDevResLimitType type, uint32_t value) |
Parameters
Parameter |
Input/Output |
Description |
|---|---|---|
deviceId |
Input |
Device ID. Must be in the range of [0, Device count – 1]. Call aclrtGetDeviceCount to obtain the device count. |
type |
Input |
Resource type. For details, see aclrtDevResLimitType. |
value |
Input |
Resource limit. |
Returns
0 on success; otherwise, failure. For details, see aclError.
Restrictions
The settings of this API are valid only for subsequent tasks. For example, if aclmdlRICaptureBegin and aclmdlRICaptureEnd are called to capture stream tasks to the model and then perform model inference, you need to call this API to set device resources before the capture.