def __init__(self, model_path): self._run_mode, ret = acl.rt.get_run_mode() utils.check_ret("acl.rt.get_run_mode", ret) self._copy_policy = const.ACL_MEMCPY_DEVICE_TO_DEVICE if self._run_mode == const.ACL_HOST: self._copy_policy = const.ACL_MEMCPY_DEVICE_TO_HOST self._model_path = model_path # string self._model_id = None # pointer self._input_num = 0 self._input_buffer = [] self._input_dataset = None self._output_dataset = None self._model_desc = None # pointer when using self._output_size = 0 self._init_resource() self._is_destroyed = False resource_list.register(self)
def __init__(self, acl_resource=None): if acl_resource is None: self._stream, ret = acl.rt.create_stream() utils.check_ret("acl.rt.create_stream", ret) self._run_mode, ret = acl.rt.get_run_mode() utils.check_ret("acl.rt.get_run_mode", ret) else: self._stream = acl_resource.stream self._run_mode = acl_resource.run_mode self._dvpp_channel_desc = None self._crop_config = None self._paste_config = None self._init_resource() # Dvpp involves acl resources, which need to be released \ # before the acl ends when the program exits, \ # register here to the resource table to ensure the release timing self._is_destroyed = False resource_list.register(self)