aclmdlLoadWithConfig

Description

Loads a model based on the given configuration.

This API needs to work with the following APIs to load models:
  1. Call aclmdlCreateConfigHandle to create a configuration object for loading a model.
  2. Call aclmdlSetConfigOpt for multiple times to set the value of each attribute in the configuration object.
  3. Call aclmdlLoadWithConfig to specify the configuration information for model loading and load your model.
  4. After the model is successfully loaded, call aclmdlDestroyConfigHandle to destroy the configuration object.

Restrictions

Before loading a model file, check whether the memory space is sufficient based on the size of the model file. If the memory space is insufficient, the application will be abnormal.

Prototype

aclError aclmdlLoadWithConfig(const aclmdlConfigHandle *handle, uint32_t *modelId)

Parameters

Parameter

Input/Output

Description

handle

Input

Pointer to the configuration object for loading a model. Call aclmdlCreateConfigHandle to create an object in advance, which must be consistent with handle output by the aclmdlSetConfigOpt call.

modelId

Output

Pointer to the model ID.

The model ID will be returned after a model is loaded to the system.

Returns

The value 0 indicates success, and other values indicate failure. For details, see aclError.

Related APIs

For model loading by using aclmdlSetConfigOpt and aclmdlLoadWithConfig, the caller needs to set the attributes in the configuration object passed to the API call to decide how the model will be loaded and who will manage the memory.

By choosing from the following AscendCL APIs, you can directly determine whether to load a model from a file or from memory and whether the memory is managed by the system or the user.