diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml index c6ea2877183d767321a7afd02562b0848d3c723a..4b50dc63d360a90998c0b7aea4aa842bdbc62f77 100644 --- a/.gitlab-ci.yml +++ b/.gitlab-ci.yml @@ -26,76 +26,96 @@ gcc_9_python: script: - python3 setup.py bdist_wheel -gcc_9: +############################################################################### +.gnu_build_template: stage: build + image: irmb/virtualfluids-deps-ubuntu20.04 + tags: - gpu - linux cache: - key: "$CI_JOB_NAME-$CI_COMMIT_REF_SLUG-gcc9-hybrid" + key: "$CI_JOB_NAME-$CI_COMMIT_REF_SLUG" paths: - - build_gcc9 + - $BUILD_FOLDER artifacts: paths: - - build_gcc9 + - $BUILD_FOLDER before_script: - - export DEBIAN_FRONTEND=noninteractive - - apt-get update - - apt-get install -y libboost-serialization-dev - - cd /tmp - - apt-get install unzip - - wget https://github.com/NVIDIA/cuda-samples/archive/10.1.2.zip - - unzip 10.1.2.zip - - export NVCUDASAMPLES_ROOT=$(pwd)/cuda-samples-10.1.2 + - export CC=gcc + - export CXX=g++ script: - - cd $CI_PROJECT_DIR - - mkdir -p build_gcc9 - - cd build_gcc9 - - cmake .. -DBUILD_VF_CPU=ON -DBUILD_VF_GPU=ON + - $CXX --version + - $CC --version + - cmake --version + - mpirun --version + - mkdir -p $CI_PROJECT_DIR/$BUILD_FOLDER + - cd $CI_PROJECT_DIR/$BUILD_FOLDER + - cmake .. + -DBUILD_VF_CPU=ON + -DBUILD_VF_GPU=ON - cmake . -LAH - make -j4 + variables: + BUILD_FOLDER: "build" + +############################################################################### +gcc_9: + extends: .gnu_build_template + +############################################################################### clang_10: + extends: .gnu_build_template + + before_script: + - export CC=clang + - export CXX=clang++ + + +############################################################################### +gcc_9_rebuild: stage: build + image: irmb/virtualfluids-deps-ubuntu20.04 + tags: - gpu - linux - cache: - key: "$CI_JOB_NAME-$CI_COMMIT_REF_SLUG-clang10-hybrid" - paths: - - build_clang10 + before_script: + - export CCACHE_BASEDIR=$CI_PROJECT_DIR + - export CCACHE_DIR=$CI_PROJECT_DIR/cache + - ccache -s + + script: + - mkdir -p $CI_PROJECT_DIR/build + - cd $CI_PROJECT_DIR/build + - rm -r -f ./* + - cmake .. + -DBUILD_VF_CPU=ON + -DBUILD_VF_GPU=ON + -DCMAKE_CXX_COMPILER_LAUNCHER=ccache + -DCMAKE_CUDA_COMPILER_LAUNCHER=ccache + -DCMAKE_C_COMPILER_LAUNCHER=ccache + - make -j4 2>&1 | tee gcc_warnings.txt + - ccache -s artifacts: paths: - - build_clang10 + - build/gcc_warnings.txt - before_script: - - export DEBIAN_FRONTEND=noninteractive - - apt-get update - - export CC=clang - - export CXX=clang++ - - $CXX --version - - apt-get install -y libboost-serialization-dev - - cd /tmp - - apt-get install unzip - - wget https://github.com/NVIDIA/cuda-samples/archive/10.1.2.zip - - unzip 10.1.2.zip - - export NVCUDASAMPLES_ROOT=$(pwd)/cuda-samples-10.1.2 - - script: - - cd $CI_PROJECT_DIR - - mkdir -p build_clang10 - - cd build_clang10 - - cmake .. -DBUILD_VF_CPU=ON -DBUILD_VF_GPU=ON - - make -j4 + cache: + key: "$CI_JOB_NAME-$CI_COMMIT_REF_SLUG" + paths: + - $CI_PROJECT_DIR/cache +############################################################################### msvc_16: stage: build @@ -128,7 +148,7 @@ msvc_16: - MSBuild.exe VirtualFluids.sln /property:Configuration=$env:BUILD_CONFIGURATION /verbosity:minimal /maxcpucount:4 cache: - key: "$CI_JOB_NAME-$CI_COMMIT_REF_SLUG-windows" + key: "$CI_JOB_NAME-$CI_COMMIT_REF_SLUG" paths: - $CI_PROJECT_DIR/$env:BUILD_FOLDER/ @@ -136,7 +156,7 @@ msvc_16: paths: - $CI_PROJECT_DIR/$env:BUILD_FOLDER/ - +############################################################################### build_singularity_image: stage: build @@ -155,39 +175,6 @@ build_singularity_image: - singularity build Containers/VirtualFluidsOpenMPI.sif Containers/VirtualFluidsOpenMPI.def - ls -sh Containers/VirtualFluidsOpenMPI.sif - - -gcc_9_rebuild: - stage: build - - #only: ["schedules"] - - tags: - - gpu - - linux - - before_script: - - export DEBIAN_FRONTEND=noninteractive - - apt-get update - - apt-get install -y libboost-serialization-dev - - cd /tmp - - apt-get install unzip - - wget https://github.com/NVIDIA/cuda-samples/archive/10.1.2.zip - - unzip 10.1.2.zip - - export NVCUDASAMPLES_ROOT=$(pwd)/cuda-samples-10.1.2 - - script: - - cd $CI_PROJECT_DIR - - mkdir -p build_gcc_rebuild - - cd build_gcc_rebuild - - rm -r -f ./* - - cmake -E env CXXFLAGS="-fdiagnostics-show-option" cmake .. -DBUILD_VF_CPU=ON -DBUILD_VF_GPU=ON - - make -j4 >&1 | tee gcc_warnings.txt - - artifacts: - paths: - - build_gcc_rebuild/gcc_warnings.txt - ############################################################################### ## Tests ## ############################################################################### @@ -202,6 +189,7 @@ gcc_9_unit_tests: script: - $VF_UNITTESTS +############################################################################### msvc_16_unit_tests: stage: test @@ -217,6 +205,7 @@ msvc_16_unit_tests: script: - .\bin\Release\basicsTests.exe +############################################################################### gcc_9_python_bindings_test: stage: test @@ -237,15 +226,13 @@ gcc_9_python_bindings_test: clang_build_analyzer_clang_10: stage: analyze + image: irmb/virtualfluids-deps-ubuntu20.04 + only: ["schedules"] needs: [] before_script: - - export DEBIAN_FRONTEND=noninteractive - - apt-get update - - cmake --version - - mpirun --version - export CC=clang - export CXX=clang++ - $CXX --version @@ -259,24 +246,30 @@ clang_build_analyzer_clang_10: script: - mkdir -p $CI_PROJECT_DIR/build - cd $CI_PROJECT_DIR/build - - rm -r -f ./* - - cmake .. -DBUILD_VF_CPU=ON -DUSE_OPENMP=OFF -DCMAKE_CXX_FLAGS=-ftime-trace + - cmake .. + -DBUILD_VF_CPU=ON + -DBUILD_VF_GPU=ON + -DUSE_OPENMP=OFF + -DCMAKE_CXX_FLAGS=-ftime-trace - ClangBuildAnalyzer --start . - make - ClangBuildAnalyzer --stop . CBA - ClangBuildAnalyzer --analyze CBA - -include_what_you_use_gcc_9: +############################################################################### +include_what_you_use_clang_10: stage: analyze + image: irmb/virtualfluids-deps-ubuntu20.04 + only: ["schedules"] needs: [] before_script: - - export DEBIAN_FRONTEND=noninteractive - - apt-get update + - export CC=clang + - export CXX=clang++ + - $CXX --version - cd /tmp - git clone https://github.com/include-what-you-use/include-what-you-use.git - cd include-what-you-use @@ -284,19 +277,23 @@ include_what_you_use_gcc_9: - cmake . -DCMAKE_PREFIX_PATH=/usr/lib/llvm-10 - make - export PATH+=:$(pwd)/bin - - echo $PATH script: - mkdir -p $CI_PROJECT_DIR/build - cd $CI_PROJECT_DIR/build - - rm -r -f ./* - - cmake .. -DBUILD_VF_CPU=ON -DUSE_OPENMP=OFF -DBUILD_VF_INCLUDE_WHAT_YOU_USE=ON + - cmake .. + -DBUILD_VF_CPU=ON + -DBUILD_VF_GPU=ON + -DUSE_OPENMP=OFF + -DBUILD_VF_INCLUDE_WHAT_YOU_USE=ON - make - +############################################################################### cppcheck: stage: analyze + image: irmb/virtualfluids-deps-ubuntu20.04 + needs: [] before_script: @@ -315,21 +312,21 @@ cppcheck: - html_report/ - cppcheck.xml +############################################################################### # lizard - Cyclomatic Complexity Analyzer # Ignore warnings is manually set to 191. This job will fail when new warnings are added. lizard: stage: analyze + image: irmb/virtualfluids-python-deps-ubuntu20.04 + needs: [] before_script: - - export DEBIAN_FRONTEND=noninteractive - - apt-get update - cd /tmp - git clone https://github.com/terryyin/lizard.git - cd lizard - python3 setup.py install - - which lizard - lizard --version script: @@ -340,10 +337,13 @@ lizard: paths: - lizard.txt +############################################################################### # code coverage gcov_gcc_9: stage: analyze + image: irmb/virtualfluids-python-deps-ubuntu20.04 + needs: [] before_script: @@ -351,65 +351,66 @@ gcov_gcc_9: - apt-get update - pip3 install gcovr - gcovr --version - - apt-get install -y libboost-serialization-dev - - cd /tmp - - apt-get install unzip - - wget https://github.com/NVIDIA/cuda-samples/archive/10.1.2.zip - - unzip 10.1.2.zip - - export NVCUDASAMPLES_ROOT=$(pwd)/cuda-samples-10.1.2 script: - - mkdir -p $CI_PROJECT_DIR/gcov_build - - cd $CI_PROJECT_DIR/gcov_build - - cmake .. -DBUILD_VF_CPU=ON -DBUILD_VF_GPU=ON -DBUILD_VF_COVERAGE=ON -DBUILD_VF_UNIT_TESTS=ON + - mkdir -p $CI_PROJECT_DIR/build + - cd $CI_PROJECT_DIR/build + - cmake .. + -DBUILD_VF_CPU=ON + -DBUILD_VF_GPU=ON + -DBUILD_VF_COVERAGE=ON + -DBUILD_VF_UNIT_TESTS=ON - make -j4 - ./bin/basicsTests - cd .. - mkdir coverage - - gcovr -r $CI_PROJECT_DIR -k gcov_build -f "src" --print-summary --html coverage/coverage.html --html-details --xml coverage/coverage.xml + - gcovr -r $CI_PROJECT_DIR -k build -f "src" --print-summary --html coverage/coverage.html --html-details --xml coverage/coverage.xml artifacts: paths: - coverage/ - - gcov_build/ + - build/ reports: cobertura: coverage/coverage.xml cache: - key: "$CI_JOB_NAME-$CI_COMMIT_REF_SLUG-gcov" + key: "$CI_JOB_NAME-$CI_COMMIT_REF_SLUG" paths: - - gcov_build + - build +############################################################################### # this job also produces a compile commands json file. clang-tidy: stage: analyze + image: irmb/virtualfluids-python-deps-ubuntu20.04 + needs: [] before_script: - run-clang-tidy -h script: - - cd $CI_PROJECT_DIR - - mkdir -p build_clang_tidy - - cd build_clang_tidy - - cmake .. -DCMAKE_EXPORT_COMPILE_COMMANDS=ON -DBUILD_VF_CPU=ON -DBUILD_VF_GPU=OFF + - mkdir -p $CI_PROJECT_DIR/build + - cd $CI_PROJECT_DIR/build + - cmake .. + -DCMAKE_EXPORT_COMPILE_COMMANDS=ON + -DBUILD_VF_CPU=ON + -DBUILD_VF_GPU=OFF - python3 ../utilities/filterCompileCommands.py compile_commands.json - run-clang-tidy -quiet > clangtidy.txt artifacts: paths: - - build_clang_tidy/clangtidy.txt - - build_clang_tidy/compile_commands.json + - build/clangtidy.txt + - build/compile_commands.json ############################################################################### ## Deploy ## ############################################################################### -vf_to_phoenix: +.deploy_template: stage: deploy - - needs: ["gcc_9_python", "gcc_9_unit_tests", "gcc_9_python_bindings_test"] before_script: - 'command -v ssh-agent >/dev/null || ( apt-get update -y && apt-get install openssh-client -y )' @@ -417,11 +418,25 @@ vf_to_phoenix: - mkdir -p ~/.ssh - chmod 700 ~/.ssh - eval $(ssh-agent -s) - - echo "$SSH_PRIVATE_KEY" | tr -d '\r' | ssh-add - - - echo $SSH_PRIVATE_KEY >> ansible/private_key - - ssh-keyscan -t rsa phoenix.hlr.rz.tu-bs.de >> ~/.ssh/known_hosts + - echo "$SSH_KEY" | tr -d '\r' | ssh-add - + - echo $SSH_KEY >> ansible/private_key + - ssh-keyscan -t rsa $HOST >> ~/.ssh/known_hosts - pip3 install ansible + variables: + SSH_KEY: "" + HOST: "" + +############################################################################### +vf_to_phoenix: + extends: .deploy_template + stage: deploy + needs: ["gcc_9_python"] + + variables: + SSH_KEY: "$SSH_PRIVATE_KEY" + HOST: "phoenix.hlr.rz.tu-bs.de" + script: - ansible-playbook -i ansible/hosts.cfg -u $REMOTE_USER ansible/playbook_vf_deploy.yml @@ -458,51 +473,45 @@ vf_wheel_to_jupyterhub: script: - ansible-playbook -i ansible/hosts.cfg -u $REMOTE_USER ansible/playbook_jupyter_update.yml +############################################################################### cppcheck_to_elladan: + extends: .deploy_template stage: deploy needs: ["cppcheck"] - before_script: - - 'command -v ssh-agent >/dev/null || ( apt-get update -y && apt-get install openssh-client -y )' - - apt-get install -y rsync - - mkdir -p ~/.ssh - - chmod 700 ~/.ssh - - eval $(ssh-agent -s) - - echo "$SSH_PRIVATE_KEY_ELLADAN" | tr -d '\r' | ssh-add - - - ssh-keyscan -t rsa elladan.irmb.bau.tu-bs.de >> ~/.ssh/known_hosts - - pip3 install ansible + variables: + SSH_KEY: "$SSH_PRIVATE_KEY_ELLADAN" + HOST: "elladan.irmb.bau.tu-bs.de" script: - ansible-playbook -i ansible/hosts.cfg -u public_pages ansible/playbook_cppcheck.yml - +############################################################################### gcov_to_elladan: + extends: .deploy_template stage: deploy - needs: ["gcov_gcc_9"] - before_script: - - 'command -v ssh-agent >/dev/null || ( apt-get update -y && apt-get install openssh-client -y )' - - apt-get install -y rsync - - mkdir -p ~/.ssh - - chmod 700 ~/.ssh - - eval $(ssh-agent -s) - - echo "$SSH_PRIVATE_KEY_ELLADAN" | tr -d '\r' | ssh-add - - - ssh-keyscan -t rsa elladan.irmb.bau.tu-bs.de >> ~/.ssh/known_hosts - - pip3 install ansible + variables: + SSH_KEY: "$SSH_PRIVATE_KEY_ELLADAN" + HOST: "elladan.irmb.bau.tu-bs.de" script: - ansible-playbook -i ansible/hosts.cfg -u public_pages ansible/playbook_gcov.yml +############################################################################### # sonar-scanner runs sonar-project.properties -# the reports ins this file needs to match the artifacts. +# the reports in this file needs to match the artifacts. sonar-scanner: stage: deploy + only: + refs: + - develop variables: SONAR_HOST_URL: "http://finrod.irmb.bau.tu-bs.de/sonarqube" - needs: ["cppcheck","clang-tidy","gcov_gcc_9"] + needs: ["cppcheck","clang-tidy","gcov_gcc_9","gcc_9_rebuild"] before_script: - cd /tmp @@ -514,7 +523,6 @@ sonar-scanner: - echo 'sonar.sourceEncoding=UTF-8' >> conf/sonar-scanner.properties - cat conf/sonar-scanner.properties - export PATH+=:$(pwd)/bin - - echo $PATH - sonar-scanner -v script: diff --git a/CMake/cmake_config_files/TESLA03.config.cmake b/CMake/cmake_config_files/TESLA03.config.cmake index 55ef7a2427b8f99554eeb474c52a7ea4372912ad..bf08ef36405df6090393f368e50e4e48795635af 100644 --- a/CMake/cmake_config_files/TESLA03.config.cmake +++ b/CMake/cmake_config_files/TESLA03.config.cmake @@ -12,7 +12,10 @@ SET(FFTW_ROOT ${CMAKE_SOURCE_DIR}/3rdParty/fftw/fftw-3.3.7 CACHE PATH "JSONCPP R #SET TO CORRECT PATH: -SET(BOOST_ROOT "F:\\boost\\boost_1_74_0" CACHE PATH "BOOST_ROOT") -SET(BOOST_LIBRARYDIR "F:\\boost\\boost_1_74_0\\stageMSVC64VS2019\\lib" CACHE PATH "BOOST_LIBRARYDIR") +SET(BOOST_ROOT "F:/boost/boost_1_74_0" CACHE PATH "BOOST_ROOT") +SET(BOOST_LIBRARYDIR "F:/boost/boost_1_74_0/stageMSVC64VS2019/lib" CACHE PATH "BOOST_LIBRARYDIR") SET(VTK_DIR "F:/Libraries/vtk/VTK-8.2.0/build" CACHE PATH "VTK directory override" FORCE) + +SET(PATH_NUMERICAL_TESTS "E:/temp/numericalTests/") +LIST(APPEND VF_COMPILER_DEFINITION "PATH_NUMERICAL_TESTS=${PATH_NUMERICAL_TESTS}") diff --git a/apps/gpu/tests/NumericalTests/Utilities/ConfigFileReaderNT/ConfigFileReaderNT.cpp b/apps/gpu/tests/NumericalTests/Utilities/ConfigFileReaderNT/ConfigFileReaderNT.cpp index ee75dcf29d0a4afa71fa66b4f168a191a585c088..37a34a3c3fe76d474c0dede2a3806e2af7dde420 100644 --- a/apps/gpu/tests/NumericalTests/Utilities/ConfigFileReaderNT/ConfigFileReaderNT.cpp +++ b/apps/gpu/tests/NumericalTests/Utilities/ConfigFileReaderNT/ConfigFileReaderNT.cpp @@ -8,6 +8,10 @@ #include <string> #include <fstream> +#define VAL(str) #str +#define TOSTRING(str) VAL(str) + + std::shared_ptr<ConfigFileReader> ConfigFileReader::getNewInstance(const std::string aFilePath) { return std::shared_ptr<ConfigFileReader>(new ConfigFileReader(aFilePath)); @@ -32,7 +36,7 @@ void ConfigFileReader::readConfigFile() configData->kernelsToTest = readKernelList(input); configData->writeAnalyticalToVTK = StringUtil::toBool(input->getValue("WriteAnalyResultsToVTK")); configData->ySliceForCalculation = StringUtil::toInt(input->getValue("ySliceForCalculation"));; - configData->logFilePath = input->getValue("PathLogFile"); + configData->logFilePath = TOSTRING(PATH_NUMERICAL_TESTS) + input->getValue("FolderLogFile"); configData->numberOfSimulations = calcNumberOfSimulations(input); std::shared_ptr<BasicSimulationParameterStruct> basicSimPara = makeBasicSimulationParameter(input); @@ -131,7 +135,7 @@ std::vector<std::shared_ptr<TaylorGreenVortexUxParameterStruct> > ConfigFileRead aParameter->basicTimeStepLength = basisTimeStepLength.at(i); aParameter->l0 = l0; aParameter->rho0 = StringUtil::toDouble(input->getValue("Rho0")); - aParameter->vtkFilePath = input->getValue("PathForVTKFileWriting"); + aParameter->vtkFilePath = TOSTRING(PATH_NUMERICAL_TESTS) + input->getValue("FolderForVTKFileWriting"); aParameter->dataToCalcTests = StringUtil::toStringVector(input->getValue("DataToCalcTests_TGV_Ux")); parameter.push_back(aParameter); } @@ -155,7 +159,7 @@ std::vector<std::shared_ptr<TaylorGreenVortexUzParameterStruct> > ConfigFileRead aParameter->basicTimeStepLength = basisTimeStepLength.at(i); aParameter->l0 = l0; aParameter->rho0 = StringUtil::toDouble(input->getValue("Rho0")); - aParameter->vtkFilePath = input->getValue("PathForVTKFileWriting"); + aParameter->vtkFilePath = TOSTRING(PATH_NUMERICAL_TESTS) + input->getValue("FolderForVTKFileWriting"); aParameter->dataToCalcTests = StringUtil::toStringVector(input->getValue("DataToCalcTests_TGV_Uz")); parameter.push_back(aParameter); } @@ -178,7 +182,7 @@ std::vector<std::shared_ptr<ShearWaveParameterStruct> > ConfigFileReader::makeSh aParameter->basicTimeStepLength = basisTimeStepLength.at(i); aParameter->l0 = l0; aParameter->rho0 = StringUtil::toDouble(input->getValue("Rho0")); - aParameter->vtkFilePath = input->getValue("PathForVTKFileWriting"); + aParameter->vtkFilePath = TOSTRING(PATH_NUMERICAL_TESTS) + input->getValue("FolderForVTKFileWriting"); aParameter->dataToCalcTests = StringUtil::toStringVector(input->getValue("DataToCalcTests_SW")); parameter.push_back(aParameter); } @@ -283,7 +287,7 @@ std::vector<std::shared_ptr<GridInformationStruct> > ConfigFileReader::makeGridI if (StringUtil::toBool(input->getValue(valueNames.at(i)))) { lx.push_back(nextNumber); lz.push_back(nextNumber * 3.0 / 2.0); - gridPath.push_back(input->getValue(gridPaths.at(i))); + gridPath.push_back(TOSTRING(PATH_NUMERICAL_TESTS) + input->getValue(gridPaths.at(i))); nextNumber *= 2; } } diff --git a/apps/gpu/tests/NumericalTests/config.txt b/apps/gpu/tests/NumericalTests/config.txt index fa67758050d267a2a5a833b0145d84aaf9543980..783e6ebbb6d0550f08e39b363a1550c1fe814567 100644 --- a/apps/gpu/tests/NumericalTests/config.txt +++ b/apps/gpu/tests/NumericalTests/config.txt @@ -6,7 +6,8 @@ Devices="0" ################################################## # Basic Simulation Parameter # ################################################## -KernelsToTest="BGKPlusCompSP27" +KernelsToTest="CumulantK15Comp" +#CumulantK17Comp #BGKCompSP27 BGKPlusCompSP27 CumulantAA2016CompSP27 CumulantOneCompSP27 CumulantF3CompSP27 CumulantF32018CompSP27 CumulantAll4CompSP27 NumberOfTimeSteps=20 Viscosity="0.001" diff --git a/apps/gpu/tests/NumericalTests/configK15_nu10tm2.txt b/apps/gpu/tests/NumericalTests/configK15_nu10tm2.txt new file mode 100644 index 0000000000000000000000000000000000000000..c1592b7e04373da66d053d86dd2d054516a94f29 --- /dev/null +++ b/apps/gpu/tests/NumericalTests/configK15_nu10tm2.txt @@ -0,0 +1,124 @@ +################################################## +# GPU Mapping # +################################################## +Devices="1" + +################################################## +# Basic Simulation Parameter # +################################################## +KernelsToTest="CumulantK15Comp" +#CumulantK17Comp +#BGKCompSP27 BGKPlusCompSP27 CumulantAA2016CompSP27 CumulantOneCompSP27 CumulantF3CompSP27 CumulantF32018CompSP27 CumulantAll4CompSP27 +NumberOfTimeSteps=20 +Viscosity="0.01" +Rho0=1.0 + +################################################## +# TaylorGreenVortex Parameter # +################################################## +BasisTimeStepLength_TGV_Ux="1000" +ux_TGV_Ux="0.096" +Amplitude_TGV_Ux="0.001" +l0_TGV_Ux=32 +DataToCalcTests_TGV_Ux="Vx Vz" + +BasisTimeStepLength_TGV_Uz="1000" +uz_TGV_Uz="0.048" +Amplitude_TGV_Uz="0.001" +l0_TGV_Uz=48 +DataToCalcTests_TGV_Uz="Vx Vz" + +################################################## +# Shear Wave Parameter # +################################################## +BasisTimeStepLength_SW="1000" +u0_SW="0.096" +v0_SW="0.1" +l0_SW=32 +DataToCalcTests_SW="Vy" + +################################################## +# Basic Test Parameter # +################################################## +ySliceForCalculation=0 + +################################################## +# Phi Test Parameter # +################################################## +PhiTest=true + +MinOrderOfAccuracy_Phi=1.95 +StartTimeStepCalculation_Phi=11 +EndTimeStepCalculation_Phi=20 + +################################################## +# Ny Test Parameter # +################################################## +NyTest=true + +MinOrderOfAccuracy_Ny=1.95 +StartTimeStepCalculation_Ny=11 +EndTimeStepCalculation_Ny=20 + +################################################## +# L2-Norm Test Parameter # +################################################## +L2NormTest=false + +NormalizeData_L2Norm="Amplitude BasicData" +MaxL2NormDiff="4.5 0.5" + +BasicTimeStep_L2=0 +DivergentTimeStep_L2=20 + +################################################## +# L2-Norm Test Between Kernels Parameter # +################################################## +L2NormBetweenKernelsTest=false + +BasicKernel_L2NormBetweenKernels=BGKCompSP27 +Timesteps_L2NormBetweenKernels="0 10 20" +NormalizeWith=amplitude + +################################################## +# Simulation To Perform # +################################################## +TaylorGreenVortexUx32=true +TaylorGreenVortexUx64=true +TaylorGreenVortexUx128=true +TaylorGreenVortexUx256=true +TaylorGreenVortexUx512=true + +TaylorGreenVortexUz32=false +TaylorGreenVortexUz64=false +TaylorGreenVortexUz128=false +TaylorGreenVortexUz256=false +TaylorGreenVortexUz512=false + +ShearWave32=true +ShearWave64=true +ShearWave128=true +ShearWave256=true +ShearWave512=true + +################################################## +# Grid Information # +################################################## +NumberOfGridLevels=1 + +GridPath32="grids/gridUni32x4x48" +GridPath64="grids/gridUni64x4x96" +GridPath128="grids/gridUni128x4x192" +GridPath256="grids/gridUni256x4x384" +GridPath512="grids/gridUni512x4x768" + +################################################## +# File Writing Information # +################################################## +WriteVTKFiles=false +FolderForVTKFileWriting="Output" +StartStepFileWriter=0 + +WriteAnalyResultsToVTK=true + +FolderLogFile="logFiles" \ No newline at end of file diff --git a/apps/gpu/tests/NumericalTests/configK15_nu10tm3.txt b/apps/gpu/tests/NumericalTests/configK15_nu10tm3.txt new file mode 100644 index 0000000000000000000000000000000000000000..eb27bc5f4a1f937721d2886b0fb599a5b1c7d03c --- /dev/null +++ b/apps/gpu/tests/NumericalTests/configK15_nu10tm3.txt @@ -0,0 +1,124 @@ +################################################## +# GPU Mapping # +################################################## +Devices="1" + +################################################## +# Basic Simulation Parameter # +################################################## +KernelsToTest="CumulantK15Comp" +#CumulantK17Comp +#BGKCompSP27 BGKPlusCompSP27 CumulantAA2016CompSP27 CumulantOneCompSP27 CumulantF3CompSP27 CumulantF32018CompSP27 CumulantAll4CompSP27 +NumberOfTimeSteps=20 +Viscosity="0.001" +Rho0=1.0 + +################################################## +# TaylorGreenVortex Parameter # +################################################## +BasisTimeStepLength_TGV_Ux="1000" +ux_TGV_Ux="0.096" +Amplitude_TGV_Ux="0.001" +l0_TGV_Ux=32 +DataToCalcTests_TGV_Ux="Vx Vz" + +BasisTimeStepLength_TGV_Uz="1000" +uz_TGV_Uz="0.048" +Amplitude_TGV_Uz="0.001" +l0_TGV_Uz=48 +DataToCalcTests_TGV_Uz="Vx Vz" + +################################################## +# Shear Wave Parameter # +################################################## +BasisTimeStepLength_SW="1000" +u0_SW="0.096" +v0_SW="0.1" +l0_SW=32 +DataToCalcTests_SW="Vy" + +################################################## +# Basic Test Parameter # +################################################## +ySliceForCalculation=0 + +################################################## +# Phi Test Parameter # +################################################## +PhiTest=true + +MinOrderOfAccuracy_Phi=1.95 +StartTimeStepCalculation_Phi=11 +EndTimeStepCalculation_Phi=20 + +################################################## +# Ny Test Parameter # +################################################## +NyTest=true + +MinOrderOfAccuracy_Ny=1.95 +StartTimeStepCalculation_Ny=11 +EndTimeStepCalculation_Ny=20 + +################################################## +# L2-Norm Test Parameter # +################################################## +L2NormTest=false + +NormalizeData_L2Norm="Amplitude BasicData" +MaxL2NormDiff="4.5 0.5" + +BasicTimeStep_L2=0 +DivergentTimeStep_L2=20 + +################################################## +# L2-Norm Test Between Kernels Parameter # +################################################## +L2NormBetweenKernelsTest=false + +BasicKernel_L2NormBetweenKernels=BGKCompSP27 +Timesteps_L2NormBetweenKernels="0 10 20" +NormalizeWith=amplitude + +################################################## +# Simulation To Perform # +################################################## +TaylorGreenVortexUx32=true +TaylorGreenVortexUx64=true +TaylorGreenVortexUx128=true +TaylorGreenVortexUx256=true +TaylorGreenVortexUx512=true + +TaylorGreenVortexUz32=false +TaylorGreenVortexUz64=false +TaylorGreenVortexUz128=false +TaylorGreenVortexUz256=false +TaylorGreenVortexUz512=false + +ShearWave32=true +ShearWave64=true +ShearWave128=true +ShearWave256=true +ShearWave512=true + +################################################## +# Grid Information # +################################################## +NumberOfGridLevels=1 + +GridPath32="grids/gridUni32x4x48" +GridPath64="grids/gridUni64x4x96" +GridPath128="grids/gridUni128x4x192" +GridPath256="grids/gridUni256x4x384" +GridPath512="grids/gridUni512x4x768" + +################################################## +# File Writing Information # +################################################## +WriteVTKFiles=false +FolderForVTKFileWriting="Output" +StartStepFileWriter=0 + +WriteAnalyResultsToVTK=true + +FolderLogFile="logFiles" \ No newline at end of file diff --git a/apps/gpu/tests/NumericalTests/configK15_nu10tm4.txt b/apps/gpu/tests/NumericalTests/configK15_nu10tm4.txt new file mode 100644 index 0000000000000000000000000000000000000000..d0ceb823b33fcc143f27d2ef9abcaee437daea2b --- /dev/null +++ b/apps/gpu/tests/NumericalTests/configK15_nu10tm4.txt @@ -0,0 +1,124 @@ +################################################## +# GPU Mapping # +################################################## +Devices="1" + +################################################## +# Basic Simulation Parameter # +################################################## +KernelsToTest="CumulantK15Comp" +#CumulantK17Comp +#BGKCompSP27 BGKPlusCompSP27 CumulantAA2016CompSP27 CumulantOneCompSP27 CumulantF3CompSP27 CumulantF32018CompSP27 CumulantAll4CompSP27 +NumberOfTimeSteps=20 +Viscosity="0.0001" +Rho0=1.0 + +################################################## +# TaylorGreenVortex Parameter # +################################################## +BasisTimeStepLength_TGV_Ux="1000" +ux_TGV_Ux="0.096" +Amplitude_TGV_Ux="0.001" +l0_TGV_Ux=32 +DataToCalcTests_TGV_Ux="Vx Vz" + +BasisTimeStepLength_TGV_Uz="1000" +uz_TGV_Uz="0.048" +Amplitude_TGV_Uz="0.001" +l0_TGV_Uz=48 +DataToCalcTests_TGV_Uz="Vx Vz" + +################################################## +# Shear Wave Parameter # +################################################## +BasisTimeStepLength_SW="1000" +u0_SW="0.096" +v0_SW="0.1" +l0_SW=32 +DataToCalcTests_SW="Vy" + +################################################## +# Basic Test Parameter # +################################################## +ySliceForCalculation=0 + +################################################## +# Phi Test Parameter # +################################################## +PhiTest=true + +MinOrderOfAccuracy_Phi=1.95 +StartTimeStepCalculation_Phi=11 +EndTimeStepCalculation_Phi=20 + +################################################## +# Ny Test Parameter # +################################################## +NyTest=true + +MinOrderOfAccuracy_Ny=1.95 +StartTimeStepCalculation_Ny=11 +EndTimeStepCalculation_Ny=20 + +################################################## +# L2-Norm Test Parameter # +################################################## +L2NormTest=false + +NormalizeData_L2Norm="Amplitude BasicData" +MaxL2NormDiff="4.5 0.5" + +BasicTimeStep_L2=0 +DivergentTimeStep_L2=20 + +################################################## +# L2-Norm Test Between Kernels Parameter # +################################################## +L2NormBetweenKernelsTest=false + +BasicKernel_L2NormBetweenKernels=BGKCompSP27 +Timesteps_L2NormBetweenKernels="0 10 20" +NormalizeWith=amplitude + +################################################## +# Simulation To Perform # +################################################## +TaylorGreenVortexUx32=true +TaylorGreenVortexUx64=true +TaylorGreenVortexUx128=true +TaylorGreenVortexUx256=true +TaylorGreenVortexUx512=true + +TaylorGreenVortexUz32=false +TaylorGreenVortexUz64=false +TaylorGreenVortexUz128=false +TaylorGreenVortexUz256=false +TaylorGreenVortexUz512=false + +ShearWave32=true +ShearWave64=true +ShearWave128=true +ShearWave256=true +ShearWave512=true + +################################################## +# Grid Information # +################################################## +NumberOfGridLevels=1 + +GridPath32="grids/gridUni32x4x48" +GridPath64="grids/gridUni64x4x96" +GridPath128="grids/gridUni128x4x192" +GridPath256="grids/gridUni256x4x384" +GridPath512="grids/gridUni512x4x768" + +################################################## +# File Writing Information # +################################################## +WriteVTKFiles=false +FolderForVTKFileWriting="Output" +StartStepFileWriter=0 + +WriteAnalyResultsToVTK=true + +FolderLogFile="logFiles" \ No newline at end of file diff --git a/apps/gpu/tests/NumericalTests/configK15_nu10tm5.txt b/apps/gpu/tests/NumericalTests/configK15_nu10tm5.txt new file mode 100644 index 0000000000000000000000000000000000000000..1b0b7d786efb2f0bec1718359c5b5cb603578bc0 --- /dev/null +++ b/apps/gpu/tests/NumericalTests/configK15_nu10tm5.txt @@ -0,0 +1,124 @@ +################################################## +# GPU Mapping # +################################################## +Devices="1" + +################################################## +# Basic Simulation Parameter # +################################################## +KernelsToTest="CumulantK15Comp" +#CumulantK17Comp +#BGKCompSP27 BGKPlusCompSP27 CumulantAA2016CompSP27 CumulantOneCompSP27 CumulantF3CompSP27 CumulantF32018CompSP27 CumulantAll4CompSP27 +NumberOfTimeSteps=20 +Viscosity="0.00001" +Rho0=1.0 + +################################################## +# TaylorGreenVortex Parameter # +################################################## +BasisTimeStepLength_TGV_Ux="1000" +ux_TGV_Ux="0.096" +Amplitude_TGV_Ux="0.001" +l0_TGV_Ux=32 +DataToCalcTests_TGV_Ux="Vx Vz" + +BasisTimeStepLength_TGV_Uz="1000" +uz_TGV_Uz="0.048" +Amplitude_TGV_Uz="0.001" +l0_TGV_Uz=48 +DataToCalcTests_TGV_Uz="Vx Vz" + +################################################## +# Shear Wave Parameter # +################################################## +BasisTimeStepLength_SW="1000" +u0_SW="0.096" +v0_SW="0.1" +l0_SW=32 +DataToCalcTests_SW="Vy" + +################################################## +# Basic Test Parameter # +################################################## +ySliceForCalculation=0 + +################################################## +# Phi Test Parameter # +################################################## +PhiTest=true + +MinOrderOfAccuracy_Phi=1.95 +StartTimeStepCalculation_Phi=11 +EndTimeStepCalculation_Phi=20 + +################################################## +# Ny Test Parameter # +################################################## +NyTest=true + +MinOrderOfAccuracy_Ny=1.95 +StartTimeStepCalculation_Ny=11 +EndTimeStepCalculation_Ny=20 + +################################################## +# L2-Norm Test Parameter # +################################################## +L2NormTest=false + +NormalizeData_L2Norm="Amplitude BasicData" +MaxL2NormDiff="4.5 0.5" + +BasicTimeStep_L2=0 +DivergentTimeStep_L2=20 + +################################################## +# L2-Norm Test Between Kernels Parameter # +################################################## +L2NormBetweenKernelsTest=false + +BasicKernel_L2NormBetweenKernels=BGKCompSP27 +Timesteps_L2NormBetweenKernels="0 10 20" +NormalizeWith=amplitude + +################################################## +# Simulation To Perform # +################################################## +TaylorGreenVortexUx32=true +TaylorGreenVortexUx64=true +TaylorGreenVortexUx128=true +TaylorGreenVortexUx256=true +TaylorGreenVortexUx512=true + +TaylorGreenVortexUz32=false +TaylorGreenVortexUz64=false +TaylorGreenVortexUz128=false +TaylorGreenVortexUz256=false +TaylorGreenVortexUz512=false + +ShearWave32=true +ShearWave64=true +ShearWave128=true +ShearWave256=true +ShearWave512=true + +################################################## +# Grid Information # +################################################## +NumberOfGridLevels=1 + +GridPath32="grids/gridUni32x4x48" +GridPath64="grids/gridUni64x4x96" +GridPath128="grids/gridUni128x4x192" +GridPath256="grids/gridUni256x4x384" +GridPath512="grids/gridUni512x4x768" + +################################################## +# File Writing Information # +################################################## +WriteVTKFiles=false +FolderForVTKFileWriting="Output" +StartStepFileWriter=0 + +WriteAnalyResultsToVTK=true + +FolderLogFile="logFiles" \ No newline at end of file diff --git a/sonar-project.properties b/sonar-project.properties index 11ea8aab64917760bbd6b72b3beb9fa152027568..74968f0365b83494fc124352d24e4b4637e66c51 100644 --- a/sonar-project.properties +++ b/sonar-project.properties @@ -1,10 +1,10 @@ # must be unique in a given SonarQube instance -sonar.projectKey=my:project +sonar.projectKey=vf:project:develop # --- optional properties --- # defaults to project key -sonar.projectName=VirtualFluids +sonar.projectName=VirtualFluids_dev # defaults to 'not provided' #sonar.projectVersion=1.0 @@ -26,11 +26,11 @@ sonar.cxx.coverage.reportPath=coverage/coverage.xml sonar.cxx.cppcheck.reportPath=cppcheck.xml -sonar.cxx.clangtidy.reportPath=build_clang_tidy/clangtidy.txt +sonar.cxx.clangtidy.reportPath=build/clangtidy.txt -sonar.cxx.jsonCompilationDatabase=build_clang_tidy/compile_commands.json +sonar.cxx.jsonCompilationDatabase=build/compile_commands.json -sonar.cxx.gcc.reportPath=build_gcc_rebuild/gcc_warnings.txt +sonar.cxx.gcc.reportPath=build/gcc_warnings.txt #sonar.cxx.valgrind.reportPath diff --git a/utilities/filterCompileCommands.py b/utilities/filterCompileCommands.py index 999f5809b4e29f139a93d854f68171ac97b56b70..4158c5db7a17d1284c4db6fcb25a34064e657f59 100644 --- a/utilities/filterCompileCommands.py +++ b/utilities/filterCompileCommands.py @@ -5,7 +5,7 @@ import sys def compile_command_selector(x): - return not ("3rdParty" in x["file"]) + return not ("3rdParty" in x["file"] or ".cu" in x["file"]) if __name__ == "__main__":