CbmRoot
Loading...
Searching...
No Matches
MemoryLogger.h
Go to the documentation of this file.
1
/* Copyright (C) 2024 FIAS Frankfurt Institute for Advanced Studies, Frankfurt / Main
2
SPDX-License-Identifier: GPL-3.0-only
3
Authors: Felix Weiglhofer [committer] */
4
5
#pragma once
6
7
#include <cstddef>
8
14
namespace
cbm::algo
15
{
16
20
class
MemoryLogger
{
21
22
public
:
26
MemoryLogger
() =
default
;
27
31
~MemoryLogger
() =
default
;
32
36
void
Log
();
37
38
private
:
39
size_t
mLastRSS
= 0;
40
41
// Convert bytes to MB
42
// Template to allow for different integer types
43
template
<
typename
T>
44
T
BytesToMB
(T bytes)
const
;
45
};
46
47
}
// namespace cbm::algo
cbm::algo::MemoryLogger
Track the memory usage of the process and write it to the log.
Definition
MemoryLogger.h:20
cbm::algo::MemoryLogger::Log
void Log()
Log the current memory usage.
Definition
MemoryLogger.cxx:18
cbm::algo::MemoryLogger::MemoryLogger
MemoryLogger()=default
Constructor.
cbm::algo::MemoryLogger::~MemoryLogger
~MemoryLogger()=default
Destructor.
cbm::algo::MemoryLogger::mLastRSS
size_t mLastRSS
Definition
MemoryLogger.h:39
cbm::algo::MemoryLogger::BytesToMB
T BytesToMB(T bytes) const
Definition
MemoryLogger.cxx:13
cbm::algo
Definition
AlgoTraits.h:16
algo
base
util
MemoryLogger.h
Generated on Mon Feb 3 2025 23:03:43 for CbmRoot by
1.12.0