diff options
author | Tomás Touceda <chiiph@leap.se> | 2014-04-09 16:16:47 -0300 |
---|---|---|
committer | Tomás Touceda <chiiph@leap.se> | 2014-04-09 16:16:47 -0300 |
commit | 8935765a0d0a6956f1140bb7ab0bd1af57b4303f (patch) | |
tree | ec4f2147fcf0f94a8e3d11e47e27566d30a226bd /scripts/profiling/backends_cpu_usage/log_cpu_usage.py | |
parent | 8b8d9befbe3e60753e73bc7aaf1b8842a1846046 (diff) | |
parent | 11757fb0d071b753819a04d8504a72baed80db2f (diff) |
Merge remote-tracking branch 'refs/remotes/drebs/feature/5386_improve-sync' into develop
Diffstat (limited to 'scripts/profiling/backends_cpu_usage/log_cpu_usage.py')
-rwxr-xr-x | scripts/profiling/backends_cpu_usage/log_cpu_usage.py | 46 |
1 files changed, 46 insertions, 0 deletions
diff --git a/scripts/profiling/backends_cpu_usage/log_cpu_usage.py b/scripts/profiling/backends_cpu_usage/log_cpu_usage.py new file mode 100755 index 00000000..2674e1ff --- /dev/null +++ b/scripts/profiling/backends_cpu_usage/log_cpu_usage.py @@ -0,0 +1,46 @@ +#!/usr/bin/python + + +# Get the CPU usage and print to file. + + +import psutil +import time +import argparse +import os +import threading + + +class LogCpuUsage(threading.Thread): + + def __init__(self, fname): + threading.Thread.__init__(self) + self._stopped = True + self._fname = fname + + def run(self): + self._stopped = False + with open(self._fname, 'w') as f: + start = time.time() + while self._stopped is False: + now = time.time() + f.write("%f %f\n" % ((now - start), psutil.cpu_percent())) + time.sleep(0.01) + + def stop(self): + self._stopped = True + + +if __name__ == '__main__': + parser = argparse.ArgumentParser() + parser.add_argument('file', help='where to save output') + args = parser.parse_args() + + if os.path.isfile(args.file): + replace = raw_input('File %s exists, replace it (y/N)? ' % args.file) + if replace.lower() != 'y': + print 'Bailing out.' + exit(1) + + log_cpu = LogCpuUsage(args.file) + log_cpu.run() |