pybootchartgui: simplify drawing of memory usage

The internal representation after parsing now matches exactly
what the drawing code needs, thus speeding up drawing a bit.
However, the main motivation is to store exactly that required
information in a more compact file.

(From OE-Core rev: ca06e67a0bb5820b38fda4c8dfee20764c1e59ae)

Signed-off-by: Patrick Ohly <patrick.ohly@intel.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
This commit is contained in:
Patrick Ohly
2016-11-30 10:50:09 +01:00
committed by Richard Purdie
parent 6b5037bf2c
commit 820c042b36
3 changed files with 23 additions and 7 deletions

View File

@@ -53,6 +53,22 @@ class MemSample:
# discard incomplete samples
return [v for v in MemSample.used_values if v not in keys] == []
class DrawMemSample:
"""
Condensed version of a MemSample with exactly the values used by the drawing code.
Initialized either from a valid MemSample or
a tuple/list of buffer/used/cached/swap values.
"""
def __init__(self, mem_sample):
self.time = mem_sample.time
if isinstance(mem_sample, MemSample):
self.buffers = mem_sample.records['MemTotal'] - mem_sample.records['MemFree']
self.used = mem_sample.records['MemTotal'] - mem_sample.records['MemFree'] - mem_sample.records['Buffers']
self.cached = mem_sample.records['Cached']
self.swap = mem_sample.records['SwapTotal'] - mem_sample.records['SwapFree']
else:
self.buffers, self.used, self.cached, self.swap = mem_sample
class DiskSpaceSample:
def __init__(self, time):
self.time = time