aclmdlQuerySizeFromMem
Applicability
Product |
Supported |
|---|---|
√ |
|
√ |
|
√ |
|
√ |
|
√ |
Description
Obtains the weight memory size and workspace size required for model execution based on the model data in the memory.
If the memory is managed by the user, before the allocation, you need to call this API to query the sizes of the workspace and weight memory required for model execution to avoid memory waste. If the shape of the input data is uncertain, you cannot call this API to query the memory size. As a result, you cannot manage the memory during model loading. Therefore, you need to call aclmdlLoadFromFile or aclmdlLoadFromMem to allow the system to manage the memory.
Prototype
aclError aclmdlQuerySizeFromMem(const void *model, size_t modelSize, size_t *workSize, size_t *weightSize)
Parameters
Parameter |
Input/Output |
Description |
|---|---|---|
model |
Input |
Pointer to model data. |
modelSize |
Input |
Model size in bytes. |
workSize |
Output |
Pointer to the workspace size required for model execution, in bytes. The workplace is device memory, which needs to be allocated and freed by the user. |
weightSize |
Output |
Pointer to the weight memory size required for model execution, in bytes. The workplace is device memory, which needs to be allocated and freed by the user. |
Returns
0 on success; else, failure. For details, see aclError.