ATLAS Offline Software
Toggle main menu visibility
Loading...
Searching...
No Matches
PhysicsAnalysis
D3PDTools
EventLoop
EventLoop
LeakCheckModule.h
Go to the documentation of this file.
1
/*
2
Copyright (C) 2002-2019 CERN for the benefit of the ATLAS collaboration
3
*/
4
7
8
9
10
#ifndef EVENT_LOOP__LEAK_CHECK_MODULE_H
11
#define EVENT_LOOP__LEAK_CHECK_MODULE_H
12
13
#include <
EventLoop/Global.h
>
14
15
#include <
AsgTools/PropertyWrapper.h
>
16
#include <
EventLoop/Module.h
>
17
#include <Rtypes.h>
18
19
namespace
EL
20
{
21
namespace
Detail
22
{
24
25
class
LeakCheckModule
final
:
public
Module
26
{
27
//
28
// public interface
29
//
30
31
public
:
32
33
using
Module::Module;
34
35
virtual
StatusCode
postFirstEvent
(
ModuleData
& data)
override
;
36
virtual
StatusCode
onWorkerEnd
(
ModuleData
& data)
override
;
37
virtual
StatusCode
postFinalize
(
ModuleData
& data)
override
;
38
39
Gaudi::Property<int>
absResidentLimit
{
this
,
"absResidentLimit"
, 10000};
40
Gaudi::Property<int>
absVirtualLimit
{
this
,
"absVirtualLimit"
, 0};
41
Gaudi::Property<int>
perEvResidentLimit
{
this
,
"perEvResidentLimit"
, 10};
42
Gaudi::Property<int>
perEvVirtualLimit
{
this
,
"perEvVirtualLimit"
, 0};
43
Gaudi::Property<bool>
failOnLeak
{
this
,
"failOnLeak"
,
false
};
44
45
//
46
// private interface
47
//
48
50
private
:
51
uint64_t
m_skippedEvents
= 0;
52
54
private
:
55
Long_t
m_initMemResident
= -1;
56
58
private
:
59
Long_t
m_initMemVirtual
= -1;
60
62
private
:
63
Long_t
m_finMemResident
= -1;
64
66
private
:
67
Long_t
m_finMemVirtual
= -1;
68
74
private
:
75
Float_t
m_incResBuffer
= 0;
76
78
private
:
79
Float_t
m_incVirtBuffer
= 0;
80
81
92
private
:
93
Long_t
memIncreaseResident
()
const
;
94
95
106
private
:
107
Long_t
memIncreaseVirtual
()
const
;
108
};
109
}
110
}
111
112
#endif
Global.h
Module.h
PropertyWrapper.h
EL::Detail::LeakCheckModule
a Module implementing a simple leak checker
Definition
LeakCheckModule.h:26
EL::Detail::LeakCheckModule::m_initMemVirtual
Long_t m_initMemVirtual
Amount of virtual memory used after initialisation in kB.
Definition
LeakCheckModule.h:59
EL::Detail::LeakCheckModule::absResidentLimit
Gaudi::Property< int > absResidentLimit
Definition
LeakCheckModule.h:39
EL::Detail::LeakCheckModule::m_incResBuffer
Float_t m_incResBuffer
buffer for the resident memory increase branch
Definition
LeakCheckModule.h:75
EL::Detail::LeakCheckModule::m_finMemResident
Long_t m_finMemResident
Amount of resident memory used after finalisation in kB.
Definition
LeakCheckModule.h:63
EL::Detail::LeakCheckModule::memIncreaseVirtual
Long_t memIncreaseVirtual() const
Virtual memory leak/increase during the job.
Definition
LeakCheckModule.cxx:143
EL::Detail::LeakCheckModule::perEvResidentLimit
Gaudi::Property< int > perEvResidentLimit
Definition
LeakCheckModule.h:41
EL::Detail::LeakCheckModule::m_skippedEvents
uint64_t m_skippedEvents
number of skipped events
Definition
LeakCheckModule.h:51
EL::Detail::LeakCheckModule::absVirtualLimit
Gaudi::Property< int > absVirtualLimit
Definition
LeakCheckModule.h:40
EL::Detail::LeakCheckModule::postFinalize
virtual StatusCode postFinalize(ModuleData &data) override
actions after algorithms have been finalized
Definition
LeakCheckModule.cxx:51
EL::Detail::LeakCheckModule::memIncreaseResident
Long_t memIncreaseResident() const
Resident memory leak/increase during the job.
Definition
LeakCheckModule.cxx:130
EL::Detail::LeakCheckModule::perEvVirtualLimit
Gaudi::Property< int > perEvVirtualLimit
Definition
LeakCheckModule.h:42
EL::Detail::LeakCheckModule::m_finMemVirtual
Long_t m_finMemVirtual
Amount of virtual memory used after finalisation in kB.
Definition
LeakCheckModule.h:67
EL::Detail::LeakCheckModule::postFirstEvent
virtual StatusCode postFirstEvent(ModuleData &data) override
action after processing first event
Definition
LeakCheckModule.cxx:32
EL::Detail::LeakCheckModule::failOnLeak
Gaudi::Property< bool > failOnLeak
Definition
LeakCheckModule.h:43
EL::Detail::LeakCheckModule::onWorkerEnd
virtual StatusCode onWorkerEnd(ModuleData &data) override
action at the end of the worker job
Definition
LeakCheckModule.cxx:86
EL::Detail::LeakCheckModule::m_initMemResident
Long_t m_initMemResident
Amount of resident memory used after initialisation in kB.
Definition
LeakCheckModule.h:55
EL::Detail::LeakCheckModule::m_incVirtBuffer
Float_t m_incVirtBuffer
buffer for the virtual memory increase branch
Definition
LeakCheckModule.h:79
EL::Detail::Module
the base class for EventLoop instrumentation module
Definition
PhysicsAnalysis/D3PDTools/EventLoop/EventLoop/Module.h:39
EL::Detail
Definition
AsgComponentFactories.h:20
EL::Detail::ManagerStep::final
@ final
Definition
ManagerStep.h:136
EL
This module defines the arguments passed from the BATCH driver to the BATCH worker.
Definition
AsgComponentFactories.h:16
EL::StatusCode
::StatusCode StatusCode
StatusCode definition for legacy code.
Definition
PhysicsAnalysis/D3PDTools/EventLoop/EventLoop/StatusCode.h:22
EL::Detail::ModuleData
the data the EventLoop core classes are sharing with the Module implementation
Definition
ModuleData.h:64
Generated on
for ATLAS Offline Software by
1.17.0