The Gaudi Framework  v33r1 (b1225454)
Memory.h
Go to the documentation of this file.
1 /***********************************************************************************\
2 * (c) Copyright 1998-2019 CERN for the benefit of the LHCb and ATLAS collaborations *
3 * *
4 * This software is distributed under the terms of the Apache version 2 licence, *
5 * copied verbatim in the file "LICENSE". *
6 * *
7 * In applying this licence, CERN does not waive the privileges and immunities *
8 * granted to it by virtue of its status as an Intergovernmental Organization *
9 * or submit itself to any jurisdiction. *
10 \***********************************************************************************/
11 //====================================================================
12 // Memory.h
13 //--------------------------------------------------------------------
14 //
15 // Package : System (The LHCb System service)
16 //
17 // Description: Information of memory usage from a given process
18 //
19 // Author : M.Frank
20 // Created : 13/11/00
21 // Changes :
22 //
23 //====================================================================
24 #ifndef GAUDIKERNEL_MEMORY_H
25 #define GAUDIKERNEL_MEMORY_H
26 
27 // Framework include files
28 #include "GaudiKernel/Kernel.h"
29 #include "GaudiKernel/SystemBase.h"
30 
63 namespace System {
67  GAUDI_API long adjustMemory( MemoryUnit typ, long value );
69  GAUDI_API long procID();
71  GAUDI_API long parentID( InfoType fetch = ProcessBasics, long pid = -1 );
73  GAUDI_API long affinityMask( InfoType fetch = ProcessBasics, long pid = -1 );
75  GAUDI_API long exitStatus( InfoType fetch = ProcessBasics, long pid = -1 );
77  GAUDI_API long basePriority( InfoType fetch = ProcessBasics, long pid = -1 );
79  GAUDI_API long priorityBoost( InfoType fetch = PriorityBoost, long pid = -1 );
80 
82  GAUDI_API long numPageFault( InfoType fetch = Memory, long pid = -1 );
84  GAUDI_API long pagefileUsage( MemoryUnit unit = kByte, InfoType fetch = Memory, long pid = -1 );
86  GAUDI_API long pagefileUsagePeak( MemoryUnit unit = kByte, InfoType fetch = Memory, long pid = -1 );
88  GAUDI_API long pagefileUsageLimit( MemoryUnit unit = kByte, InfoType fetch = Quota, long pid = -1 );
89 
91  GAUDI_API long nonPagedMemory( MemoryUnit unit = kByte, InfoType fetch = Memory, long pid = -1 );
93  GAUDI_API long nonPagedMemoryPeak( MemoryUnit unit = kByte, InfoType fetch = Memory, long pid = -1 );
95  GAUDI_API long nonPagedMemoryLimit( MemoryUnit unit = kByte, InfoType fetch = Quota, long pid = -1 );
96 
98  GAUDI_API long pagedMemory( MemoryUnit unit = kByte, InfoType fetch = Memory, long pid = -1 );
100  GAUDI_API long pagedMemoryPeak( MemoryUnit unit = kByte, InfoType fetch = Memory, long pid = -1 );
102  GAUDI_API long pagedMemoryLimit( MemoryUnit unit = kByte, InfoType fetch = Quota, long pid = -1 );
103 
105  GAUDI_API long minMemoryLimit( MemoryUnit unit = kByte, InfoType fetch = Quota, long pid = -1 );
107  GAUDI_API long maxMemoryLimit( MemoryUnit unit = kByte, InfoType fetch = Quota, long pid = -1 );
109  GAUDI_API long mappedMemory( MemoryUnit unit = kByte, InfoType fetch = Memory, long pid = -1 );
111  GAUDI_API long mappedMemoryPeak( MemoryUnit unit = kByte, InfoType fetch = Memory, long pid = -1 );
113  GAUDI_API long virtualMemory( MemoryUnit unit = kByte, InfoType fetch = Memory, long pid = -1 );
115  GAUDI_API long virtualMemoryPeak( MemoryUnit unit = kByte, InfoType fetch = Memory, long pid = -1 );
117  GAUDI_API long virtualMemoryLimit( MemoryUnit unit = kByte, InfoType fetch = Quota, long pid = -1 );
118 } // namespace System
119 #endif // GAUDIKERNEL_MEMORY_H
GAUDI_API long maxMemoryLimit(MemoryUnit unit=kByte, InfoType fetch=Quota, long pid=-1)
System Process Limits: Maximum amount of virtual memory this process is allowed to use.
Definition: Memory.cpp:220
GAUDI_API long mappedMemoryPeak(MemoryUnit unit=kByte, InfoType fetch=Memory, long pid=-1)
Basic Process Information: priority boost.
Definition: Memory.cpp:204
GAUDI_API long parentID(InfoType fetch=ProcessBasics, long pid=-1)
Basic Process Information: Parent's process ID.
Definition: Memory.cpp:89
GAUDI_API long exitStatus(InfoType fetch=ProcessBasics, long pid=-1)
Basic Process Information: Exit status (does not really make sense for the running process,...
Definition: Memory.cpp:103
GAUDI_API long nonPagedMemory(MemoryUnit unit=kByte, InfoType fetch=Memory, long pid=-1)
Basic Process Information: Current usage of non paged memory.
Definition: Memory.cpp:125
GAUDI_API long adjustMemory(MemoryUnit typ, long value)
Convert time from kByte to requested representation (Experts only)
Definition: Memory.cpp:44
Note: OS specific details for environment resolution.
Definition: Debugger.h:29
GAUDI_API long priorityBoost(InfoType fetch=PriorityBoost, long pid=-1)
Basic Process Information: priority boost.
Definition: Memory.cpp:110
GAUDI_API long pagedMemoryPeak(MemoryUnit unit=kByte, InfoType fetch=Memory, long pid=-1)
Basic Process Information: Maximum of paged memory occupied by the process 'pid'.
Definition: Memory.cpp:149
GAUDI_API long nonPagedMemoryPeak(MemoryUnit unit=kByte, InfoType fetch=Memory, long pid=-1)
Basic Process Information: Peak usage of non paged memory.
Definition: Memory.cpp:117
GAUDI_API long nonPagedMemoryLimit(MemoryUnit unit=kByte, InfoType fetch=Quota, long pid=-1)
System Process Limits: Maximum amount of non-paged memory this process is allowed to use.
Definition: Memory.cpp:133
GAUDI_API long affinityMask(InfoType fetch=ProcessBasics, long pid=-1)
Basic Process Information: Affinity mask.
Definition: Memory.cpp:96
GAUDI_API long virtualMemoryLimit(MemoryUnit unit=kByte, InfoType fetch=Quota, long pid=-1)
System Process Limits: Maximum amount of the page file this process is allowed to use.
Definition: Memory.cpp:242
GAUDI_API long pagedMemoryLimit(MemoryUnit unit=kByte, InfoType fetch=Quota, long pid=-1)
Basic Process Information: Amount of paged memory that can be occupied by the process 'pid'.
Definition: Memory.cpp:157
GAUDI_API long pagefileUsageLimit(MemoryUnit unit=kByte, InfoType fetch=Quota, long pid=-1)
Basic Process Information: Peak usage of page file.
Definition: Memory.cpp:187
MemoryUnit
Unit of memory.
Definition: Memory.h:65
GAUDI_API long mappedMemory(MemoryUnit unit=kByte, InfoType fetch=Memory, long pid=-1)
Basic Process Information: priority boost.
Definition: Memory.cpp:197
GAUDI_API long pagefileUsagePeak(MemoryUnit unit=kByte, InfoType fetch=Memory, long pid=-1)
Basic Process Information: Peak usage of page file.
Definition: Memory.cpp:179
GAUDI_API long numPageFault(InfoType fetch=Memory, long pid=-1)
Basic Process Information: Number of page faults.
Definition: Memory.cpp:165
GAUDI_API long virtualMemory(MemoryUnit unit=kByte, InfoType fetch=Memory, long pid=-1)
Basic Process Information: priority boost.
Definition: Memory.cpp:228
GAUDI_API long minMemoryLimit(MemoryUnit unit=kByte, InfoType fetch=Quota, long pid=-1)
System Process Limits: Minimum amount of virtual memory this process may use.
Definition: Memory.cpp:212
GAUDI_API long procID()
Basic Process Information: Process ID.
Definition: Memory.cpp:83
GAUDI_API long basePriority(InfoType fetch=ProcessBasics, long pid=-1)
Basic Process Information: Base priority.
Definition: Memory.cpp:76
GAUDI_API long virtualMemoryPeak(MemoryUnit unit=kByte, InfoType fetch=Memory, long pid=-1)
Basic Process Information: priority boost.
Definition: Memory.cpp:235
#define GAUDI_API
Definition: Kernel.h:81
GAUDI_API long pagefileUsage(MemoryUnit unit=kByte, InfoType fetch=Memory, long pid=-1)
Basic Process Information: Current page file usage.
Definition: Memory.cpp:172
GAUDI_API long pagedMemory(MemoryUnit unit=kByte, InfoType fetch=Memory, long pid=-1)
Basic Process Information: Amount of paged memory currently occupied by the process 'pid'.
Definition: Memory.cpp:141
InfoType
Enumeration for fetching information.
Definition: SystemBase.h:28