Merge pull request !2134 from yanghaoran/masterpull/2135/head
| @@ -64,7 +64,7 @@ typedef enum { | |||||
| ACL_SUBSCRIBE_OP = 0, | ACL_SUBSCRIBE_OP = 0, | ||||
| ACL_SUBSCRIBE_SUBGRAPH = 1, | ACL_SUBSCRIBE_SUBGRAPH = 1, | ||||
| ACL_SUBSCRIBE_OP_THREAD = 2, | ACL_SUBSCRIBE_OP_THREAD = 2, | ||||
| ACL_SUBSCRIBE_NONE | |||||
| ACL_SUBSCRIBE_NONE = 0xFF | |||||
| } aclprofSubscribeOpFlag; | } aclprofSubscribeOpFlag; | ||||
| typedef enum { ACL_SUBSCRIBE_ATTRI_THREADID = 0, ACL_SUBSCRIBE_ATTRI_NONE } aclprofSubscribeOpAttri; | typedef enum { ACL_SUBSCRIBE_ATTRI_THREADID = 0, ACL_SUBSCRIBE_ATTRI_NONE } aclprofSubscribeOpAttri; | ||||
| @@ -53,6 +53,8 @@ typedef enum { | |||||
| ACL_TDT_QUEUE_ROUTE_QUERY_DST_ID_UINT32 | ACL_TDT_QUEUE_ROUTE_QUERY_DST_ID_UINT32 | ||||
| } acltdtQueueRouteQueryInfoParamType; | } acltdtQueueRouteQueryInfoParamType; | ||||
| typedef enum { ACL_TDT_NORMAL_MEM = 0, ACL_TDT_DVPP_MEM } acltdtAllocBufType; | |||||
| /** | /** | ||||
| * @ingroup AscendCL | * @ingroup AscendCL | ||||
| * @brief create queue | * @brief create queue | ||||
| @@ -257,6 +259,53 @@ ACL_FUNC_VISIBILITY aclError acltdtFreeBuf(acltdtBuf buf); | |||||
| */ | */ | ||||
| ACL_FUNC_VISIBILITY aclError acltdtGetBufData(const acltdtBuf buf, void **dataPtr, size_t *size); | ACL_FUNC_VISIBILITY aclError acltdtGetBufData(const acltdtBuf buf, void **dataPtr, size_t *size); | ||||
| /** | |||||
| * @ingroup AscendCL | |||||
| * @brief get private data buf address and size | |||||
| * | |||||
| * @param buf [IN] acltdtBuf | |||||
| * @param dataPtr [IN/OUT] pointer to the user ptr | |||||
| * @param size [IN] the current private data area size, less than or equal to 96B | |||||
| * @param offset [IN] address offset, less than or equal to 96B | |||||
| * | |||||
| * @retval ACL_SUCCESS The function is successfully executed. | |||||
| * @retval OtherValues Failure | |||||
| * | |||||
| * @see acltdtGetBufUserData | |||||
| */ | |||||
| ACL_FUNC_VISIBILITY aclError acltdtGetBufUserData(const acltdtBuf buf, void *dataPtr, size_t size, size_t offset); | |||||
| /** | |||||
| * @ingroup AscendCL | |||||
| * @brief set private data buf address and size | |||||
| * | |||||
| * @param buf [OUT] acltdtBuf | |||||
| * @param dataPtr [IN] pointer to the user ptr | |||||
| * @param size [IN] the current private data area size, less than or equal to 96B | |||||
| * @param offset [IN] address offset, less than or equal to 96B | |||||
| * | |||||
| * @retval ACL_SUCCESS The function is successfully executed. | |||||
| * @retval OtherValues Failure | |||||
| * | |||||
| * @see acltdtSetBufUserData | |||||
| */ | |||||
| ACL_FUNC_VISIBILITY aclError acltdtSetBufUserData(acltdtBuf buf, const void *dataPtr, size_t size, size_t offset); | |||||
| /** | |||||
| * @ingroup AscendCL | |||||
| * @brief copy buf ref | |||||
| * | |||||
| * @param buf [IN] acltdtBuf | |||||
| * @param newBuf [OUT] Make a reference copy of the data area of buf and | |||||
| * create a new buf header pointing to the same data area | |||||
| * | |||||
| * @retval ACL_SUCCESS The function is successfully executed. | |||||
| * @retval OtherValues Failure | |||||
| * | |||||
| * @see acltdtCopyBufRef | |||||
| */ | |||||
| ACL_FUNC_VISIBILITY aclError acltdtCopyBufRef(const acltdtBuf buf, acltdtBuf *newBuf); | |||||
| /** | /** | ||||
| * @ingroup AscendCL | * @ingroup AscendCL | ||||
| * @brief Create the queue attr | * @brief Create the queue attr | ||||
| @@ -395,9 +395,6 @@ const std::string RECOMPUTE = "ge.recompute"; | |||||
| const char_t *const GRAPH_PARALLEL_OPTION_PATH = "ge.graphParallelOptionPath"; | const char_t *const GRAPH_PARALLEL_OPTION_PATH = "ge.graphParallelOptionPath"; | ||||
| // 1: Complete graph resource evaluation(Inclusion graph fusion optimization) | |||||
| // 2: Simplified graph resource evaluation(No graph fusion optimization) | |||||
| const char_t *const EVALUATE_GRAPH_RESOURCE_MODE = "ge.evaluateGraphResourceMode"; | |||||
| // Graph run mode | // Graph run mode | ||||
| enum GraphRunMode { PREDICTION = 0, TRAIN }; | enum GraphRunMode { PREDICTION = 0, TRAIN }; | ||||
| // Topo sorting mode | // Topo sorting mode | ||||
| @@ -518,8 +515,7 @@ const std::set<std::string> ir_builder_suppported_options = {INPUT_FORMAT, | |||||
| SHAPE_GENERALIZED_BUILD_MODE, | SHAPE_GENERALIZED_BUILD_MODE, | ||||
| MODIFY_MIXLIST, | MODIFY_MIXLIST, | ||||
| CUSTOMIZE_DTYPES, | CUSTOMIZE_DTYPES, | ||||
| BUILD_INNER_MODEL, | |||||
| EVALUATE_GRAPH_RESOURCE_MODE}; | |||||
| BUILD_INNER_MODEL}; | |||||
| // for interface: aclgrphParse | // for interface: aclgrphParse | ||||
| const std::set<std::string> ir_parser_suppported_options = { | const std::set<std::string> ir_parser_suppported_options = { | ||||
| @@ -88,6 +88,7 @@ typedef enum { | |||||
| HCCL_DATA_TYPE_UINT16 = 8, /**< uint16 */ | HCCL_DATA_TYPE_UINT16 = 8, /**< uint16 */ | ||||
| HCCL_DATA_TYPE_UINT32 = 9, /**< uint32 */ | HCCL_DATA_TYPE_UINT32 = 9, /**< uint32 */ | ||||
| HCCL_DATA_TYPE_FP64 = 10, /**< fp64 */ | HCCL_DATA_TYPE_FP64 = 10, /**< fp64 */ | ||||
| HCCL_DATA_TYPE_BFP16 = 11, /**< bfp16 */ | |||||
| HCCL_DATA_TYPE_RESERVED /**< reserved */ | HCCL_DATA_TYPE_RESERVED /**< reserved */ | ||||
| } HcclDataType; | } HcclDataType; | ||||
| @@ -178,16 +178,16 @@ | |||||
| } | } | ||||
| #define GE_ERRORLOG_AND_ERRORMSG(_status, errormsg) \ | #define GE_ERRORLOG_AND_ERRORMSG(_status, errormsg) \ | ||||
| { \ | |||||
| do { \ | |||||
| GELOGE((_status), "[Check][InnerData]%s", (errormsg)); \ | GELOGE((_status), "[Check][InnerData]%s", (errormsg)); \ | ||||
| REPORT_INNER_ERROR("E19999", "%s", (errormsg)); \ | REPORT_INNER_ERROR("E19999", "%s", (errormsg)); \ | ||||
| } | |||||
| } while (false) | |||||
| #define GE_WARNINGLOG_AND_ERRORMSG(errormsg) \ | #define GE_WARNINGLOG_AND_ERRORMSG(errormsg) \ | ||||
| { \ | |||||
| do { \ | |||||
| GELOGW("%s", (errormsg)); \ | GELOGW("%s", (errormsg)); \ | ||||
| ErrorManager::GetInstance().ATCReportErrMessage("E10052", {"reason"}, {(errormsg)}); \ | ErrorManager::GetInstance().ATCReportErrMessage("E10052", {"reason"}, {(errormsg)}); \ | ||||
| } | |||||
| } while (false) | |||||
| #define GE_CHK_LOG_AND_ERRORMSG(expr, _status, errormsg) \ | #define GE_CHK_LOG_AND_ERRORMSG(expr, _status, errormsg) \ | ||||
| do { \ | do { \ | ||||
| @@ -68,6 +68,8 @@ const char_t *const GE_OPTION_EXEC_PLACEMENT = "ge.exec.placement"; | |||||
| const std::string kTaskTypeAicore = "AI_CORE"; | const std::string kTaskTypeAicore = "AI_CORE"; | ||||
| const std::string kTaskTypeAicpu = "AI_CPU"; | const std::string kTaskTypeAicpu = "AI_CPU"; | ||||
| const std::string kTaskTypeWriteBackData = "WRITE_BACK"; | |||||
| const std::string kTaskTypeInvalidData = "INVALID"; | |||||
| const std::string kTaskTypeInvalid = "TASK_TYPE_INVALID"; | const std::string kTaskTypeInvalid = "TASK_TYPE_INVALID"; | ||||
| const std::string kTaskTypeFftsPlus = "FFTS_PLUS"; | const std::string kTaskTypeFftsPlus = "FFTS_PLUS"; | ||||
| const std::string kEngineNameVectorCore = "VectorEngine"; | const std::string kEngineNameVectorCore = "VectorEngine"; | ||||
| @@ -381,5 +383,9 @@ struct ModelQueueParam { | |||||
| std::vector<uint32_t> input_queues; | std::vector<uint32_t> input_queues; | ||||
| std::vector<uint32_t> output_queues; | std::vector<uint32_t> output_queues; | ||||
| }; | }; | ||||
| // internal options | |||||
| // 1: Graph resource evaluation does not limit model memory size. | |||||
| const char_t *const EVALUATE_GRAPH_RESOURCE_MODE = "ge.evaluateGraphResourceMode"; | |||||
| } // namespace ge | } // namespace ge | ||||
| #endif // INC_FRAMEWORK_COMMON_GE_TYPES_H_ | #endif // INC_FRAMEWORK_COMMON_GE_TYPES_H_ | ||||
| @@ -49,6 +49,10 @@ class GE_FUNC_VISIBILITY ModelHelper { | |||||
| is_offline_ = val; | is_offline_ = val; | ||||
| } | } | ||||
| void SetSharedWeightFlag(const bool val) { | |||||
| is_shared_weight_ = val; | |||||
| } | |||||
| bool GetModelType() const { | bool GetModelType() const { | ||||
| return is_unknown_shape_model_; | return is_unknown_shape_model_; | ||||
| } | } | ||||
| @@ -60,6 +64,7 @@ class GE_FUNC_VISIBILITY ModelHelper { | |||||
| bool is_assign_model_ = false; | bool is_assign_model_ = false; | ||||
| bool is_offline_ = true; | bool is_offline_ = true; | ||||
| bool is_unknown_shape_model_ = false; | bool is_unknown_shape_model_ = false; | ||||
| bool is_shared_weight_ = false; | |||||
| ModelFileHeader *file_header_ = nullptr; | ModelFileHeader *file_header_ = nullptr; | ||||
| GeModelPtr model_; | GeModelPtr model_; | ||||
| GeRootModelPtr root_model_; | GeRootModelPtr root_model_; | ||||
| @@ -20,10 +20,8 @@ | |||||
| #include "external/ge/ge_api_error_codes.h" | #include "external/ge/ge_api_error_codes.h" | ||||
| #include "runtime/base.h" | #include "runtime/base.h" | ||||
| /// | |||||
| /// @brief Output the profiling data of single operator in Pytorch, and does not support multithreading | /// @brief Output the profiling data of single operator in Pytorch, and does not support multithreading | ||||
| /// @return Status result | /// @return Status result | ||||
| /// | |||||
| GE_FUNC_VISIBILITY ge::Status ProfSetStepInfo(const uint64_t index_id, const uint16_t tag_id, rtStream_t const stream); | GE_FUNC_VISIBILITY ge::Status ProfSetStepInfo(const uint64_t index_id, const uint16_t tag_id, rtStream_t const stream); | ||||
| GE_FUNC_VISIBILITY ge::Status ProfGetDeviceFormGraphId(const uint32_t graph_id, uint32_t &device_id); | GE_FUNC_VISIBILITY ge::Status ProfGetDeviceFormGraphId(const uint32_t graph_id, uint32_t &device_id); | ||||
| @@ -1,5 +1,5 @@ | |||||
| /** | /** | ||||
| * Copyright 2021 Huawei Technologies Co., Ltd | |||||
| * Copyright (c) Huawei Technologies Co., Ltd. 2021. All rights reserved. | |||||
| * | * | ||||
| * Licensed under the Apache License, Version 2.0 (the "License"); | * Licensed under the Apache License, Version 2.0 (the "License"); | ||||
| * you may not use this file except in compliance with the License. | * you may not use this file except in compliance with the License. | ||||
| @@ -39,12 +39,12 @@ enum class ccStatus_t { | |||||
| enum class ccKernelType { | enum class ccKernelType { | ||||
| CCE_AI_CORE = 0, /* cce aicore */ | CCE_AI_CORE = 0, /* cce aicore */ | ||||
| CCE_AI_CPU = 1, /* cce aicpu */ | CCE_AI_CPU = 1, /* cce aicpu */ | ||||
| TE = 2, /* te operator*/ | |||||
| TE = 2, /* te operator */ | |||||
| CUSTOMIZED = 3, /* customized operator */ | CUSTOMIZED = 3, /* customized operator */ | ||||
| TE_AI_CORE = 4, /* te aicore operator*/ | |||||
| TE_AI_CORE = 4, /* te aicore operator */ | |||||
| TE_AI_CPU = 5, /* te aicpu operator */ | TE_AI_CPU = 5, /* te aicpu operator */ | ||||
| AI_CPU = 6, /* aicpu */ | AI_CPU = 6, /* aicpu */ | ||||
| CUST_AI_CPU = 7, /* custom aicpu*/ | |||||
| CUST_AI_CPU = 7, /* custom aicpu */ | |||||
| HOST_CPU = 8, /* host cpu */ | HOST_CPU = 8, /* host cpu */ | ||||
| INVALID = 10000 /* unknown kernel type */ | INVALID = 10000 /* unknown kernel type */ | ||||
| }; | }; | ||||
| @@ -245,15 +245,12 @@ GE_FUNC_VISIBILITY std::string ToString(const std::vector<T> &v) { | |||||
| return ss.str(); | return ss.str(); | ||||
| } | } | ||||
| /// | |||||
| /// @ingroup: domi_common | /// @ingroup: domi_common | ||||
| /// @brief: get length of file | /// @brief: get length of file | ||||
| /// @param [in] input_file: path of file | /// @param [in] input_file: path of file | ||||
| /// @return int64_t: File length. If the file length fails to be obtained, the value -1 is returned. | /// @return int64_t: File length. If the file length fails to be obtained, the value -1 is returned. | ||||
| /// | |||||
| GE_FUNC_VISIBILITY extern int64_t GetFileLength(const std::string &input_file); | GE_FUNC_VISIBILITY extern int64_t GetFileLength(const std::string &input_file); | ||||
| /// | |||||
| /// @ingroup domi_common | /// @ingroup domi_common | ||||
| /// @brief Reads all data from a binary file. | /// @brief Reads all data from a binary file. | ||||
| /// @param [in] file_name path of file | /// @param [in] file_name path of file | ||||
| @@ -261,31 +258,23 @@ GE_FUNC_VISIBILITY extern int64_t GetFileLength(const std::string &input_file); | |||||
| /// @param [out] length Output memory size | /// @param [out] length Output memory size | ||||
| /// @return false fail | /// @return false fail | ||||
| /// @return true success | /// @return true success | ||||
| /// | |||||
| GE_FUNC_VISIBILITY bool ReadBytesFromBinaryFile(const char_t *const file_name, char_t **const buffer, int32_t &length); | GE_FUNC_VISIBILITY bool ReadBytesFromBinaryFile(const char_t *const file_name, char_t **const buffer, int32_t &length); | ||||
| /// | |||||
| /// @ingroup domi_common | /// @ingroup domi_common | ||||
| /// @brief Recursively Creating a Directory | /// @brief Recursively Creating a Directory | ||||
| /// @param [in] directory_path Path, which can be a multi-level directory. | /// @param [in] directory_path Path, which can be a multi-level directory. | ||||
| /// @return 0 success | /// @return 0 success | ||||
| /// @return -1 fail | /// @return -1 fail | ||||
| /// | |||||
| GE_FUNC_VISIBILITY extern int32_t CreateDirectory(const std::string &directory_path); | GE_FUNC_VISIBILITY extern int32_t CreateDirectory(const std::string &directory_path); | ||||
| /// | |||||
| /// @ingroup domi_common | /// @ingroup domi_common | ||||
| /// @brief Obtains the current time string. | /// @brief Obtains the current time string. | ||||
| /// @return Time character string in the format : %Y%m%d%H%M%S, eg: 20171011083555 | /// @return Time character string in the format : %Y%m%d%H%M%S, eg: 20171011083555 | ||||
| /// | |||||
| GE_FUNC_VISIBILITY std::string CurrentTimeInStr(); | GE_FUNC_VISIBILITY std::string CurrentTimeInStr(); | ||||
| /// | |||||
| /// @ingroup domi_common | /// @ingroup domi_common | ||||
| /// @brief Obtains the absolute time (timestamp) of the current system. | /// @brief Obtains the absolute time (timestamp) of the current system. | ||||
| /// @return Timestamp, in microseconds (US) | /// @return Timestamp, in microseconds (US) | ||||
| /// | |||||
| /// | |||||
| GE_FUNC_VISIBILITY uint64_t GetCurrentTimestamp(); | GE_FUNC_VISIBILITY uint64_t GetCurrentTimestamp(); | ||||
| /// | /// | ||||
| @@ -296,15 +285,12 @@ GE_FUNC_VISIBILITY uint64_t GetCurrentTimestamp(); | |||||
| /// | /// | ||||
| GE_FUNC_VISIBILITY uint32_t GetCurrentSecondTimestap(); | GE_FUNC_VISIBILITY uint32_t GetCurrentSecondTimestap(); | ||||
| /// | |||||
| /// @ingroup domi_common | /// @ingroup domi_common | ||||
| /// @brief Absolute path for obtaining files. | /// @brief Absolute path for obtaining files. | ||||
| /// @param [in] path of input file | /// @param [in] path of input file | ||||
| /// @param [out] Absolute path of a file. If the absolute path cannot be obtained, an empty string is returned | /// @param [out] Absolute path of a file. If the absolute path cannot be obtained, an empty string is returned | ||||
| /// | |||||
| GE_FUNC_VISIBILITY std::string RealPath(const char_t *path); | GE_FUNC_VISIBILITY std::string RealPath(const char_t *path); | ||||
| /// | |||||
| /// @ingroup domi_common | /// @ingroup domi_common | ||||
| /// @brief Check whether the specified input file path is valid. | /// @brief Check whether the specified input file path is valid. | ||||
| /// 1. The specified path cannot be empty. | /// 1. The specified path cannot be empty. | ||||
| @@ -312,23 +298,18 @@ GE_FUNC_VISIBILITY std::string RealPath(const char_t *path); | |||||
| /// 3. The file path exists and is readable. | /// 3. The file path exists and is readable. | ||||
| /// @param [in] file_path path of input file | /// @param [in] file_path path of input file | ||||
| /// @param [out] result | /// @param [out] result | ||||
| /// | |||||
| GE_FUNC_VISIBILITY bool CheckInputPathValid(const std::string &file_path, const std::string &atc_param = ""); | GE_FUNC_VISIBILITY bool CheckInputPathValid(const std::string &file_path, const std::string &atc_param = ""); | ||||
| /// | |||||
| /// @ingroup domi_common | /// @ingroup domi_common | ||||
| /// @brief Checks whether the specified output file path is valid. | /// @brief Checks whether the specified output file path is valid. | ||||
| /// @param [in] file_path path of output file | /// @param [in] file_path path of output file | ||||
| /// @param [out] result | /// @param [out] result | ||||
| /// | |||||
| GE_FUNC_VISIBILITY bool CheckOutputPathValid(const std::string &file_path, const std::string &atc_param = ""); | GE_FUNC_VISIBILITY bool CheckOutputPathValid(const std::string &file_path, const std::string &atc_param = ""); | ||||
| /// | |||||
| /// @ingroup domi_common | /// @ingroup domi_common | ||||
| /// @brief Check whether the file path meets the whitelist verification requirements. | /// @brief Check whether the file path meets the whitelist verification requirements. | ||||
| /// @param [in] str file path | /// @param [in] str file path | ||||
| /// @param [out] result | /// @param [out] result | ||||
| /// | |||||
| GE_FUNC_VISIBILITY bool ValidateStr(const std::string &file_path, const std::string &mode); | GE_FUNC_VISIBILITY bool ValidateStr(const std::string &file_path, const std::string &mode); | ||||
| GE_FUNC_VISIBILITY Status ConvertToInt32(const std::string &str, int32_t &val); | GE_FUNC_VISIBILITY Status ConvertToInt32(const std::string &str, int32_t &val); | ||||
| @@ -27,6 +27,10 @@ | |||||
| namespace gert { | namespace gert { | ||||
| class VISIBILITY_EXPORT ShapeRange { | class VISIBILITY_EXPORT ShapeRange { | ||||
| public: | public: | ||||
| ShapeRange() = default; | |||||
| ShapeRange(const Shape &min_shape, const Shape &max_shape); | |||||
| bool operator==(const ShapeRange &other) const; | |||||
| const Shape &GetMin() const; | const Shape &GetMin() const; | ||||
| const Shape &GetMax() const; | const Shape &GetMax() const; | ||||
| Shape &MutableMin(); | Shape &MutableMin(); | ||||
| @@ -76,6 +80,9 @@ class VISIBILITY_EXPORT ModelDesc { | |||||
| const ModelIoDesc *GetOutputDesc(size_t index) const; | const ModelIoDesc *GetOutputDesc(size_t index) const; | ||||
| const ModelIoDesc *GetAllOutputsDesc(size_t &output_num) const; | const ModelIoDesc *GetAllOutputsDesc(size_t &output_num) const; | ||||
| size_t GetInputNum() const; | |||||
| size_t GetOutputNum() const; | |||||
| ModelIoDesc *MutableInputDesc(size_t index); | ModelIoDesc *MutableInputDesc(size_t index); | ||||
| ModelIoDesc *MutableOutputDesc(size_t index); | ModelIoDesc *MutableOutputDesc(size_t index); | ||||
| ModelIoDesc *AllMutableIoDesc(size_t &input_num, size_t &output_num); | ModelIoDesc *AllMutableIoDesc(size_t &input_num, size_t &output_num); | ||||
| @@ -1 +1 @@ | |||||
| Subproject commit 03482feb52fd7cc8544231f32891c86db3bc91a2 | |||||
| Subproject commit ed43bd5a956c70e85e6f9d0a8f2277691a5ce4a2 | |||||
| @@ -1,5 +1,5 @@ | |||||
| /** | /** | ||||
| * Copyright 2019-2020 Huawei Technologies Co., Ltd | |||||
| * Copyright (C) Huawei Technologies Co., Ltd. 2019-2022. All rights reserved. | |||||
| * | * | ||||
| * Licensed under the Apache License, Version 2.0 (the "License"); | * Licensed under the Apache License, Version 2.0 (the "License"); | ||||
| * you may not use this file except in compliance with the License. | * you may not use this file except in compliance with the License. | ||||
| @@ -13,8 +13,8 @@ | |||||
| * See the License for the specific language governing permissions and | * See the License for the specific language governing permissions and | ||||
| * limitations under the License. | * limitations under the License. | ||||
| */ | */ | ||||
| #ifndef AICPU_ENGINE_H__ | |||||
| #define AICPU_ENGINE_H__ | |||||
| #ifndef AICPU_ENGINE_H | |||||
| #define AICPU_ENGINE_H | |||||
| #include <stdint.h> | #include <stdint.h> | ||||
| @@ -23,16 +23,16 @@ extern "C" { | |||||
| #endif | #endif | ||||
| typedef enum { | typedef enum { | ||||
| AE_STATUS_SUCCESS = 0, | |||||
| AE_STATUS_BAD_PARAM = 1, | |||||
| AE_STATUS_OPEN_SO_FAILED = 2, | |||||
| AE_STATUS_GET_KERNEL_NAME_FAILED = 3, | |||||
| AE_STATUS_INNER_ERROR = 4, | |||||
| AE_STATUS_KERNEL_API_INNER_ERROR = 5, | |||||
| AE_STATUS_END_OF_SEQUENCE = 6, | |||||
| AE_STATUS_DUMP_FAILED = 7, | |||||
| AE_STATUS_TASK_WAIT = 101, | |||||
| AE_STATUS_RESERVED | |||||
| AE_STATUS_SUCCESS = 0, | |||||
| AE_STATUS_BAD_PARAM = 1, | |||||
| AE_STATUS_OPEN_SO_FAILED = 2, | |||||
| AE_STATUS_GET_KERNEL_NAME_FAILED = 3, | |||||
| AE_STATUS_INNER_ERROR = 4, | |||||
| AE_STATUS_KERNEL_API_INNER_ERROR = 5, | |||||
| AE_STATUS_END_OF_SEQUENCE = 6, | |||||
| AE_STATUS_DUMP_FAILED = 7, | |||||
| AE_STATUS_TASK_WAIT = 101, | |||||
| AE_STATUS_RESERVED | |||||
| } aeStatus_t; | } aeStatus_t; | ||||
| /** | /** | ||||
| @@ -59,4 +59,4 @@ aeStatus_t aeBatchLoadKernelSo(const uint32_t loadSoNum, const char *soPaths[], | |||||
| } | } | ||||
| #endif | #endif | ||||
| #endif // AICPU_ENGINE_H__ | |||||
| #endif // AICPU_ENGINE_H | |||||
| @@ -293,6 +293,66 @@ REG_OP(AutoBatch) | |||||
| .ATTR(padding, Bool, false) | .ATTR(padding, Bool, false) | ||||
| .ATTR(slide_stride, Int, 0) | .ATTR(slide_stride, Int, 0) | ||||
| .OP_END_FACTORY_REG(AutoBatch) | .OP_END_FACTORY_REG(AutoBatch) | ||||
| /** | |||||
| * @brief YUVToRGB | |||||
| * @par Inputs: | |||||
| * @li x: A 4-D uint8 Tensor. | |||||
| * Must set the format, supported format list ["NYUV"]. | |||||
| * @li matrix: A 1-D float tensor of 2x3x3 elements | |||||
| * @par Outputs: | |||||
| * @li y: A 4-D uint8 Tensor. | |||||
| * Must set the format, supported format list ["NCHW, NHWC"]. | |||||
| * @par Attributes: | |||||
| * @li matrix_type: An Int attr, Defaults to 0. | |||||
| * support list [ 0: CSC_MATRIX_BT601_WIDE, | |||||
| * 1: CSC_MATRIX_BT601_NARROW, | |||||
| * 2: CSC_MATRIX_BT709_WIDE, | |||||
| * 3: CSC_MATRIX_BT709_NARROW, | |||||
| * 4: CSC_MATRIX_BT2020_WIDE, | |||||
| * 5: CSC_MATRIX_BT2020_NARROW, | |||||
| * 6: CSC_MATRIX_USR_DEFINE ] | |||||
| * @li rb_swap: An Int attr, Defaults to 0. | |||||
| * support list [ 0: RGB, 1: BGR ] | |||||
| * @attention Constraints: | |||||
| * @li Only support in dvpp | |||||
| */ | |||||
| REG_OP(YUVToRGB) | |||||
| .INPUT(x, TensorType({DT_UINT8})) | |||||
| .OPTIONAL_INPUT(matrix, TensorType({DT_FLOAT})) | |||||
| .OUTPUT(y, TensorType({DT_UINT8})) | |||||
| .ATTR(matrix_type, Int, 0) | |||||
| .ATTR(rb_swap, Int, 0) | |||||
| .OP_END_FACTORY_REG(YUVToRGB) | |||||
| /** | |||||
| * @brief DecodeJpegPre | |||||
| * @par Inputs: | |||||
| * @li contents: A Tensor of type string. 0-D. The JPEG-encoded image. | |||||
| * @par Outputs: | |||||
| * @li dvpp_support: indicates if the dvpp support this jpeg image decode. | |||||
| * @par Attributes: | |||||
| * @li w_range: An required listInt contains width [min, max]. | |||||
| * @li h_range: An required listInt contains height [min, max]. | |||||
| * @attention Constraints: | |||||
| * @li Only support in dvpp | |||||
| */ | |||||
| REG_OP(DecodeJpegPre) | |||||
| .INPUT(contents, TensorType({DT_STRING})) | |||||
| .OUTPUT(dvpp_support, BOOL) | |||||
| .REQUIRED_ATTR(w_range, ListInt) | |||||
| .REQUIRED_ATTR(h_range, ListInt) | |||||
| .OP_END_FACTORY_REG(DecodeJpegPre) | |||||
| } // namespace ge | } // namespace ge | ||||
| #endif // OPS_BUILT_IN_OP_PROTO_INC_EXPERIMENT_OPS_H_ | #endif // OPS_BUILT_IN_OP_PROTO_INC_EXPERIMENT_OPS_H_ | ||||
| @@ -2444,5 +2444,34 @@ REG_OP(ExtractGlimpseV2) | |||||
| .ATTR(uniform_noise, Bool, true) | .ATTR(uniform_noise, Bool, true) | ||||
| .ATTR(noise, String, "uniform") | .ATTR(noise, String, "uniform") | ||||
| .OP_END_FACTORY_REG(ExtractGlimpseV2) | .OP_END_FACTORY_REG(ExtractGlimpseV2) | ||||
| /** | |||||
| * @brief NormalizeV2 \n | |||||
| * @par Inputs: | |||||
| * @li x: A 4-D Tensor. Must be one of the following types: uint8, float16, | |||||
| * float. Must set the format, supported format list ["NCHW, NHWC"]. | |||||
| * @li mean: A 1-D float tensor of "C(channel)" elements | |||||
| * @li variance: A 1-D float tensor of "C(channel)" elements \n | |||||
| * @par Outputs: | |||||
| * @li y: A 4-D Tensor. Must be one of the following types: float16, float. | |||||
| * Must set the format, supported format list ["NCHW, NHWC"]. \n | |||||
| * @par Attributes: | |||||
| * @li dtype: An Type attr, support type list [DT_FLOAT16, DT_FLOAT]. | |||||
| * Defaults to DT_FLOAT. \n | |||||
| * @par Third-party framework compatibility | |||||
| * Compatible with pytorch normalize operator. | |||||
| */ | |||||
| REG_OP(NormalizeV2) | |||||
| .INPUT(x, TensorType({DT_UINT8, DT_FLOAT16, DT_FLOAT})) | |||||
| .INPUT(mean, TensorType({DT_FLOAT})) | |||||
| .INPUT(variance, TensorType({DT_FLOAT})) | |||||
| .OUTPUT(y, TensorType({DT_FLOAT16, DT_FLOAT})) | |||||
| .ATTR(dtype, Type, DT_FLOAT) | |||||
| .OP_END_FACTORY_REG(NormalizeV2) | |||||
| } // namespace ge | } // namespace ge | ||||
| #endif // OPS_BUILT_IN_OP_PROTO_INC_IMAGE_OPS_H_ | #endif // OPS_BUILT_IN_OP_PROTO_INC_IMAGE_OPS_H_ | ||||
| @@ -418,7 +418,7 @@ REG_OP(DepthToSpace) | |||||
| *@li The size of the first dimension of input "x" must be divisible by (block_size * block_size). | *@li The size of the first dimension of input "x" must be divisible by (block_size * block_size). | ||||
| *@li "crops" is a 4Dshape [batch, height, width, depth], height = height_pad - crop_top - crop_bottom, | *@li "crops" is a 4Dshape [batch, height, width, depth], height = height_pad - crop_top - crop_bottom, | ||||
| *width = width_pad - crop_left - crop_right. | *width = width_pad - crop_left - crop_right. | ||||
| *@li block_size > 2 | |||||
| *@li block_size >= 2 | |||||
| *@par Third-party framework compatibility | *@par Third-party framework compatibility | ||||
| * Compatible with the TensorFlow operator BatchToSpace. | * Compatible with the TensorFlow operator BatchToSpace. | ||||
| @@ -32,6 +32,7 @@ extern "C" { | |||||
| #define RT_MEMORY_TS_4G (0x40U) // Used for Ts memory(only 1951) | #define RT_MEMORY_TS_4G (0x40U) // Used for Ts memory(only 1951) | ||||
| #define RT_MEMORY_HOST (0x81U) // Memory on host | #define RT_MEMORY_HOST (0x81U) // Memory on host | ||||
| #define RT_MEMORY_SVM (0x90U) // Memory for SVM | #define RT_MEMORY_SVM (0x90U) // Memory for SVM | ||||
| #define RT_MEMORY_HOST_SVM (0x90U) // Memory for host SVM | |||||
| #define RT_MEMORY_RESERVED (0x100U) | #define RT_MEMORY_RESERVED (0x100U) | ||||
| #define RT_MEMORY_L1 (0x1U << 16U) | #define RT_MEMORY_L1 (0x1U << 16U) | ||||
| @@ -8,6 +8,9 @@ | |||||
| #ifndef MSPROFILER_API_PROF_ACL_API_H_ | #ifndef MSPROFILER_API_PROF_ACL_API_H_ | ||||
| #define MSPROFILER_API_PROF_ACL_API_H_ | #define MSPROFILER_API_PROF_ACL_API_H_ | ||||
| #include <cstdint> | |||||
| #include <cstddef> | |||||
| // DataTypeConfig | // DataTypeConfig | ||||
| #define PROF_ACL_API 0x00000001ULL | #define PROF_ACL_API 0x00000001ULL | ||||
| #define PROF_TASK_TIME 0x00000002ULL | #define PROF_TASK_TIME 0x00000002ULL | ||||
| @@ -83,9 +86,6 @@ constexpr uint64_t PROF_AICPU_MODEL_MASK = 0x4000000000000000ULL; | |||||
| #define MSVP_PROF_API __attribute__((visibility("default"))) | #define MSVP_PROF_API __attribute__((visibility("default"))) | ||||
| #endif | #endif | ||||
| #include <cstdint> | |||||
| #include <cstddef> | |||||
| namespace Msprofiler { | namespace Msprofiler { | ||||
| namespace Api { | namespace Api { | ||||
| /** | /** | ||||