Skip to content
Snippets Groups Projects
Commit b5b6eb2a authored by Anna Wellmann's avatar Anna Wellmann
Browse files

Merge branch 'developAnna' of...

Merge branch 'developAnna' of https://git.rz.tu-bs.de/m.schoenherr/VirtualFluids_dev into developAnna
parents 6e418219 0c82a9e8
No related branches found
No related tags found
1 merge request!104Add Communication Hiding to GPU version
......@@ -482,7 +482,9 @@ gcov_gcc_9:
- coverage/
reports:
cobertura: coverage/coverage.xml
coverage_report:
coverage_format: cobertura
path: coverage/coverage.xml
cache:
key: "$CI_JOB_NAME-$CI_COMMIT_REF_SLUG"
......
......@@ -110,7 +110,7 @@ void multipleLevel(const std::string& configPath)
bool useGridGenerator = true;
bool useLevels = true;
// para->setUseStreams(); // set in config
// para->setUseStreams(useStreams); // set in config
// para->useReducedCommunicationAfterFtoC = true; // set in config
para->setCalcTurbulenceIntensity(false);
......
......@@ -128,7 +128,6 @@ void multipleLevel(const std::string& configPath)
para->setCalcTurbulenceIntensity(true);
if (para->getNumprocs() == 1) {
useStreams = false;
para->useReducedCommunicationAfterFtoC = false;
}
......@@ -183,8 +182,8 @@ void multipleLevel(const std::string& configPath)
para->setMaxLevel(1);
if (useStreams)
para->setUseStreams();
para->setUseStreams(useStreams);
// para->setMainKernel("CumulantK17CompChim");
para->setMainKernel("CumulantK17CompChimStream");
*logging::out << logging::Logger::INFO_HIGH << "Kernel: " << para->getMainKernel() << "\n";
......
......@@ -126,7 +126,6 @@ void multipleLevel(const std::string& configPath)
bool useStreams = para->getUseStreams();
if (para->getNumprocs() == 1) {
useStreams = false;
para->useReducedCommunicationAfterFtoC = false;
}
if (scalingType != "weak" && scalingType != "strong")
......@@ -175,8 +174,7 @@ void multipleLevel(const std::string& configPath)
para->setMaxLevel(1);
if (useStreams)
para->setUseStreams();
para->setUseStreams(useStreams);
//para->setMainKernel("CumulantK17CompChim");
para->setMainKernel("CumulantK17CompChimStream");
*logging::out << logging::Logger::INFO_HIGH << "Kernel: " << para->getMainKernel() << "\n";
......
This diff is collapsed.
......@@ -890,12 +890,18 @@ private:
// initial condition
std::function<void(real, real, real, real &, real &, real &, real &)> initialCondition;
////////////////////////////////////////////////////////////////////////////
// cuda streams
//! determines whether streams and thus communication hiding should be used
bool useStreams{ false };
std::unique_ptr<CudaStreamManager> cudaStreamManager;
public:
void setUseStreams();
//! sets whether streams and thus communication hiding should be used
/*! This function is only useful for simulations on multiple GPUs. If there is only one MPI process, the passed value is automatically overwritten with false. */
void setUseStreams(bool useStreams);
bool getUseStreams();
std::unique_ptr<CudaStreamManager> &getStreamManager();
bool getKernelNeedsFluidNodeIndicesToRun();
......
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