Mercurial > hg
view contrib/memory.py @ 48113:e2da3ec94169
dirstate-item: point out that `merged` is set only with p1_tracked
This is currently True, and we will use this fact to simplify the API in the
next commit. However, we add this assertion first to validate that this is
True in the whole test-suite.
author | Pierre-Yves David <pierre-yves.david@octobus.net> |
---|---|
date | Thu, 30 Sep 2021 18:07:31 +0200 |
parents | d4ba4d51f85f |
children | 6000f5b25c9b |
line wrap: on
line source
# memory.py - track memory usage # # Copyright 2009 Olivia Mackall <olivia@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)