mirror of
https://github.com/OPM/ResInsight.git
synced 2026-10-14 09:22:13 -05:00
Add Memory Report dialog
Compute how much memory is used for result/case/total. Show as text in dialog.
This commit is contained in:
1 parent
0c7a8ad2de
commit
df083a870a
8 files changed
+227
-15
No files matched your search
@@ -216,6 +216,24 @@ void RigCaseCellResultsData::mobileVolumeWeightedMean( const RigEclipseResultAdd
|
||||
statistics( resVarAddr )->mobileVolumeWeightedMean( timeStepIndex, meanValue );
|
||||
}
|
||||
|
||||
//--------------------------------------------------------------------------------------------------
|
||||
///
|
||||
//--------------------------------------------------------------------------------------------------
|
||||
std::map<std::string, size_t> RigCaseCellResultsData::resultValueCount() const
|
||||
{
|
||||
std::map<std::string, size_t> memoryUse;
|
||||
|
||||
for ( size_t i = 0; i < m_cellScalarResults.size(); i++ )
|
||||
{
|
||||
if ( allocatedValueCount( i ) > 0 )
|
||||
{
|
||||
memoryUse[m_resultInfos[i].resultName().toStdString()] = allocatedValueCount( i );
|
||||
}
|
||||
}
|
||||
|
||||
return memoryUse;
|
||||
}
|
||||
|
||||
//--------------------------------------------------------------------------------------------------
|
||||
///
|
||||
//--------------------------------------------------------------------------------------------------
|
||||
@@ -2838,22 +2856,25 @@ RigAllanDiagramData* RigCaseCellResultsData::allanDiagramData()
|
||||
//--------------------------------------------------------------------------------------------------
|
||||
bool RigCaseCellResultsData::isDataPresent( size_t scalarResultIndex ) const
|
||||
{
|
||||
if ( scalarResultIndex >= resultCount() )
|
||||
return allocatedValueCount( scalarResultIndex ) > 0;
|
||||
}
|
||||
|
||||
//--------------------------------------------------------------------------------------------------
|
||||
///
|
||||
//--------------------------------------------------------------------------------------------------
|
||||
size_t RigCaseCellResultsData::allocatedValueCount( size_t scalarResultIndex ) const
|
||||
{
|
||||
if ( scalarResultIndex >= resultCount() ) return 0;
|
||||
|
||||
const std::vector<std::vector<double>>& valuesAllTimeSteps = m_cellScalarResults[scalarResultIndex];
|
||||
|
||||
size_t valueCount = 0;
|
||||
for ( const auto& values : valuesAllTimeSteps )
|
||||
{
|
||||
return false;
|
||||
valueCount += values.size();
|
||||
}
|
||||
|
||||
const std::vector<std::vector<double>>& data = m_cellScalarResults[scalarResultIndex];
|
||||
|
||||
for ( size_t tsIdx = 0; tsIdx < data.size(); ++tsIdx )
|
||||
{
|
||||
if ( !data[tsIdx].empty() )
|
||||
{
|
||||
return true;
|
||||
}
|
||||
}
|
||||
|
||||
return false;
|
||||
return valueCount;
|
||||
}
|
||||
|
||||
//--------------------------------------------------------------------------------------------------
|
||||
|
||||
@@ -99,6 +99,9 @@ public:
|
||||
void mobileVolumeWeightedMean( const RigEclipseResultAddress& resVarAddr, double& meanValue );
|
||||
void mobileVolumeWeightedMean( const RigEclipseResultAddress& resVarAddr, size_t timeStepIndex, double& meanValue );
|
||||
|
||||
// Return the number of double values allocated for each result
|
||||
std::map<std::string, size_t> resultValueCount() const;
|
||||
|
||||
// Access meta-information about the results
|
||||
|
||||
size_t timeStepCount( const RigEclipseResultAddress& resVarAddr ) const;
|
||||
@@ -199,7 +202,8 @@ private:
|
||||
void computeFaultDistance();
|
||||
void computeNncsCells();
|
||||
|
||||
bool isDataPresent( size_t scalarResultIndex ) const;
|
||||
bool isDataPresent( size_t scalarResultIndex ) const;
|
||||
size_t allocatedValueCount( size_t scalarResultIndex ) const;
|
||||
|
||||
void assignValuesToTemporaryLgrs( const QString& resultName, std::vector<double>& values );
|
||||
|
||||
|
||||
Reference in new issue
Block a user