128 reg resample cuda enabling #60
Workflow file for this run
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| name: Code Analysis | |
| on: [push, pull_request] | |
| jobs: | |
| Code-Analysis: | |
| runs-on: ubuntu-22.04 | |
| steps: | |
| - uses: actions/checkout@v3 | |
| with: | |
| fetch-depth: 0 | |
| - name: Install Cppcheck | |
| run: | | |
| sudo apt-get update && sudo apt-get install -y libpcre3-dev | |
| git clone -b 2.13.x https://github.com/danmar/cppcheck.git | |
| cd cppcheck | |
| # Disable color output of cppcheck | |
| sed -i 's/ *bool *gDisableColors *= *false;/bool gDisableColors = true;/' lib/color.cpp | |
| sudo make -j4 MATCHCOMPILER=yes FILESDIR=/usr/share/cppcheck HAVE_RULES=yes CXXFLAGS="-O2 -DNDEBUG -Wall -Wno-sign-compare -Wno-unused-function" install | |
| - name: Install Python dependencies | |
| run: pip3 install --upgrade setuptools urllib3 chardet pyOpenSSL pygithub | |
| - name: Install CUDA Toolkit | |
| uses: Jimver/cuda-toolkit@master | |
| with: | |
| cuda: '11.8.0' | |
| method: network | |
| use-github-cache: false | |
| use-local-cache: false | |
| - name: Configure NiftyReg | |
| run: | | |
| mkdir build && cd build | |
| cmake -DCMAKE_C_COMPILER=gcc \ | |
| -DCMAKE_CXX_COMPILER=g++ \ | |
| -DCMAKE_BUILD_TYPE=Debug \ | |
| -DBUILD_ALL_DEP=ON \ | |
| -DCHECK_GPU=OFF \ | |
| -DUSE_CUDA=ON \ | |
| -DUSE_OPENCL=ON \ | |
| -DUSE_SSE=ON \ | |
| -DUSE_OPENMP=ON \ | |
| -DBUILD_TESTING=OFF \ | |
| -DCMAKE_EXPORT_COMPILE_COMMANDS=ON \ | |
| .. | |
| - name: Code Analysis | |
| env: | |
| COMMENT_TITLE: Code Analysis Results | |
| GITHUB_TOKEN: ${{ github.token }} | |
| PR_NUMBER: ${{ github.event.pull_request.number }} | |
| REPO: ${{ github.repository }} | |
| REPORT_PR_CHANGES_ONLY: false | |
| run: | | |
| analysis_file="analysis.txt" | |
| cppcheck_params="--enable=warning --check-level=exhaustive --inline-suppr --suppress=internalError --suppress=internalAstError --suppress=*:*third-party/Eigen/*" | |
| cppcheck -j4 $cppcheck_params --project=$(pwd)/build/compile_commands.json --output-file=$analysis_file | |
| # Since cppcheck does not support OpenCL and CUDA, we need to check these files separately | |
| find $(pwd)/reg-lib/cl/. -name "*.cl" -print0 | while IFS= read -r -d '' file; do cppcheck "$file" $cppcheck_params --language=c++ 2>> $analysis_file; done | |
| find $(pwd)/reg-lib/cuda/. -name "*.cu" -print0 | while IFS= read -r -d '' file; do cppcheck "$file" $cppcheck_params --language=c++ 2>> $analysis_file; done | |
| python3 .github/code_analysis.py -cc $analysis_file -o ${{ github.event_name == 'push' }} -fk false |