Skip to content
体验新版
项目
组织
正在加载...
登录
切换导航
打开侧边栏
Greenplum
Opencv
提交
e3e1f704
O
Opencv
项目概览
Greenplum
/
Opencv
10 个月 前同步成功
通知
7
Star
0
Fork
0
代码
文件
提交
分支
Tags
贡献者
分支图
Diff
Issue
0
列表
看板
标记
里程碑
合并请求
0
DevOps
流水线
流水线任务
计划
Wiki
0
Wiki
分析
仓库
DevOps
项目成员
Pages
O
Opencv
项目概览
项目概览
详情
发布
仓库
仓库
文件
提交
分支
标签
贡献者
分支图
比较
Issue
0
Issue
0
列表
看板
标记
里程碑
合并请求
0
合并请求
0
Pages
DevOps
DevOps
流水线
流水线任务
计划
分析
分析
仓库分析
DevOps
Wiki
0
Wiki
成员
成员
收起侧边栏
关闭侧边栏
动态
分支图
创建新Issue
流水线任务
提交
Issue看板
体验新版 GitCode,发现更多精彩内容 >>
未验证
提交
e3e1f704
编写于
4月 24, 2023
作者:
A
Alexander Smorkalov
提交者:
GitHub
4月 24, 2023
浏览文件
操作
浏览文件
下载
差异文件
Merge pull request #23528 from WanliZhong:issue23278
DNN/CUDA: make 'abcd op 1b11' broadcast eltwise operator support cuda
上级
aa57833a
e4360294
变更
2
隐藏空白更改
内联
并排
Showing
2 changed file
with
20 addition
and
5 deletion
+20
-5
modules/dnn/perf/perf_layer.cpp
modules/dnn/perf/perf_layer.cpp
+12
-2
modules/dnn/src/layers/nary_eltwise_layers.cpp
modules/dnn/src/layers/nary_eltwise_layers.cpp
+8
-3
未找到文件。
modules/dnn/perf/perf_layer.cpp
浏览文件 @
e3e1f704
...
...
@@ -66,8 +66,13 @@ struct Layer_NaryEltwise : public TestBaseWithParam<tuple<Backend, Target> >
if
(
!
isRef
&&
backendId
==
DNN_BACKEND_CUDA
)
{
if
(
a_shape
!=
b_shape
)
throw
SkipTestException
(
"The test is skipped because inputs with different shapes are not supported."
);
if
(
a_shape
.
size
()
!=
b_shape
.
size
())
throw
SkipTestException
(
"The test is skipped because inputs with different shape size are not supported."
);
for
(
int
i
=
0
;
i
<
a_shape
.
size
();
i
++
)
if
(
a_shape
[
i
]
!=
b_shape
[
i
]
&&
a_shape
[
i
]
!=
1
&&
b_shape
[
i
]
!=
1
)
throw
SkipTestException
(
"The test is skipped because inputs are not supported."
);
if
(
nary_eltwise_cuda_deny_ops
.
find
(
op
)
!=
nary_eltwise_cuda_deny_ops
.
end
())
throw
SkipTestException
(
"The operator '"
+
op
+
"' is skipped because is not support with cuda currently."
);
}
...
...
@@ -215,6 +220,11 @@ PERF_TEST_P_(Layer_NaryEltwise, NHWC_C)
test_layer
({
N
,
H
,
W
,
C
},
{
1
,
C
},
"sum"
);
}
PERF_TEST_P_
(
Layer_NaryEltwise
,
NHWC_H
)
{
test_layer
({
N
,
H
,
W
,
C
},
{
1
,
H
,
1
,
1
},
"sum"
);
}
PERF_TEST_P_
(
Layer_Slice
,
YOLOv4_tiny_1
)
{
const
int
inputShape
[
4
]
=
{
1
,
64
,
104
,
104
};
...
...
modules/dnn/src/layers/nary_eltwise_layers.cpp
浏览文件 @
e3e1f704
...
...
@@ -673,12 +673,17 @@ public:
{
auto
context
=
reinterpret_cast
<
csl
::
CSLContext
*>
(
context_
);
auto
input_
wrapper
=
inputs
[
0
].
dynamicCast
<
CUDABackendWrapper
>
();
auto
input_
0_shape
=
inputs
[
0
].
dynamicCast
<
CUDABackendWrapper
>
()
->
getShape
();
for
(
int
i
=
1
;
i
<
inputs
.
size
();
i
++
)
{
auto
from_wrapper
=
inputs
[
i
].
dynamicCast
<
CUDABackendWrapper
>
();
if
(
input_
wrapper
->
getShape
()
!=
from_wrapper
->
getShap
e
())
auto
input_i_shape
=
inputs
[
i
].
dynamicCast
<
CUDABackendWrapper
>
()
->
getShape
();
if
(
input_
0_shape
.
size
()
!=
input_i_shape
.
siz
e
())
return
Ptr
<
BackendNode
>
();
// check if the shape can be supported by `eltwise_ops.cu`, or return the default BackendNode
for
(
int
j
=
0
;
j
<
input_0_shape
.
size
();
j
++
)
if
(
input_0_shape
[
j
]
!=
input_i_shape
[
j
]
&&
input_0_shape
[
j
]
!=
1
&&
input_i_shape
[
j
]
!=
1
)
return
Ptr
<
BackendNode
>
();
}
cuda4dnn
::
EltwiseOpType
op_
=
cuda4dnn
::
EltwiseOpType
::
SUM
;
...
...
编辑
预览
Markdown
is supported
0%
请重试
或
添加新附件
.
添加附件
取消
You are about to add
0
people
to the discussion. Proceed with caution.
先完成此消息的编辑!
取消
想要评论请
注册
或
登录