From 42aa343d9f6baa5eccabfb6cc7ebec1536583e16 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Atgeirr=20Fl=C3=B8=20Rasmussen?= Date: Tue, 6 Jun 2017 21:35:05 +0200 Subject: [PATCH] Write total solver time to TCPU. --- .../SimulatorFullyImplicitBlackoilEbos.hpp | 2 +- .../SimulatorFullyImplicitBlackoilOutput.hpp | 19 ++++++++++++------- 2 files changed, 13 insertions(+), 8 deletions(-) diff --git a/opm/autodiff/SimulatorFullyImplicitBlackoilEbos.hpp b/opm/autodiff/SimulatorFullyImplicitBlackoilEbos.hpp index 277d3cac9..e7e839db6 100644 --- a/opm/autodiff/SimulatorFullyImplicitBlackoilEbos.hpp +++ b/opm/autodiff/SimulatorFullyImplicitBlackoilEbos.hpp @@ -389,7 +389,7 @@ public: Dune::Timer perfTimer; perfTimer.start(); const double nextstep = adaptiveTimeStepping ? adaptiveTimeStepping->suggestedNextStep() : -1.0; - output_writer_.writeTimeStep( timer, state, well_state, solver->model(), false, nextstep ); + output_writer_.writeTimeStep( timer, state, well_state, solver->model(), false, nextstep, report); report.output_write_time += perfTimer.stop(); prev_well_state = well_state; diff --git a/opm/autodiff/SimulatorFullyImplicitBlackoilOutput.hpp b/opm/autodiff/SimulatorFullyImplicitBlackoilOutput.hpp index f7401b98d..d7afbab22 100644 --- a/opm/autodiff/SimulatorFullyImplicitBlackoilOutput.hpp +++ b/opm/autodiff/SimulatorFullyImplicitBlackoilOutput.hpp @@ -30,6 +30,7 @@ #include #include #include +#include #include #include @@ -228,8 +229,9 @@ namespace Opm const SimulationDataContainer& reservoirState, const Opm::WellStateFullyImplicitBlackoil& wellState, const Model& physicalModel, - bool substep = false, - const double nextstep = -1.0); + const bool substep = false, + const double nextstep = -1.0, + const SimulatorReport& simulatorReport = SimulatorReport()); /*! @@ -989,8 +991,9 @@ namespace Opm const SimulationDataContainer& localState, const WellStateFullyImplicitBlackoil& localWellState, const Model& physicalModel, - bool substep, - const double nextstep) + const bool substep, + const double nextstep, + const SimulatorReport& simulatorReport) { data::Solution localCellData{}; const RestartConfig& restartConfig = eclipseState_.getRestartConfig(); @@ -1022,9 +1025,11 @@ namespace Opm // Add suggested next timestep to extra data. extraRestartData["OPMEXTRA"] = std::vector(1, nextstep); - // @@@ HACK @@@ - // Add TCPU - miscSummaryData["TCPU"] = 100.0; + // Add TCPU if simulatorReport is not defaulted. + const double totalSolverTime = simulatorReport.solver_time; + if (totalSolverTime != 0.0) { + miscSummaryData["TCPU"] = totalSolverTime; + } } writeTimeStepWithCellProperties(timer, localState, localCellData, localWellState, miscSummaryData, extraRestartData, substep);