Skip to content
体验新版
项目
组织
正在加载...
登录
切换导航
打开侧边栏
Xiaomi
Mace
提交
bc01a8e0
Mace
项目概览
Xiaomi
/
Mace
通知
106
Star
40
Fork
27
代码
文件
提交
分支
Tags
贡献者
分支图
Diff
Issue
0
列表
看板
标记
里程碑
合并请求
0
DevOps
流水线
流水线任务
计划
Wiki
0
Wiki
分析
仓库
DevOps
项目成员
Pages
Mace
项目概览
项目概览
详情
发布
仓库
仓库
文件
提交
分支
标签
贡献者
分支图
比较
Issue
0
Issue
0
列表
看板
标记
里程碑
合并请求
0
合并请求
0
Pages
DevOps
DevOps
流水线
流水线任务
计划
分析
分析
仓库分析
DevOps
Wiki
0
Wiki
成员
成员
收起侧边栏
关闭侧边栏
动态
分支图
创建新Issue
流水线任务
提交
Issue看板
体验新版 GitCode,发现更多精彩内容 >>
提交
bc01a8e0
编写于
6月 17, 2020
作者:
L
luxuhui
浏览文件
操作
浏览文件
下载
电子邮件补丁
差异文件
fix: fix the interface compatibility issue
N/A Signed-off-by:
N
Luxuhui
<
luxuhui@xiaomi.com
>
上级
d24a3ddd
变更
9
显示空白变更内容
内联
并排
Showing
9 changed file
with
56 addition
and
16 deletion
+56
-16
include/mace/public/mace.h
include/mace/public/mace.h
+6
-0
mace/core/runtime/apu/apu_wrapper.cc
mace/core/runtime/apu/apu_wrapper.cc
+4
-2
mace/core/runtime/hexagon/hexagon_dsp_wrapper.cc
mace/core/runtime/hexagon/hexagon_dsp_wrapper.cc
+5
-3
mace/core/runtime/hexagon/hexagon_hta_wrapper.cc
mace/core/runtime/hexagon/hexagon_hta_wrapper.cc
+6
-3
mace/core/workspace.cc
mace/core/workspace.cc
+8
-4
mace/libmace/BUILD.bazel
mace/libmace/BUILD.bazel
+6
-0
mace/libmace/mace.cc
mace/libmace/mace.cc
+7
-0
mace/mace.bzl
mace/mace.bzl
+2
-2
third_party/rpcmem/BUILD.bazel
third_party/rpcmem/BUILD.bazel
+12
-2
未找到文件。
include/mace/public/mace.h
浏览文件 @
bc01a8e0
...
...
@@ -431,6 +431,12 @@ class MACE_API MaceEngine {
std
::
map
<
std
::
string
,
MaceTensor
>
*
outputs
,
RunMetadata
*
run_metadata
);
// @Deprecated, will be removed in future version
MaceStatus
Init
(
const
NetDef
*
net_def
,
const
std
::
vector
<
std
::
string
>
&
input_nodes
,
const
std
::
vector
<
std
::
string
>
&
output_nodes
,
const
unsigned
char
*
model_data
);
private:
class
Impl
;
std
::
unique_ptr
<
Impl
>
impl_
;
...
...
mace/core/runtime/apu/apu_wrapper.cc
浏览文件 @
bc01a8e0
...
...
@@ -106,8 +106,10 @@ bool ApuWrapper::Init(const NetDef &net_def,
}
const
auto
tensor_end
=
const_tensor
.
offset
()
+
const_tensor
->
data_size
()
*
GetEnumTypeSize
(
const_tensor
.
data_type
());
if
(
model_data_size
>=
0
)
{
MACE_CHECK
(
tensor_end
<=
model_data_size
,
"tensor_end ("
,
tensor_end
,
") should <= "
,
model_data_size
);
}
tensor
.
data_buf
=
const_cast
<
unsigned
char
*>
(
model_data
+
const_tensor
.
offset
());
const_tensors
.
push_back
(
tensor
);
...
...
mace/core/runtime/hexagon/hexagon_dsp_wrapper.cc
浏览文件 @
bc01a8e0
...
...
@@ -189,10 +189,12 @@ bool HexagonDSPWrapper::SetupGraph(const NetDef &net_def,
data
=
const_cast
<
unsigned
char
*>
(
model_data
+
const_tensor
.
offset
());
data_len
=
const_tensor
.
data_size
()
*
GetEnumTypeSize
(
const_tensor
.
data_type
());
if
(
model_data_size
>=
0
)
{
MACE_CHECK
(
const_tensor
.
offset
()
+
data_len
<=
model_data_size
,
"tensor end ("
,
const_tensor
.
offset
()
+
data_len
,
") should <= "
,
model_data_size
);
}
}
MACE_CHECK
(
hexagon_nn_append_const_node
(
nn_id_
,
node_id
(
const_tensor
.
node_id
()),
...
...
mace/core/runtime/hexagon/hexagon_hta_wrapper.cc
浏览文件 @
bc01a8e0
...
...
@@ -160,10 +160,13 @@ bool HexagonHTAWrapper::SetupGraph(const NetDef &net_def,
const_cast
<
unsigned
char
*>
(
model_data
+
const_tensor
.
offset
());
const_node_data_len
=
const_tensor
.
data_size
()
*
GetEnumTypeSize
(
const_tensor
.
data_type
());
MACE_CHECK
(
const_tensor
.
offset
()
+
const_node_data_len
<=
model_data_size
,
if
(
model_data_size
>=
0
)
{
MACE_CHECK
(
const_tensor
.
offset
()
+
const_node_data_len
<=
model_data_size
,
"tensor end ("
,
const_tensor
.
offset
()
+
const_node_data_len
,
") should <= "
,
model_data_size
);
}
}
hexagon_hta_nn_append_const_node
(
nn_id_
,
node_id
(
const_tensor
.
node_id
()),
...
...
mace/core/workspace.cc
浏览文件 @
bc01a8e0
...
...
@@ -123,8 +123,10 @@ MaceStatus Workspace::LoadModelTensor(const NetDef &net_def, Device *device,
MACE_LATENCY_LOGGER
(
1
,
"Load model tensors"
);
index_t
valid_data_size
=
GetModelValidSize
(
net_def
);
VLOG
(
3
)
<<
"Model valid data size: "
<<
valid_data_size
;
if
(
model_data_size
>=
0
)
{
MACE_CHECK
(
valid_data_size
<=
model_data_size
,
valid_data_size
,
"should be smaller than"
,
model_data_size
);
}
const
DeviceType
device_type
=
device
->
device_type
();
if
(
valid_data_size
>
0
)
{
...
...
@@ -170,8 +172,10 @@ MaceStatus Workspace::LoadModelTensor(const NetDef &net_def, Device *device,
"Tensor's data_size not equal with the shape"
);
const
index_t
tensor_end
=
const_tensor
.
offset
()
+
tensor
->
size
()
*
GetEnumTypeSize
(
const_tensor
.
data_type
());
if
(
model_data_size
>=
0
)
{
MACE_CHECK
(
tensor_end
<=
model_data_size
,
"tensor_end ("
,
tensor_end
,
") should <= "
,
model_data_size
);
}
if
(
device_type
==
DeviceType
::
CPU
&&
const_tensor
.
data_type
()
==
DataType
::
DT_HALF
)
{
...
...
mace/libmace/BUILD.bazel
浏览文件 @
bc01a8e0
...
...
@@ -119,6 +119,8 @@ genrule(
])
+
if_opencl_enabled
([
"//mace/ops:opencl_kernels"
,
"//mace/codegen:generated_opencl"
,
])
+
if_rpcmem_enabled
([
"//third_party/rpcmem:rpcmem.a"
,
])
+
if_neon_enabled
([
"//mace/ops:arm_neon_kernels"
,
]),
...
...
@@ -165,6 +167,10 @@ genrule(
"$(locations //mace/codegen:generated_opencl) "
,
default_value
=
""
,
)
+
if_rpcmem_enabled
(
"$(locations //third_party/rpcmem:rpcmem.a) "
,
default_value
=
""
,
)
+
"$@ "
+
"$$tmp_mri_file);"
+
if_darwin
(
...
...
mace/libmace/mace.cc
浏览文件 @
bc01a8e0
...
...
@@ -1032,6 +1032,13 @@ MaceStatus MaceEngine::Run(const std::map<std::string, MaceTensor> &inputs,
return
impl_
->
Run
(
inputs
,
outputs
,
nullptr
);
}
MaceStatus
MaceEngine
::
Init
(
const
NetDef
*
net_def
,
const
std
::
vector
<
std
::
string
>
&
input_nodes
,
const
std
::
vector
<
std
::
string
>
&
output_nodes
,
const
unsigned
char
*
model_data
)
{
return
impl_
->
Init
(
net_def
,
input_nodes
,
output_nodes
,
model_data
,
-
1
);
}
MaceStatus
CreateMaceEngineFromProto
(
const
unsigned
char
*
model_graph_proto
,
const
size_t
model_graph_proto_size
,
...
...
mace/mace.bzl
浏览文件 @
bc01a8e0
...
...
@@ -109,10 +109,10 @@ def if_bfloat16_enabled(a):
"//conditions:default"
:
[],
})
def
if_rpcmem_enabled
(
a
):
def
if_rpcmem_enabled
(
a
,
default_value
=
[]
):
return
select
({
"//mace:rpcmem_enabled"
:
a
,
"//conditions:default"
:
[]
,
"//conditions:default"
:
default_value
,
})
def
mace_version_genrule
():
...
...
third_party/rpcmem/BUILD.bazel
浏览文件 @
bc01a8e0
# These files are generated fron rpcmem project
package
(
default_visibility
=
[
"//visibility:public"
],
)
licenses
([
"notice"
])
...
...
@@ -10,13 +13,20 @@ load(
"if_android_armv7"
,
)
cc_library
(
name
=
"rpcmem"
,
filegroup
(
name
=
"rpcmem
.a
"
,
srcs
=
if_android_armv7
([
"armeabi-v7a/rpcmem.a"
,
])
+
if_android_arm64
([
"arm64-v8a/rpcmem.a"
,
]),
)
cc_library
(
name
=
"rpcmem"
,
srcs
=
[
":rpcmem.a"
,
],
hdrs
=
[
"rpcmem.h"
,
],
...
...
编辑
预览
Markdown
is supported
0%
请重试
或
添加新附件
.
添加附件
取消
You are about to add
0
people
to the discussion. Proceed with caution.
先完成此消息的编辑!
取消
想要评论请
注册
或
登录