diff options
author | Chris Lattner <sabre@nondot.org> | 2002-11-18 21:45:55 +0000 |
---|---|---|
committer | Chris Lattner <sabre@nondot.org> | 2002-11-18 21:45:55 +0000 |
commit | a3ddb9b5cec829d400057cf55dd93e99f61a3669 (patch) | |
tree | a90ead65956638cddf0976908224f934a9de0d9a /llvm/include/Support/Timer.h | |
parent | 2a254b6aa66f1b71811470d4db7e598a6c2fb274 (diff) | |
download | bcm5719-llvm-a3ddb9b5cec829d400057cf55dd93e99f61a3669.tar.gz bcm5719-llvm-a3ddb9b5cec829d400057cf55dd93e99f61a3669.zip |
Add facility to compute peak memory usage
llvm-svn: 4752
Diffstat (limited to 'llvm/include/Support/Timer.h')
-rw-r--r-- | llvm/include/Support/Timer.h | 11 |
1 files changed, 11 insertions, 0 deletions
diff --git a/llvm/include/Support/Timer.h b/llvm/include/Support/Timer.h index 4e444d81269..8538bb972ae 100644 --- a/llvm/include/Support/Timer.h +++ b/llvm/include/Support/Timer.h @@ -35,6 +35,8 @@ class Timer { double UserTime; // User time elapsed double SystemTime; // System time elapsed long MemUsed; // Memory allocated (in bytes) + long PeakMem; // Peak memory used + long PeakMemBase; // Temporary for peak calculation... std::string Name; // The name of this time variable bool Started; // Has this time variable ever been started? TimerGroup *TG; // The TimerGroup this Timer is in. @@ -47,6 +49,7 @@ public: double getProcessTime() const { return UserTime+SystemTime; } double getWallTime() const { return Elapsed; } long getMemUsed() const { return MemUsed; } + long getPeakMem() const { return PeakMem; } std::string getName() const { return Name; } const Timer &operator=(const Timer &T) { @@ -54,6 +57,8 @@ public: UserTime = T.UserTime; SystemTime = T.SystemTime; MemUsed = T.MemUsed; + PeakMem = T.PeakMem; + PeakMemBase = T.PeakMemBase; Name = T.Name; Started = T.Started; assert (TG == T.TG && "Can only assign timers in the same TimerGroup!"); @@ -77,6 +82,12 @@ public: /// void stopTimer(); + /// addPeakMemoryMeasurement - This method should be called whenever memory + /// usage needs to be checked. It adds a peak memory measurement to the + /// currently active timers, which will be printed when the timer group prints + /// + static void addPeakMemoryMeasurement(); + /// print - Print the current timer to standard error, and reset the "Started" /// flag. void print(const Timer &Total); |