Skip to content
体验新版
项目
组织
正在加载...
登录
切换导航
打开侧边栏
Greenplum
Opencv
提交
f378f029
O
Opencv
项目概览
Greenplum
/
Opencv
大约 1 年 前同步成功
通知
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,发现更多精彩内容 >>
未验证
提交
f378f029
编写于
10月 19, 2022
作者:
A
Alexander Smorkalov
提交者:
GitHub
10月 19, 2022
浏览文件
操作
浏览文件
下载
差异文件
Merge pull request #22652 from rogday:cuda_test_fixes
Address CUDA-related errors
上级
2c81cb2f
dd14cf6a
变更
3
隐藏空白更改
内联
并排
Showing
3 changed file
with
37 addition
and
11 deletion
+37
-11
modules/dnn/src/layers/elementwise_layers.cpp
modules/dnn/src/layers/elementwise_layers.cpp
+6
-6
modules/dnn/src/onnx/onnx_importer.cpp
modules/dnn/src/onnx/onnx_importer.cpp
+2
-0
modules/dnn/test/test_onnx_importer.cpp
modules/dnn/test/test_onnx_importer.cpp
+29
-5
未找到文件。
modules/dnn/src/layers/elementwise_layers.cpp
浏览文件 @
f378f029
...
...
@@ -1108,7 +1108,7 @@ struct CeilFunctor : public BaseDefaultFunctor<CeilFunctor>
bool
supportBackend
(
int
backendId
,
int
)
{
return
backendId
==
DNN_BACKEND_OPENCV
||
backendId
==
DNN_BACKEND_HALIDE
;
return
backendId
==
DNN_BACKEND_OPENCV
||
backendId
==
DNN_BACKEND_
CUDA
||
backendId
==
DNN_BACKEND_
HALIDE
;
}
inline
float
calculate
(
float
x
)
const
...
...
@@ -1143,7 +1143,7 @@ struct FloorFunctor : public BaseDefaultFunctor<FloorFunctor>
bool
supportBackend
(
int
backendId
,
int
)
{
return
backendId
==
DNN_BACKEND_OPENCV
||
backendId
==
DNN_BACKEND_HALIDE
;
return
backendId
==
DNN_BACKEND_OPENCV
||
backendId
==
DNN_BACKEND_
CUDA
||
backendId
==
DNN_BACKEND_
HALIDE
;
}
inline
float
calculate
(
float
x
)
const
...
...
@@ -1178,7 +1178,7 @@ struct LogFunctor : public BaseDefaultFunctor<LogFunctor>
bool
supportBackend
(
int
backendId
,
int
)
{
return
backendId
==
DNN_BACKEND_OPENCV
||
backendId
==
DNN_BACKEND_HALIDE
;
return
backendId
==
DNN_BACKEND_OPENCV
||
backendId
==
DNN_BACKEND_
CUDA
||
backendId
==
DNN_BACKEND_
HALIDE
;
}
inline
float
calculate
(
float
x
)
const
...
...
@@ -1213,7 +1213,7 @@ struct RoundFunctor : public BaseDefaultFunctor<RoundFunctor>
bool
supportBackend
(
int
backendId
,
int
)
{
return
backendId
==
DNN_BACKEND_OPENCV
||
backendId
==
DNN_BACKEND_HALIDE
;
return
backendId
==
DNN_BACKEND_OPENCV
||
backendId
==
DNN_BACKEND_
CUDA
||
backendId
==
DNN_BACKEND_
HALIDE
;
}
inline
float
calculate
(
float
x
)
const
...
...
@@ -1253,7 +1253,7 @@ struct SqrtFunctor : public BaseDefaultFunctor<SqrtFunctor>
bool
supportBackend
(
int
backendId
,
int
)
{
return
backendId
==
DNN_BACKEND_OPENCV
||
backendId
==
DNN_BACKEND_HALIDE
;
return
backendId
==
DNN_BACKEND_OPENCV
||
backendId
==
DNN_BACKEND_
CUDA
||
backendId
==
DNN_BACKEND_
HALIDE
;
}
inline
float
calculate
(
float
x
)
const
...
...
@@ -1295,7 +1295,7 @@ struct NotFunctor : public BaseDefaultFunctor<NotFunctor>
bool
supportBackend
(
int
backendId
,
int
)
{
return
backendId
==
DNN_BACKEND_OPENCV
||
backendId
==
DNN_BACKEND_HALIDE
;
return
backendId
==
DNN_BACKEND_OPENCV
||
backendId
==
DNN_BACKEND_
CUDA
||
backendId
==
DNN_BACKEND_
HALIDE
;
}
inline
float
calculate
(
float
x
)
const
...
...
modules/dnn/src/onnx/onnx_importer.cpp
浏览文件 @
f378f029
...
...
@@ -3004,6 +3004,8 @@ void ONNXImporter::parseElementWise(LayerParams& layerParams, const opencv_onnx:
LayerParams
constParams
;
constParams
.
name
=
node_proto
.
input
(
i
);
constParams
.
type
=
"Const"
;
// Non-constant propagated layers cannot output 1-d or 0-d tensors.
inp
.
dims
=
std
::
max
(
inp
.
dims
,
2
);
constParams
.
blobs
.
push_back
(
inp
);
opencv_onnx
::
NodeProto
proto
;
...
...
modules/dnn/test/test_onnx_importer.cpp
浏览文件 @
f378f029
...
...
@@ -221,11 +221,21 @@ TEST_P(Test_ONNX_layers, GatherMulti)
TEST_P
(
Test_ONNX_layers
,
Convolution3D
)
{
if
(
backend
==
DNN_BACKEND_CUDA
&&
target
==
DNN_TARGET_CUDA_FP16
)
{
// CUDA_FP16: cuDNN did not return a suitable algorithm for convolution.
applyTestTag
(
CV_TEST_TAG_DNN_SKIP_CUDA_FP16
);
}
testONNXModels
(
"conv3d"
);
}
TEST_P
(
Test_ONNX_layers
,
Convolution3D_bias
)
{
if
(
backend
==
DNN_BACKEND_CUDA
&&
target
==
DNN_TARGET_CUDA_FP16
)
{
// CUDA_FP16: cuDNN did not return a suitable algorithm for convolution.
applyTestTag
(
CV_TEST_TAG_DNN_SKIP_CUDA_FP16
);
}
testONNXModels
(
"conv3d_bias"
);
}
...
...
@@ -868,6 +878,12 @@ TEST_P(Test_ONNX_layers, PoolConv3D)
if
(
backend
==
DNN_BACKEND_VKCOM
)
applyTestTag
(
CV_TEST_TAG_DNN_SKIP_VULKAN
);
if
(
backend
==
DNN_BACKEND_CUDA
&&
target
==
DNN_TARGET_CUDA_FP16
)
{
// CUDA_FP16: cuDNN did not return a suitable algorithm for convolution.
applyTestTag
(
CV_TEST_TAG_DNN_SKIP_CUDA_FP16
);
}
testONNXModels
(
"pool_conv_3d"
);
}
...
...
@@ -1073,10 +1089,9 @@ TEST_P(Test_ONNX_layers, Div)
Mat
out
=
net
.
forward
();
normAssert
(
ref
,
out
,
""
,
default_l1
,
default_lInf
);
expectNoFallbacksFromIE
(
net
);
expectNoFallbacksFromCUDA
(
net
);
testONNXModels
(
"div_test_1x1"
,
npy
,
0
,
0
,
false
,
true
,
2
);
// NaryEltwise layer suuports only CPU for now
testONNXModels
(
"div_test_1x1"
,
npy
,
0
,
0
,
false
,
false
,
2
);
}
TEST_P
(
Test_ONNX_layers
,
DynamicReshape
)
...
...
@@ -1127,10 +1142,19 @@ TEST_P(Test_ONNX_layers, Split)
testONNXModels
(
"split_2"
);
testONNXModels
(
"split_3"
);
testONNXModels
(
"split_4"
);
testONNXModels
(
"split_sizes"
);
testONNXModels
(
"split_neg_axis"
);
}
// Mul inside with 0-d tensor, output should be A x 1, but is 1 x A. PR #22652
TEST_P
(
Test_ONNX_layers
,
DISABLED_Split_sizes_0d
)
{
if
(
backend
==
DNN_BACKEND_INFERENCE_ENGINE_NN_BUILDER_2019
)
applyTestTag
(
CV_TEST_TAG_DNN_SKIP_IE_NN_BUILDER
);
if
(
backend
==
DNN_BACKEND_INFERENCE_ENGINE_NGRAPH
)
applyTestTag
(
CV_TEST_TAG_DNN_SKIP_IE_NGRAPH
);
testONNXModels
(
"split_sizes"
);
}
TEST_P
(
Test_ONNX_layers
,
Slice
)
{
#if defined(INF_ENGINE_RELEASE) && INF_ENGINE_VER_MAJOR_LT(2019010000)
...
...
@@ -2184,7 +2208,7 @@ TEST_P(Test_ONNX_nets, LResNet100E_IR)
}
else
if
(
target
==
DNN_TARGET_CUDA_FP16
)
{
l1
=
0.00
8
;
l1
=
0.00
9
;
lInf
=
0.04
;
}
testONNXModels
(
"LResNet100E_IR"
,
pb
,
l1
,
lInf
);
...
...
编辑
预览
Markdown
is supported
0%
请重试
或
添加新附件
.
添加附件
取消
You are about to add
0
people
to the discussion. Proceed with caution.
先完成此消息的编辑!
取消
想要评论请
注册
或
登录