/**
* Copyright 2019-2020 Huawei Technologies Co., Ltd
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
*/
#ifndef DNN_OP_H__
#define DNN_OP_H__
#include "cce/blas_struct.h"
#include "cce/cce.h"
#include "cce/customize.h"
namespace cce {
/**
* @ingroup dnn
* @brief create descriptor of parameters for exponential function
* @param [in] point to descriptor of parameters for exponential function
* @return ccStatus_t
*/
ccStatus_t ccCreateExpDescriptor(ccExpDescriptor_t *expDesc);
/**
* @ingroup dnn
* @brief create descriptor of parameters for logarithmic function
* @param [in] point to descriptor of parameters for logarithmic function
* @return ccStatus_t
*/
ccStatus_t ccCreateLogDescriptor(ccLogDescriptor_t *logDesc);
/**
* @ingroup dnn
* @brief create descriptor of parameters for pow function
* @param [in] point to descriptor of parameters for pow function
* @return ccStatus_t
*/
ccStatus_t ccCreatePowDescriptor(ccPowDescriptor_t *powDesc);
/**
* @ingroup dnn
* @brief destroy descriptor of parameters for exponential function
* @param [in] point to descriptor of parameters for exponential function
* @return ccStatus_t
*/
ccStatus_t ccDestroyExpDescriptor(ccExpDescriptor_t *expDesc);
/**
* @ingroup dnn
* @brief destroy descriptor of parameters for logarithmic function
* @param [in] point to descriptor of parameters for exponential function
* @return ccStatus_t
*/
ccStatus_t ccDestroyLogDescriptor(ccLogDescriptor_t *logDesc);
/**
* @ingroup dnn
* @brief destroy descriptor of parameters for pow function
* @param [in] point to descriptor of parameters for pow function
* @return ccStatus_t
*/
ccStatus_t ccDestroyPowDescriptor(ccPowDescriptor_t *powDesc);
/**
* @ingroup dnn
* @brief create descriptor of parameters for NonMaxSuppress function
* @param [in] point to descriptor of parameters for NonMaxSuppress function
* @return ccStatus_t
*/
ccStatus_t ccCreateNonMaxSuppressionDescriptor(ccNonMaxSuppressionDescriptor_t *nonMaxSuppressionDesc);
/**
* @ingroup dnn
* @brief destroy descriptor of parameters for NonMaxSuppress function
* @param [in] point to descriptor of parameters for NonMaxSuppress function
* @return ccStatus_t
*/
ccStatus_t ccDestroyNonMaxSuppressionDescriptor(ccNonMaxSuppressionDescriptor_t *nonMaxSuppressionDesc);
ccStatus_t ccTransTensorIncertPads(const ccTensorDescriptor_t xDesc, const void *x, const ccTensorDescriptor_t yDesc,
void *y, uint32_t ySizeInBytes, uint32_t boxTypeNum, bool interweave,
bool background, uint32_t boxTypeNumMax = 0, bool isScaleVec = false);
ccStatus_t ccTransTensorIncertPadsInt32(const ccTensorDescriptor_t xDesc, const void *x,
const ccTensorDescriptor_t yDesc, void *y, uint32_t ySizeInBytes,
uint32_t boxTypeNum, bool interweave, bool background);
ccStatus_t ccTransMskrcnnBbox(const ccTensorDescriptor_t xDesc, const void *x, const ccTensorDescriptor_t yDesc,
void *y, uint32_t ySizeInBytes, uint32_t boxTypeNum);
ccStatus_t ccSetTensorDescriptorQuantizeParam(ccTensorDescriptor_t tensorDesc,
const ccVecQuantizePara_t *vecQuantizePara);
ccStatus_t ccGetTensorDescriptorQuantizeParam(const ccTensorDescriptor_t tensorDesc,
ccVecQuantizePara_t *vecQuantizePara);
/**
* @ingroup dnn
* @brief init tensor to 4d filter
* @param [in|out] filterDesc descriptor of filter
* @param [in] format format of filter
* @param [in] dataType data type in device
* @param [in] k number of output feature maps
* @param [in] c number of input feature maps
* @param [in] h height of filter
* @param [in] w width of filter
* @return ccStatus_t
*/
ccStatus_t ccSetFilter4dDescriptor(ccFilterDescriptor_t filterDesc, ccTensorFormat_t format, ccDataType_t dataType,
int32_t k, int32_t c, int32_t h, int32_t w);
ccStatus_t ccSetFilter6dDescriptor(ccTensorDescriptor_t filterDesc, ccTensorFormat_t format, ccDataType_t dataType,
int32_t c1, int32_t h, int32_t w, int32_t n, int32_t co, int32_t c0);
/**
* @ingroup dnn
* @brief init tensor to Fractal filter
* @param [in|out] filterDesc descriptor of filter
* @param [in] format format of filter
* @param [in] dataType data type in device
* @param [in] k number of output feature maps
* @param [in] c number of input feature maps
* @param [in] h height of filter
* @param [in] w width of filter
* @return ccStatus_t
*/
ccStatus_t ccSetFilterFractalDescriptor(ccFilterDescriptor_t filterDesc, ccTensorFormat_t format, ccDataType_t dataType,
int32_t k, int32_t c, int32_t h, int32_t w);
/**
* @ingroup dnn
* @brief init tensor to Fractal filter
* @param [in|out] filterDesc descriptor of filter
* @param [in] format format of filter
* @param [in] dataType data type in device
* @param [in] k number of output feature maps
* @param [in] c number of input feature maps
* @param [in] h height of filter
* @param [in] w width of filter
* @return ccStatus_t
*/
ccStatus_t ccSetInt8Filter4dDescriptor(ccFilterDescriptor_t filterDesc, ccTensorFormat_t format, ccDataType_t dataType,
int32_t k, int32_t c, int32_t h, int32_t w, ccDataType_t outputDataType);
/**
* @ingroup dnn
* @brief read 4d filter
* @param [in] filterDesc descriptor of filter
* @param [in|out] format point to format of filter
* @param [in|out] dataType point to data type in device
* @param [in|out] k point to number of output feature maps
* @param [in|out] c point to number of input feature maps
* @param [in|out] h point to height of filter
* @param [in|out] w point to width of filter
* @return ccStatus_t
*/
ccStatus_t ccGetFilterFractalDescriptor(const ccFilterDescriptor_t filterDesc, ccTensorFormat_t *format,
ccDataType_t *dataType, int32_t *k, int32_t *c, int32_t *h, int32_t *w);
/**
* @ingroup dnn
* @brief get data size of 4d filter
* @param [in] filterDesc descriptor of filter
* @param [in|out] size point to data size
* @return ccStatus_t
*/
ccStatus_t ccGetDepthWiseConvFilterSizeInBytes(const ccFilterDescriptor_t filterDesc, int32_t groupNum, uint32_t *size);
/**
* @ingroup dnn
* @brief trans group conv filter to fractal format
* @param [in] filterSrcInfo descriptor of input filter
* @param [in] filterSrc input data pointer
* @param [in] filterDstInfo descriptor of output filter
* @param [in|out] filterDst output data pointer
* @param [in] group group size
* @return ccStatus_t
*/
ccStatus_t ccTransGroupConvFilter(ccFilterDescriptor_t filterSrcInfo, const void *filterSrc,
ccFilterDescriptor_t filterDstInfo, void *filterDst, uint32_t group,
uint32_t dstSize);
/**
* @ingroup dnn
* @brief trans conv filter With BoxTypeNuM to fractal format
* @param [in] filterSrcInfo descriptor of input filter
* @param [in] filterSrc input data pointer
* @param [in] filterDstInfo descriptor of output filter
* @param [in|out] filterDst output data pointer
* @param [in] ySizeInBytes the malloc memory size
* @param [in] boxTypeNum the num of boxType
* @param [in] inter
没有合适的资源?快使用搜索试试~ 我知道了~
前端和昇腾处理器之间的连接链路模块
共976个文件
h:964个
md:6个
third_party_open_source_software_notice:1个
1.该资源内容由用户上传,如若侵权请联系客服进行举报
2.虚拟产品一经售出概不退款(资源遇到问题,请及时私信上传者)
2.虚拟产品一经售出概不退款(资源遇到问题,请及时私信上传者)
版权申诉
0 下载量 176 浏览量
2023-10-16
10:06:45
上传
评论
收藏 1.88MB ZIP 举报
温馨提示
图引擎模块(GE)是MindSpore的一个子模块,其代码由C++实现,位于前端模块ME和底层硬件之间,起到承接作用。图引擎模块以ME下发的图作为输入,然后进行一系列的深度图优化操作,最后输出一张可以在底层硬件上高效运行的图。GE针对昇腾AI处理器的硬件结构特点,做了特定的优化工作,以此来充分发挥出昇腾AI处理器的强大算力。在进行模型训练/推理时,GE会被自动调用而用户并不感知。GE主要由GE API和GE Core两部分组成
资源推荐
资源详情
资源评论
收起资源包目录
前端和昇腾处理器之间的连接链路模块 (976个子文件)
.clang-format 4KB
.gitignore 333B
.gitmodules 216B
dnn_op.h 223KB
dnn_op.h 223KB
elewise_calculation_ops.h 148KB
elewise_calculation_ops.h 148KB
experiment_ops.h 142KB
experiment_ops.h 142KB
nn_detect_ops.h 112KB
nn_detect_ops.h 112KB
nn_training_ops.h 107KB
nn_training_ops.h 107KB
selection_ops.h 105KB
selection_ops.h 105KB
image_ops.h 104KB
image_ops.h 104KB
data_flow_ops.h 95KB
data_flow_ops.h 95KB
acl_dvpp.h 93KB
acl_dvpp.h 93KB
nn_norm_ops.h 83KB
nn_norm_ops.h 83KB
rnn.h 83KB
rnn.h 83KB
nn_calculation_ops.h 78KB
nn_calculation_ops.h 78KB
nn_pooling_ops.h 77KB
nn_pooling_ops.h 77KB
matrix_calculation_ops.h 72KB
matrix_calculation_ops.h 72KB
array_ops.h 55KB
array_ops.h 55KB
math_ops.h 55KB
math_ops.h 55KB
reduce_ops.h 54KB
reduce_ops.h 54KB
acl_rt.h 50KB
acl_rt.h 50KB
acl_mdl.h 47KB
acl_mdl.h 47KB
transformation_ops.h 44KB
transformation_ops.h 44KB
sparse_ops.h 44KB
sparse_ops.h 44KB
nonlinear_fuc_ops.h 42KB
nonlinear_fuc_ops.h 42KB
status.h 42KB
status.h 42KB
parser_types.h 40KB
parser_types.h 40KB
math_util.h 39KB
math_util.h 39KB
kernel.h 38KB
kernel.h 38KB
types.h 37KB
types.h 37KB
random_ops.h 34KB
random_ops.h 34KB
string_ops.h 32KB
string_ops.h 32KB
ge_api_types.h 32KB
ge_api_types.h 32KB
nn_batch_norm_ops.h 29KB
nn_batch_norm_ops.h 29KB
mem.h 28KB
mem.h 28KB
dnn_base.h 27KB
dnn_base.h 27KB
rt_mem_queue.h 26KB
rt_mem_queue.h 26KB
mmpa_linux.h 23KB
mmpa_linux.h 23KB
acl_op.h 22KB
acl_op.h 22KB
acl_base.h 22KB
acl_base.h 22KB
mmpa_win.h 22KB
mmpa_win.h 22KB
pad_ops.h 20KB
pad_ops.h 20KB
acl_cblas.h 20KB
acl_cblas.h 20KB
global_profiler.h 19KB
global_profiler.h 19KB
fp16_t.h 19KB
fp16_t.h 19KB
linalg_ops.h 19KB
linalg_ops.h 19KB
stateless_random_ops.h 19KB
stateless_random_ops.h 19KB
rt_ffts_plus_define.h 18KB
rt_ffts_plus_define.h 18KB
hcom_ops.h 18KB
hcom_ops.h 18KB
slog.h 18KB
slog.h 18KB
acl_tdt_queue.h 18KB
acl_tdt_queue.h 18KB
split_combination_ops.h 17KB
共 976 条
- 1
- 2
- 3
- 4
- 5
- 6
- 10
资源评论
Java程序员-张凯
- 粉丝: 1w+
- 资源: 6702
上传资源 快速赚钱
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
最新资源
- 百度地图,显示闸站分布,以及切换闸站位置,上传闸站图片信息的cordova插件,包含百度地图和百度定位库文件
- 基于合泰单片机的智能夹球小车(esp8266代码+k210代码+合泰单片机代码)
- 一个天气查询的安卓APP
- 基于CC2530+DHT11温湿度传感器实现物联网多传感器火灾报警系统
- 基于51单片机的简易计算器 / 具有加减乘除四则运算功能
- 学校端午节比赛dwj-master.zip
- 基于qt实现简单的加减乘除四则运算
- python爬虫案例python-graphs.rar
- python爬虫案例python-graphics.rar
- python爬虫案例python-geometry.rar
资源上传下载、课程学习等过程中有任何疑问或建议,欢迎提出宝贵意见哦~我们会及时处理!
点击此处反馈
安全验证
文档复制为VIP权益,开通VIP直接复制
信息提交成功