Skip to content
Snippets Groups Projects
Commit 13adcc04 authored by Sören Peters's avatar Sören Peters
Browse files

Merge branch 'develop' into 'develop'

Add manual numerical gpu test and enable the sonar-scanner again.

See merge request irmb/VirtualFluids_dev!3
parents 7712951b 58fa1cda
No related branches found
No related tags found
1 merge request!3Add manual numerical gpu test and enable the sonar-scanner again.
Showing
with 518 additions and 389 deletions
...@@ -3,6 +3,7 @@ image: irmb/virtualfluids-python-deps ...@@ -3,6 +3,7 @@ image: irmb/virtualfluids-python-deps
stages: stages:
- build - build
- test - test
- benchmark
- analyze - analyze
- deploy - deploy
- release - release
...@@ -124,8 +125,6 @@ gcc_9_rebuild: ...@@ -124,8 +125,6 @@ gcc_9_rebuild:
msvc_16: msvc_16:
stage: build stage: build
when: manual
tags: tags:
- win - win
- gpu - gpu
...@@ -200,7 +199,6 @@ msvc_16_unit_tests: ...@@ -200,7 +199,6 @@ msvc_16_unit_tests:
- gpu - gpu
needs: ["msvc_16"] needs: ["msvc_16"]
when: manual
before_script: before_script:
- cd $CI_PROJECT_DIR/build - cd $CI_PROJECT_DIR/build
...@@ -226,6 +224,72 @@ gcc_9_python_bindings_test: ...@@ -226,6 +224,72 @@ gcc_9_python_bindings_test:
script: script:
- python3 -m unittest discover -s Python -v - python3 -m unittest discover -s Python -v
###############################################################################
## Benchmark ##
###############################################################################
nvidia_test:
stage: benchmark
needs: []
tags:
- gpu
- linux
image: nvidia/cuda:11.1.1-devel-ubuntu20.04
script:
- echo NVIDIA_VISIBLE_DEVICES=${NVIDIA_VISIBLE_DEVICES}
- nvidia-smi
###############################################################################
gpu_numerical_tests:
stage: benchmark
image: irmb/virtualfluids-deps-ubuntu20.04
when: manual
needs: []
tags:
- gpu
- linux
before_script:
- cd /tmp
- git clone https://gitlab-ci-token:${CI_JOB_TOKEN}@git.rz.tu-bs.de/irmb/test_data.git
- export CCACHE_BASEDIR=$CI_PROJECT_DIR
- export CCACHE_DIR=$CI_PROJECT_DIR/cache
- ccache -s
- mkdir -p $CI_PROJECT_DIR/build
- cd $CI_PROJECT_DIR/build
- rm -r -f ./*
- cmake ..
-DBUILD_VF_CPU=OFF
-DBUILD_VF_GPU=ON
-DBUILD_VF_DOUBLE_ACCURACY=ON
-DBUILD_NUMERIC_TESTS=ON
-DPATH_NUMERICAL_TESTS=/tmp/test_data/numerical_tests_gpu
-DCMAKE_CXX_COMPILER_LAUNCHER=ccache
-DCMAKE_CUDA_COMPILER_LAUNCHER=ccache
-DCMAKE_C_COMPILER_LAUNCHER=ccache
- make -j4
- ccache -s
script:
- cd $CI_PROJECT_DIR
- ./build/bin/NumericalTests $CI_PROJECT_DIR/apps/gpu/tests/NumericalTests/configK15_nu10tm2.txt 2>&1 | tee -a numerical_tests_gpu_results.txt
cache:
key: "$CI_JOB_NAME-$CI_COMMIT_REF_SLUG"
paths:
- $CI_PROJECT_DIR/cache
artifacts:
paths:
- $CI_PROJECT_DIR/numerical_tests_gpu_results.txt
############################################################################### ###############################################################################
## Code analysis ## ## Code analysis ##
...@@ -488,16 +552,14 @@ gcov_to_elladan: ...@@ -488,16 +552,14 @@ gcov_to_elladan:
############################################################################### ###############################################################################
# sonar-scanner runs sonar-project.properties # sonar-scanner runs sonar-project.properties
# the reports in this file needs to match the artifacts. # the reports in this file needs to match the artifacts.
# This job only run on the development branch of the parent repository, not on forks!
sonar-scanner: sonar-scanner:
stage: deploy stage: deploy
only: only:
refs: - develop@git.rz.tu-bs.de/irmb/VirtualFluids_dev
- develop
when: manual
variables: variables:
SONAR_HOST_URL: "http://finrod.irmb.bau.tu-bs.de/sonarqube" SONAR_HOST_URL: "http://gitlab-runner01.irmb.bau.tu-bs.de/sonarqube/"
needs: ["cppcheck","clang-tidy","gcov_gcc_9","gcc_9_rebuild"] needs: ["cppcheck","clang-tidy","gcov_gcc_9","gcc_9_rebuild"]
...@@ -507,15 +569,15 @@ sonar-scanner: ...@@ -507,15 +569,15 @@ sonar-scanner:
- wget https://binaries.sonarsource.com/Distribution/sonar-scanner-cli/sonar-scanner-cli-4.0.0.1744-linux.zip - wget https://binaries.sonarsource.com/Distribution/sonar-scanner-cli/sonar-scanner-cli-4.0.0.1744-linux.zip
- unzip sonar-scanner-cli-4.0.0.1744-linux.zip - unzip sonar-scanner-cli-4.0.0.1744-linux.zip
- cd sonar-scanner-4.0.0.1744-linux/ - cd sonar-scanner-4.0.0.1744-linux/
- echo 'sonar.host.url=http://finrod.irmb.bau.tu-bs.de/sonarqube' >> conf/sonar-scanner.properties - echo "sonar.host.url=$SONAR_HOST_URL" >> conf/sonar-scanner.properties
- echo 'sonar.sourceEncoding=UTF-8' >> conf/sonar-scanner.properties - echo "sonar.sourceEncoding=UTF-8" >> conf/sonar-scanner.properties
- cat conf/sonar-scanner.properties - cat conf/sonar-scanner.properties
- export PATH+=:$(pwd)/bin - export PATH+=:$(pwd)/bin
- sonar-scanner -v - sonar-scanner -v
script: script:
- cd $CI_PROJECT_DIR - cd $CI_PROJECT_DIR
- sonar-scanner - sonar-scanner -Dsonar.login=$SONAR_SECURITY_TOKEN
############################################################################### ###############################################################################
## Release ## ## Release ##
......
...@@ -11,8 +11,11 @@ function(linkCUDA) ...@@ -11,8 +11,11 @@ function(linkCUDA)
vf_get_library_name(library_name) vf_get_library_name(library_name)
target_include_directories(${library_name} PRIVATE ${CUDA_CUT_INCLUDE_DIR}) target_include_directories(${library_name} PRIVATE ${CUDA_CUT_INCLUDE_DIR})
target_include_directories(${library_name} PRIVATE ${CMAKE_CUDA_TOOLKIT_INCLUDE_DIRECTORIES})
message("CUDA INCLUDE PATH: ${CMAKE_CUDA_TOOLKIT_INCLUDE_DIRECTORIES}")
# set the following properties only for specific targets # set the following properties only for specific targets
# set_property(TARGET ${targetName} PROPERTY CUDA_SEPARABLE_COMPILATION ON) # set_property(TARGET ${targetName} PROPERTY CUDA_SEPARABLE_COMPILATION ON)
# set_property(TARGET ${targetName} PROPERTY CUDA_64_BIT_DEVICE_CODE ON) # set_property(TARGET ${targetName} PROPERTY CUDA_64_BIT_DEVICE_CODE ON)
endfunction() endfunction()
\ No newline at end of file
...@@ -20,7 +20,7 @@ macro(loadMachineFile) ...@@ -20,7 +20,7 @@ macro(loadMachineFile)
SET(CMAKE_CONFIG_FILE "${VF_CMAKE_DIR}/cmake_config_files/${CAB_MACHINE}.config.cmake") SET(CMAKE_CONFIG_FILE "${VF_CMAKE_DIR}/cmake_config_files/${CAB_MACHINE}.config.cmake")
IF(NOT EXISTS ${CMAKE_CONFIG_FILE}) IF(NOT EXISTS ${CMAKE_CONFIG_FILE})
status("No configuration file found for machine: ${CAB_MACHINE}.") status("No configuration file found for machine: ${CAB_MACHINE}.config.cmake")
ELSE() ELSE()
status("Load configuration file ${CAB_MACHINE}.config.cmake") status("Load configuration file ${CAB_MACHINE}.config.cmake")
include(${CMAKE_CONFIG_FILE}) include(${CMAKE_CONFIG_FILE})
......
...@@ -38,6 +38,13 @@ set (VF_ROOT_DIR ${CMAKE_CURRENT_SOURCE_DIR}) ...@@ -38,6 +38,13 @@ set (VF_ROOT_DIR ${CMAKE_CURRENT_SOURCE_DIR})
option(BUILD_VF_CPU "Build VirtualFluids cpu variant" OFF) option(BUILD_VF_CPU "Build VirtualFluids cpu variant" OFF)
option(BUILD_VF_GPU "Build VirtualFluids gpu variant" OFF) option(BUILD_VF_GPU "Build VirtualFluids gpu variant" OFF)
# vf gpu
option(BUILD_VF_GPU "Build VirtualFluids GPU" ON )
option(BUILD_VF_GKS "Build VirtualFluids GKS" OFF )
option(BUILD_VF_TRAFFIC "Build VirtualFluids Traffic" OFF)
option(BUILD_JSONCPP "Builds json cpp " OFF)
option(BUILD_NUMERIC_TESTS "Build numeric tests" OFF)
option(BUILD_VF_UNIT_TESTS "Build VirtualFluids unit tests" OFF) option(BUILD_VF_UNIT_TESTS "Build VirtualFluids unit tests" OFF)
option(BUILD_VF_CLANG_TIDY "Add the clang tidy checks to the targets" OFF) option(BUILD_VF_CLANG_TIDY "Add the clang tidy checks to the targets" OFF)
option(BUILD_VF_INCLUDE_WHAT_YOU_USE "Add IWYU to the targets" OFF) option(BUILD_VF_INCLUDE_WHAT_YOU_USE "Add IWYU to the targets" OFF)
...@@ -99,5 +106,7 @@ endif() ...@@ -99,5 +106,7 @@ endif()
# 3rd Party Libraries # 3rd Party Libraries
################################################################################# #################################################################################
if(BUILD_VF_UNIT_TESTS) if(BUILD_VF_UNIT_TESTS)
add_subdirectory(${VF_THIRD_DIR}/googletest) if(NOT BUILD_NUMERIC_TESTS) # in this case googletest is already included.
add_subdirectory(${VF_THIRD_DIR}/googletest)
endif()
endif() endif()
...@@ -110,7 +110,7 @@ std::vector<double> NyTest::calcNyDiff(std::vector<double> ny) ...@@ -110,7 +110,7 @@ std::vector<double> NyTest::calcNyDiff(std::vector<double> ny)
{ {
std::vector<double> results; std::vector<double> results;
for (int i = 0; i < ny.size(); i++) for (int i = 0; i < ny.size(); i++)
results.push_back(abs((ny.at(i) - viscosity) / viscosity)); results.push_back(std::fabs((ny.at(i) - viscosity) / viscosity));
return results; return results;
} }
......
...@@ -15,40 +15,50 @@ class KernelMapper; ...@@ -15,40 +15,50 @@ class KernelMapper;
class ConfigFileReader class ConfigFileReader
{ {
public: public:
static std::shared_ptr<ConfigFileReader> getNewInstance(const std::string aFilePath); static std::shared_ptr<ConfigFileReader> getNewInstance(const std::string aFilePath);
std::shared_ptr<ConfigDataStruct> getConfigData(); std::shared_ptr<ConfigDataStruct> getConfigData();
void readConfigFile(); void readConfigFile();
private: private:
ConfigFileReader() {}; ConfigFileReader(){};
ConfigFileReader(const std::string aFilePath); ConfigFileReader(const std::string aFilePath);
std::ifstream openConfigFile(const std::string aFilePath); std::ifstream openConfigFile(const std::string aFilePath);
bool checkConfigFile(std::shared_ptr<input::Input> input); bool checkConfigFile(std::shared_ptr<input::Input> input);
std::vector<KernelType> readKernelList(std::shared_ptr<input::Input> input); std::vector<KernelType> readKernelList(std::shared_ptr<input::Input> input);
int calcNumberOfSimulations(std::shared_ptr<input::Input> input); int calcNumberOfSimulations(std::shared_ptr<input::Input> input);
int calcNumberOfSimulationGroup(std::shared_ptr<input::Input> input, std::string simName); int calcNumberOfSimulationGroup(std::shared_ptr<input::Input> input, std::string simName);
unsigned int calcStartStepForToVectorWriter(std::shared_ptr<input::Input> input); unsigned int calcStartStepForToVectorWriter(std::shared_ptr<input::Input> input);
std::vector<std::shared_ptr<TaylorGreenVortexUxParameterStruct> > makeTaylorGreenVortexUxParameter(std::shared_ptr<input::Input> input, std::shared_ptr<BasicSimulationParameterStruct> basicSimParameter); std::vector<std::shared_ptr<TaylorGreenVortexUxParameterStruct>>
std::vector<std::shared_ptr<TaylorGreenVortexUzParameterStruct> > makeTaylorGreenVortexUzParameter(std::shared_ptr<input::Input> input, std::shared_ptr<BasicSimulationParameterStruct> basicSimParameter); makeTaylorGreenVortexUxParameter(std::shared_ptr<input::Input> input,
std::vector<std::shared_ptr<ShearWaveParameterStruct> > makeShearWaveParameter(std::shared_ptr<input::Input> input, std::shared_ptr<BasicSimulationParameterStruct> basicSimParameter); std::shared_ptr<BasicSimulationParameterStruct> basicSimParameter);
std::vector<std::shared_ptr<TaylorGreenVortexUzParameterStruct>>
std::shared_ptr<NyTestParameterStruct> makeNyTestParameter(std::shared_ptr<input::Input> input); makeTaylorGreenVortexUzParameter(std::shared_ptr<input::Input> input,
std::shared_ptr<PhiTestParameterStruct> makePhiTestParameter(std::shared_ptr<input::Input> input); std::shared_ptr<BasicSimulationParameterStruct> basicSimParameter);
std::shared_ptr<L2NormTestParameterStruct> makeL2NormTestParameter(std::shared_ptr<input::Input> input); std::vector<std::shared_ptr<ShearWaveParameterStruct>>
std::shared_ptr<L2NormTestBetweenKernelsParameterStruct> makeL2NormTestBetweenKernelsParameter(std::shared_ptr<input::Input> input); makeShearWaveParameter(std::shared_ptr<input::Input> input,
std::shared_ptr<BasicSimulationParameterStruct> basicSimParameter);
std::shared_ptr<BasicSimulationParameterStruct> makeBasicSimulationParameter(std::shared_ptr<input::Input> input);
std::vector<std::shared_ptr<GridInformationStruct> > makeGridInformation(std::shared_ptr<input::Input> input, std::string simName); std::shared_ptr<NyTestParameterStruct> makeNyTestParameter(std::shared_ptr<input::Input> input);
std::shared_ptr<PhiTestParameterStruct> makePhiTestParameter(std::shared_ptr<input::Input> input);
std::shared_ptr<VectorWriterInformationStruct> makeVectorWriterInformationStruct(std::shared_ptr<input::Input> input); std::shared_ptr<L2NormTestParameterStruct> makeL2NormTestParameter(std::shared_ptr<input::Input> input);
std::shared_ptr<LogFileParameterStruct> makeLogFilePara(std::shared_ptr<input::Input> input); std::shared_ptr<L2NormTestBetweenKernelsParameterStruct>
makeL2NormTestBetweenKernelsParameter(std::shared_ptr<input::Input> input);
const std::string myFilePath; std::shared_ptr<BasicSimulationParameterStruct> makeBasicSimulationParameter(std::shared_ptr<input::Input> input);
std::shared_ptr<ConfigDataStruct> configData; std::vector<std::shared_ptr<GridInformationStruct>> makeGridInformation(std::shared_ptr<input::Input> input,
std::shared_ptr<KernelMapper> myKernelMapper; std::string simName);
std::shared_ptr<VectorWriterInformationStruct>
makeVectorWriterInformationStruct(std::shared_ptr<input::Input> input);
std::shared_ptr<LogFileParameterStruct> makeLogFilePara(std::shared_ptr<input::Input> input);
std::string pathNumericalTests;
const std::string myFilePath;
std::shared_ptr<ConfigDataStruct> configData;
std::shared_ptr<KernelMapper> myKernelMapper;
}; };
#endif #endif
\ No newline at end of file
...@@ -18,7 +18,8 @@ std::string BasicSimulationInfo::getOutput() ...@@ -18,7 +18,8 @@ std::string BasicSimulationInfo::getOutput()
return oss.str(); return oss.str();
} }
BasicSimulationInfo::BasicSimulationInfo(int numberOfTimeSteps, double viscosity, int basicTimeStepLength, KernelType kernel):numberOfTimeSteps(numberOfTimeSteps), viscosity(viscosity), basicTimeStepLength(basicTimeStepLength), kernelName(kernelName) BasicSimulationInfo::BasicSimulationInfo(int numberOfTimeSteps, double viscosity, int basicTimeStepLength, KernelType kernel)
: numberOfTimeSteps(numberOfTimeSteps), viscosity(viscosity), basicTimeStepLength(basicTimeStepLength)
{ {
std::shared_ptr<KernelMapper> myKernelMapper = KernelMapper::getInstance(); std::shared_ptr<KernelMapper> myKernelMapper = KernelMapper::getInstance();
kernelName = myKernelMapper->getString(kernel); kernelName = myKernelMapper->getString(kernel);
......
...@@ -5,5 +5,6 @@ class TestQueue ...@@ -5,5 +5,6 @@ class TestQueue
{ {
public: public:
virtual void makeFinalOutput() = 0; virtual void makeFinalOutput() = 0;
virtual int getNumberOfFailedTests() const noexcept = 0;
}; };
#endif #endif
\ No newline at end of file
...@@ -12,6 +12,8 @@ void TestQueueImp::makeFinalOutput() ...@@ -12,6 +12,8 @@ void TestQueueImp::makeFinalOutput()
colorOutput->makeFinalTestOutputFoot(numberOfTests, numberOfExecutedTest, numberOfPassedTest, numberOfFailedTest, numberOfErrorTest, numberOfNotExecutedTest); colorOutput->makeFinalTestOutputFoot(numberOfTests, numberOfExecutedTest, numberOfPassedTest, numberOfFailedTest, numberOfErrorTest, numberOfNotExecutedTest);
} }
int TestQueueImp::getNumberOfFailedTests() const noexcept { return numberOfFailedTest; }
std::shared_ptr<TestQueueImp> TestQueueImp::getNewInstance(std::shared_ptr<ColorConsoleOutput> colorOutput) std::shared_ptr<TestQueueImp> TestQueueImp::getNewInstance(std::shared_ptr<ColorConsoleOutput> colorOutput)
{ {
return std::shared_ptr<TestQueueImp>(new TestQueueImp(colorOutput)); return std::shared_ptr<TestQueueImp>(new TestQueueImp(colorOutput));
......
...@@ -14,6 +14,8 @@ class TestQueueImp : public TestQueue ...@@ -14,6 +14,8 @@ class TestQueueImp : public TestQueue
public: public:
void makeFinalOutput(); void makeFinalOutput();
int getNumberOfFailedTests() const noexcept override;
static std::shared_ptr<TestQueueImp> getNewInstance(std::shared_ptr<ColorConsoleOutput> colorOutput); static std::shared_ptr<TestQueueImp> getNewInstance(std::shared_ptr<ColorConsoleOutput> colorOutput);
void addTest(std::shared_ptr<Test> test); void addTest(std::shared_ptr<Test> test);
......
################################################## ##################################################
# GPU Mapping # # GPU Mapping #
################################################## ##################################################
Devices="1" Devices="0"
################################################## ##################################################
# Basic Simulation Parameter # # Basic Simulation Parameter #
...@@ -86,8 +86,8 @@ NormalizeWith=amplitude ...@@ -86,8 +86,8 @@ NormalizeWith=amplitude
TaylorGreenVortexUx32=true TaylorGreenVortexUx32=true
TaylorGreenVortexUx64=true TaylorGreenVortexUx64=true
TaylorGreenVortexUx128=true TaylorGreenVortexUx128=true
TaylorGreenVortexUx256=true TaylorGreenVortexUx256=false
TaylorGreenVortexUx512=true TaylorGreenVortexUx512=false
TaylorGreenVortexUz32=false TaylorGreenVortexUz32=false
TaylorGreenVortexUz64=false TaylorGreenVortexUz64=false
...@@ -95,11 +95,11 @@ TaylorGreenVortexUz128=false ...@@ -95,11 +95,11 @@ TaylorGreenVortexUz128=false
TaylorGreenVortexUz256=false TaylorGreenVortexUz256=false
TaylorGreenVortexUz512=false TaylorGreenVortexUz512=false
ShearWave32=true ShearWave32=false
ShearWave64=true ShearWave64=false
ShearWave128=true ShearWave128=false
ShearWave256=true ShearWave256=false
ShearWave512=true ShearWave512=false
################################################## ##################################################
# Grid Information # # Grid Information #
......
...@@ -101,7 +101,7 @@ static void validateTestSuite() ...@@ -101,7 +101,7 @@ static void validateTestSuite()
} }
static void startNumericalTests(const std::string &configFile) static bool startNumericalTests(const std::string &configFile)
{ {
std::shared_ptr<ConfigFileReader> configReader = ConfigFileReader::getNewInstance(configFile); std::shared_ptr<ConfigFileReader> configReader = ConfigFileReader::getNewInstance(configFile);
configReader->readConfigFile(); configReader->readConfigFile();
...@@ -120,6 +120,8 @@ static void startNumericalTests(const std::string &configFile) ...@@ -120,6 +120,8 @@ static void startNumericalTests(const std::string &configFile)
testQueue->makeFinalOutput(); testQueue->makeFinalOutput();
logFileQueue->writeLogFiles(); logFileQueue->writeLogFiles();
return testQueue->getNumberOfFailedTests() > 0;
} }
int main(int argc, char **argv) int main(int argc, char **argv)
...@@ -128,12 +130,14 @@ int main(int argc, char **argv) ...@@ -128,12 +130,14 @@ int main(int argc, char **argv)
//validateTestSuite(); //validateTestSuite();
bool tests_passed{false};
if (argc > 1) if (argc > 1)
startNumericalTests(argv[1]); tests_passed = startNumericalTests(argv[1]);
else else
std::cout << "Configuration file must be set!: lbmgm <config file>" << std::endl << std::flush; std::cout << "Configuration file must be set!: lbmgm <config file>" << std::endl << std::flush;
MPI_Finalize(); MPI_Finalize();
return 0; return tests_passed;
} }
...@@ -7,24 +7,16 @@ ...@@ -7,24 +7,16 @@
#SET(CUDA_CUT_INCLUDE_DIR "/cluster/cuda/9.0/include;/cluster/cuda/9.0/samples/common/inc" CACHE PATH "CUDA_CUT_INCLUDE_DIR") #SET(CUDA_CUT_INCLUDE_DIR "/cluster/cuda/9.0/include;/cluster/cuda/9.0/samples/common/inc" CACHE PATH "CUDA_CUT_INCLUDE_DIR")
#SET(CUDA_SAMPLE_INCLUDE_DIR "/cluster/cuda/9.0/samples/common/inc" CACHE PATH "CUDA_CUT_INCLUDE_DIR") #SET(CUDA_SAMPLE_INCLUDE_DIR "/cluster/cuda/9.0/samples/common/inc" CACHE PATH "CUDA_CUT_INCLUDE_DIR")
#############################################################
### OPTIONS ###
#############################################################
option(VF.BUILD_VF_GPU "Build VirtualFluids GPU" ON )
option(VF.BUILD_VF_GKS "Build VirtualFluids GKS" OFF )
option(VF.BUILD_VF_TRAFFIC "Build VirtualFluids Traffic" OFF)
option(VF.BUILD_JSONCPP "Builds json cpp " OFF)
option(VF.BUILD_NUMERIC_TESTS "Build numeric tests" OFF)
############################################################# #############################################################
if(VF.BUILD_NUMERIC_TESTS) if(BUILD_NUMERIC_TESTS)
set(CMAKE_CXX_STANDARD 17) set(CMAKE_CXX_STANDARD 17)
endif() endif()
############################################################# #############################################################
IF( VF.BUILD_VF_GKS ) IF( BUILD_VF_GKS )
# only use this with device of CC larger than 6.0 # only use this with device of CC larger than 6.0
set(CMAKE_CUDA_FLAGS "-Xptxas=\"-v\"" CACHE STRING "" FORCE) set(CMAKE_CUDA_FLAGS "-Xptxas=\"-v\"" CACHE STRING "" FORCE)
set(CMAKE_CUDA_ARCHITECTURES 60) set(CMAKE_CUDA_ARCHITECTURES 60)
...@@ -51,7 +43,7 @@ add_subdirectory(src/gpu/GridGenerator) ...@@ -51,7 +43,7 @@ add_subdirectory(src/gpu/GridGenerator)
### Virtual Fluids GPU ### ### Virtual Fluids GPU ###
############################################################# #############################################################
IF (VF.BUILD_VF_GPU) IF (BUILD_VF_GPU)
add_subdirectory(src/gpu/VirtualFluids_GPU) add_subdirectory(src/gpu/VirtualFluids_GPU)
#add_subdirectory(targets/apps/LBM/lbmTest) #add_subdirectory(targets/apps/LBM/lbmTest)
...@@ -73,7 +65,7 @@ ENDIF() ...@@ -73,7 +65,7 @@ ENDIF()
############################################################# #############################################################
IF (VF.BUILD_VF_GKS) IF (BUILD_VF_GKS)
add_subdirectory(src/gpu/GksMeshAdapter) add_subdirectory(src/gpu/GksMeshAdapter)
add_subdirectory(src/gpu/GksVtkAdapter) add_subdirectory(src/gpu/GksVtkAdapter)
...@@ -123,7 +115,7 @@ ENDIF() ...@@ -123,7 +115,7 @@ ENDIF()
############################################################# #############################################################
### JSONCPP ### ### JSONCPP ###
############################################################# #############################################################
IF (NOT VF.BUILD_JSONCPP) IF (NOT BUILD_JSONCPP)
MESSAGE( STATUS "Build Input Project without JsonCpp." ) MESSAGE( STATUS "Build Input Project without JsonCpp." )
ELSE() ELSE()
add_subdirectory(3rdParty/jsoncpp) add_subdirectory(3rdParty/jsoncpp)
...@@ -134,7 +126,13 @@ ENDIF() ...@@ -134,7 +126,13 @@ ENDIF()
### Numeric Tests ### ### Numeric Tests ###
############################################################# #############################################################
if(VF.BUILD_NUMERIC_TESTS) if(BUILD_NUMERIC_TESTS)
# PATH_NUMERICAL_TESTS can be passed to cmake e.g. cmake .. -DPATH_NUMERICAL_TESTS=/data/
if(PATH_NUMERICAL_TESTS)
LIST(APPEND VF_COMPILER_DEFINITION "PATH_NUMERICAL_TESTS=${PATH_NUMERICAL_TESTS}")
endif()
add_subdirectory(3rdParty/fftw/fftw-3.3.7) add_subdirectory(3rdParty/fftw/fftw-3.3.7)
add_subdirectory(3rdParty/googletest) add_subdirectory(3rdParty/googletest)
add_subdirectory(apps/gpu/tests/NumericalTests) add_subdirectory(apps/gpu/tests/NumericalTests)
...@@ -145,7 +143,7 @@ endif() ...@@ -145,7 +143,7 @@ endif()
### Annas Traffic Sim ### ### Annas Traffic Sim ###
############################################################# #############################################################
if(VF.BUILD_VF_TRAFFIC) if(BUILD_VF_TRAFFIC)
add_subdirectory(src/gpu/Traffic) add_subdirectory(src/gpu/Traffic)
add_subdirectory(apps/gpu/LBM/TrafficTest) add_subdirectory(apps/gpu/LBM/TrafficTest)
endif() endif()
\ No newline at end of file
# must be unique in a given SonarQube instance # must be unique in a given SonarQube instance
sonar.projectKey=vf:project:develop sonar.projectKey=vf:project:develop
# --- optional properties ---
# defaults to project key
sonar.projectName=VirtualFluids_dev sonar.projectName=VirtualFluids_dev
# defaults to 'not provided'
#sonar.projectVersion=1.0 sonar.projectVersion=0.1
sonar.language=cxx sonar.language=cxx
...@@ -36,4 +33,4 @@ sonar.cxx.gcc.reportPath=build/gcc_warnings.txt ...@@ -36,4 +33,4 @@ sonar.cxx.gcc.reportPath=build/gcc_warnings.txt
sonar.cxx.funccomplexity.threshold=10 sonar.cxx.funccomplexity.threshold=10
sonar.cxx.funcsize.threshold=20 sonar.cxx.funcsize.threshold=20
\ No newline at end of file
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment