def init_resource(self): """ Allocate resouces for device context and stream. """ acl.init() ret = acl.rt.set_device(self.device_id) check_ret("acl.rt.set_device", ret) self.context, ret = acl.rt.create_context(self.device_id) check_ret("acl.rt.create_context", ret) self.stream, ret = acl.rt.create_stream() check_ret("acl.rt.create_stream", ret) print("[Sample] init resource stage success")
def init_resource(self): print("[Sample] init resource stage:") acl.init() ret = acl.rt.set_device(self.device_id) check_ret("acl.rt.set_device", ret) self.context, ret = acl.rt.create_context(self.device_id) check_ret("acl.rt.create_context", ret) self.stream, ret = acl.rt.create_stream() check_ret("acl.rt.create_stream", ret) print("[Sample] init resource stage success")
def init_resource(self): print("init resource stage:") if isinstance(self.config_path, str) \ and os.path.exists(self.config_path): ret = acl.init(self.config_path) check_ret("acl.init", ret) elif self.config_path is None: ret = acl.init() check_ret("acl.init", ret) result = acl.rt.set_device(self.device_id) check_ret("acl.rt.set_device", result) self.context, ret = acl.rt.create_context(self.device_id) check_ret("acl.rt.create_context", ret) self.stream, ret = acl.rt.create_stream() check_ret("acl.rt.create_stream", ret) self._get_model_info() print("init resource stage success")
def init_resource(self): """ 功能简介:初始化所需资源 参数:无 返回值:无 异常:会校验两个矩阵的shape和dtype,不一致会抛出异常 """ print("init resource stage:") if isinstance(self.config_path, str) \ and os.path.exists(self.config_path): ret = acl.init(self.config_path) check_ret("acl.init", ret) elif self.config_path is None: ret = acl.init() check_ret("acl.init", ret) ret = acl.rt.set_device(self.device_id) check_ret("acl.rt.set_device", ret) self.context, ret = acl.rt.create_context(self.device_id) check_ret("acl.rt.create_context", ret) self.stream, ret = acl.rt.create_stream() check_ret("acl.rt.create_stream", ret) self.shape = self.factor_a.shape if self.factor_b.shape != self.shape: raise ValueError( "factor_a:{} factor_b:{} isn't same shape!!!".format( self.shape, self.factor_b.shape)) self.shape = list(self.shape) self.data_type = str(self.factor_a.dtype) if str(self.factor_b.dtype) != self.data_type: raise ValueError( "factor_a:{} factor_b:{} isn't same dtype!!!".format( self.factor_a.dtype, self.factor_b.dtype)) self.op_attr = acl.op.create_attr() ret = acl.op.set_model_dir(self.op_model_path) check_ret("acl.op.set_model_dir", ret) print("init resource success")
def init(self): # print("init resource stage:") ret = acl.init() check_ret("acl.rt.set_device", ret) ret = acl.rt.set_device(self.device_id) check_ret("acl.rt.set_device", ret) self.context, ret = acl.rt.create_context(self.device_id) check_ret("acl.rt.create_context", ret) self.stream, ret = acl.rt.create_stream() check_ret("acl.rt.create_stream", ret) self.run_mode, ret = acl.rt.get_run_mode() check_ret("acl.rt.get_run_mode", ret)
def init_resource(self): """Load model and init it """ ret = acl.init() check_ret("acl.init", ret) ret = acl.rt.set_device(self.device_id) check_ret("acl.rt.set_device", ret) self.context, ret = acl.rt.create_context(self.device_id) check_ret("acl.rt.create_context", ret) # load_model self.model_id, ret = acl.mdl.load_from_file(self.model_path) check_ret("acl.mdl.load_from_file", ret) self.model_desc = acl.mdl.create_desc() self._get_model_info()
def init_resource(self): print("init resource stage:") ret = acl.init() check_ret("acl.init", ret) ret = acl.rt.set_device(self.device_id) check_ret("acl.rt.set_device", ret) self.context, ret = acl.rt.create_context(self.device_id) check_ret("acl.rt.create_context", ret) # load_model self.model_id, ret = acl.mdl.load_from_file(self.model_path) check_ret("acl.mdl.load_from_file", ret) print("model_id:{}".format(self.model_id)) self.model_desc = acl.mdl.create_desc() self._get_model_info() print("init resource success")
def init(self): """init""" print("[Sample] init resource stage:") ret = acl.init() check_ret("acl.rt.set_device", ret) ret = acl.rt.set_device(self.device_id) check_ret("acl.rt.set_device", ret) self.context, ret = acl.rt.create_context(self.device_id) check_ret("acl.rt.create_context", ret) self.stream, ret = acl.rt.create_stream() check_ret("acl.rt.create_stream", ret) self.run_mode, ret = acl.rt.get_run_mode() check_ret("acl.rt.get_run_mode", ret) print("Init resource success") return
acl.media.dvpp_set_stream_desc_ret_code(dvpp_stream_desc, ret_code) acl.media.dvpp_set_stream_desc_eos(dvpp_stream_desc, eos) ret = acl.media.dvpp_destroy_stream_desc(dvpp_stream_desc) utils.check_ret("acl.media.dvpp_destroy_stream_desc", ret) def _thread_join(self): self.callback_run_flag = False while self._is_thread_exit == False: time.sleep(0.01) ret = acl.util.stop_thread(self._cb_thread_id) log_info("[INFO] stop_thread", ret) if __name__ == '__main__': ret = acl.init("") utils.check_ret("acl.init", ret) ret = acl.rt.set_device(DEVICE_ID) utils.check_ret("acl.rt.set_device", ret) run_mode, ret = acl.rt.get_run_mode() utils.check_ret("acl.rt.get_run_mode", ret) venc_handel = AclVenc() venc_cnt = 16 while venc_cnt: # load file image = AclImage(VENC_FILE_PATH, 1280, 720) image = image.copy_to_dvpp() venc_handel.process(image) venc_cnt -= 1
import acl from flask import Flask, g from flask_restful import reqparse, Api, Resource from flask_httpauth import HTTPTokenAuth import base64 from utils import * from acl_dvpp import Dvpp from acl_model import Model from acl_image import AclImage from image_net_classes import get_image_net_class from PIL import Image, ImageDraw, ImageFont import numpy as np ret = acl.init() check_ret("acl.rt.set_device", ret) class Classify(object): def __init__(self, model_path, model_width, model_height): self.device_id = 0 self.context = None self.stream = None self._model_path = model_path self._model_width = model_width self._model_height = model_height self._dvpp = None def __del__(self): if self._model: