Mercurial > hg
view contrib/memory.py @ 41650:f8b18583049f
add: pass around uipathfn and use instead of m.rel() (API)
For now, the uipathfn we pass around always prints relative paths just
like before, so this should have no effect. Well, there's one little
change: I also made the "skipping missing subrepository: %s\n" message
relative.
Differential Revision: https://phab.mercurial-scm.org/D5901
author | Martin von Zweigbergk <martinvonz@google.com> |
---|---|
date | Thu, 07 Feb 2019 11:15:30 -0800 |
parents | de5c9d0e02ea |
children | 2372284d9457 |
line wrap: on
line source
# memory.py - track memory usage # # Copyright 2009 Matt Mackall <mpm@selenic.com> and others # # This software may be used and distributed according to the terms of the # GNU General Public License version 2 or any later version. '''helper extension to measure memory usage Reads current and peak memory usage from ``/proc/self/status`` and prints it to ``stderr`` on exit. ''' from __future__ import absolute_import def memusage(ui): """Report memory usage of the current process.""" result = {'peak': 0, 'rss': 0} with open('/proc/self/status', 'r') as status: # This will only work on systems with a /proc file system # (like Linux). for line in status: parts = line.split() key = parts[0][2:-1].lower() if key in result: result[key] = int(parts[1]) ui.write_err(", ".join(["%s: %.1f MiB" % (k, v / 1024.0) for k, v in result.iteritems()]) + "\n") def extsetup(ui): ui.atexit(memusage, ui)