Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Added CI pipeline with openEuler22.03.SP2 and Ascend310 #120

Merged
merged 4 commits into from
Nov 16, 2023

Conversation

hipudding
Copy link
Contributor

@hipudding hipudding commented Nov 7, 2023

Base image: opencv-infrastructure/opencv-gha-dockerfile#24

Added CI pipeline with openEuler22.03.SP2 and Ascend310

@hipudding hipudding changed the title Added CI pipeline with OpenEuler22.03.SP2 and Ascend310 [WIP]Added CI pipeline with OpenEuler22.03.SP2 and Ascend310 Nov 7, 2023
@fengyuentau fengyuentau self-assigned this Nov 8, 2023
@hipudding hipudding changed the title [WIP]Added CI pipeline with OpenEuler22.03.SP2 and Ascend310 Added CI pipeline with OpenEuler22.03.SP2 and Ascend310 Nov 9, 2023
@fengyuentau
Copy link
Member

Let me connect the machine first. In the meantime, I propose to remove the if condition if: contains(github.event.pull_request.labels.*.name, 'category:cann') here but add it back when we add this workflow to the main repo.

@hipudding
Copy link
Contributor Author

Let me connect the machine first. In the meantime, I propose to remove the if condition if: contains(github.event.pull_request.labels.*.name, 'category:cann') here but add it back when we add this workflow to the main repo.

The condition is removed temporarily.

@fengyuentau
Copy link
Member

I mean we dont need this in this workflow, but put the if condition in the main repo's workflow file just like cuda does:

https://github.com/opencv/opencv/blob/b3791dc4be1c8b7159d6d68e9efe5cf63494d9ae/.github/workflows/PR-4.x.yaml#L24-L26

Conditions will add in main repo's workflow.
@hipudding
Copy link
Contributor Author

I mean we dont need this in this workflow, but put the if condition in the main repo's workflow file just like cuda does:

https://github.com/opencv/opencv/blob/b3791dc4be1c8b7159d6d68e9efe5cf63494d9ae/.github/workflows/PR-4.x.yaml#L24-L26

Oh, sure. Done.

@hipudding
Copy link
Contributor Author

@fengyuentau Is CI machine ready for use now? If ready, please re-trigger this workflow, thanks.

@fengyuentau
Copy link
Member

We are going to make the connection this afternoon. I will trigger the worflow after that.

@fengyuentau
Copy link
Member

One runner is connected. Lets try run the workflow.

@hipudding
Copy link
Contributor Author

One runner is connected. Lets try run the workflow.

Because Cannops module has not been merged. It will not find opencv_test_cannops, and this workflow may fail.

@fengyuentau
Copy link
Member

Ok, lets see whether the runner can pick up the job then.

@fengyuentau
Copy link
Member

It is now running in progress. Connection is fixed.

@fengyuentau
Copy link
Member

fengyuentau commented Nov 10, 2023

@asmorkalov Could you also review the workflow? The workflow is mainly for testing cannops in opencv/opencv_contrib#3552.


BTW, the compile issue,

FAILED: modules/dnn/CMakeFiles/opencv_dnn.dir/src/layers/gemm_layer.cpp.o 
/usr/bin/c++ -DCVAPI_EXPORTS -DCV_OCL4DNN=1 -DENABLE_PLUGINS -DHAVE_CANN=1 -DHAVE_FLATBUFFERS=1 -DHAVE_PROTOBUF=1 -D_USE_MATH_DEFINES -D__OPENCV_BUILD=1 -D__STDC_CONSTANT_MACROS -D__STDC_FORMAT_MACROS -D__STDC_LIMIT_MACROS -I/home/ci/build/3rdparty/ippicv/ippicv_lnx/icv/include -I/home/ci/build/3rdparty/ippicv/ippicv_lnx/iw/include -I/home/ci/opencv/modules/dnn/include -I/home/ci/build/modules/dnn -I/home/ci/opencv/modules/core/include -I/home/ci/opencv/modules/imgproc/include -I/home/ci/opencv/modules/dnn/misc/caffe -I/home/ci/opencv/modules/dnn/misc/tensorflow -I/home/ci/opencv/modules/dnn/misc/onnx -I/home/ci/opencv/modules/dnn/misc/tflite -I/home/ci/opencv/3rdparty/include/opencl/1.2 -I/usr/local/Ascend/ascend-toolkit/latest/include -I/usr/local/Ascend/ascend-toolkit/latest/opp -isystem /home/ci/build -isystem /home/ci/opencv/3rdparty/flatbuffers/include -isystem /home/ci/opencv/3rdparty/protobuf/src -fsigned-char -W -Wall -Wreturn-type -Wnon-virtual-dtor -Waddress -Wsequence-point -Wformat -Wformat-security -Wundef -Winit-self -Wpointer-arith -Wsign-promo -Wuninitialized -Wsuggest-override -Wno-delete-non-virtual-dtor -Wno-comment -Wimplicit-fallthrough=3 -Wno-strict-overflow -fdiagnostics-show-option -Wno-long-long -pthread -fomit-frame-pointer -ffunction-sections -fdata-sections  -msse -msse2 -msse3 -fvisibility=hidden -fvisibility-inlines-hidden -Wno-ignored-qualifiers -Wno-deprecated -Wno-missing-declarations -Wno-shadow -Wno-unused-parameter -Wno-sign-compare -Wno-invalid-offsetof -O2 -DNDEBUG  -DNDEBUG -fPIC -std=c++11 -MD -MT modules/dnn/CMakeFiles/opencv_dnn.dir/src/layers/gemm_layer.cpp.o -MF modules/dnn/CMakeFiles/opencv_dnn.dir/src/layers/gemm_layer.cpp.o.d -o modules/dnn/CMakeFiles/opencv_dnn.dir/src/layers/gemm_layer.cpp.o -c /home/ci/opencv/modules/dnn/src/layers/gemm_layer.cpp
/home/ci/opencv/modules/dnn/src/layers/gemm_layer.cpp: In member function 'virtual cv::Ptr<cv::dnn::dnn4_v20230620::BackendNode> cv::dnn::GemmLayerImpl::initCann(const std::vector<cv::Ptr<cv::dnn::dnn4_v20230620::BackendWrapper> >&, const std::vector<cv::Ptr<cv::dnn::dnn4_v20230620::BackendWrapper> >&, const std::vector<cv::Ptr<cv::dnn::dnn4_v20230620::BackendNode> >&)':
/home/ci/opencv/modules/dnn/src/layers/gemm_layer.cpp:277:35: error: 'output_desc' was not declared in this scope; did you mean 'outputs'?
  277 |         op->update_output_desc_y(*output_desc);
      |                                   ^~~~~~~~~~~
      |                                   outputs

is being fixed in opencv/opencv#24462.

@fengyuentau
Copy link
Member

What about only testing the cannops module in this workflow? In this case, we just need to build the cannops module, for example,

$ cmake --build build --target opencv_test_cannops

So we do not need to wait for the bug fix to merge this workflow.

@hipudding
Copy link
Contributor Author

hipudding commented Nov 13, 2023

What about only testing the cannops module in this workflow? In this case, we just need to build the cannops module, for example,

$ cmake --build build --target opencv_test_cannops

So we do not need to wait for the bug fix to merge this workflow.

Of course. Let me push a new commit to add target when building.

New commit has pushed. Please re-trigger this workflow.

This workflow is only used to test cannops module. Skip other modules
to increase execution speed.
@hipudding
Copy link
Contributor Author

hipudding commented Nov 13, 2023

@fengyuentau The workflow failed again. Because cannops module has not merged yet.
But I tried this workflow in my local vm, it works. Can it merge and test with PR opencv/opencv_contrib#3552?

image (Please ignore the compile warning.)
image

@fengyuentau
Copy link
Member

@asmorkalov Do you have comments on this workflow? If no, I propose to merge.

@hipudding hipudding changed the title Added CI pipeline with OpenEuler22.03.SP2 and Ascend310 Added CI pipeline with openEuler22.03.SP2 and Ascend310 Nov 14, 2023
@hipudding
Copy link
Contributor Author

@asmorkalov Good day. I would like to know if you have any comments for this PR. If there's not any, could you please merge this workflow? I'd like to test it with Cannops module(opencv/opencv_contrib#3552).

@fengyuentau
Copy link
Member

Oops

@fengyuentau fengyuentau reopened this Nov 15, 2023
@hipudding
Copy link
Contributor Author

Oops

Since the bugfix has merged. Should I revert last commit and compile all the target?

Copy link
Contributor

@asmorkalov asmorkalov left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

👍

@asmorkalov asmorkalov merged commit 0b9e30d into opencv:main Nov 16, 2023
0 of 2 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

3 participants