[Toybox] human_readable top header.
Rob Landley
rob at landley.net
Thu May 16 17:08:52 PDT 2019
This commit from february says:
commit 706628b94e65cfa9e583d7a54d7cdd8de9f70c63
Author: Elliott Hughes <enh at google.com>
Date: Wed Feb 13 15:10:29 2019 -0800
top: use human_readable for the header lines too.
Even phones have enough RAM these days that KiB is not a reasonable
unit. Traditional top always uses MiB instead of always using KiB, but
we may as well just let human_readable pick a unit (that way if KiB is
reasonable on your box, that's what you'll get).
Except it doesn't. Linus Torvalds' first 386 in 1991 had 4 megs ram, meaning 4
digits, which would be shown as 4.0M losing precision already.
The problem is human_readable gives you 3 digits plus a unit, so instead of
devuan's kilobytes (yes, still, in the current release):
Tasks: 509 total, 2 running, 507 sleeping, 0 stopped, 0 zombie
%Cpu(s): 43.6 us, 9.4 sy, 0.1 ni, 44.8 id, 2.1 wa, 0.0 hi, 0.0 si, 0.0 st
KiB Mem : 16340584 total, 616500 free, 14289944 used, 1434140 buff/cache
KiB Swap: 16679932 total, 13636264 free, 3043668 used. 775996 avail Mem
You get:
Tasks: 507 total, 4 running, 503 sleeping, 0 stopped, 0 zombie
Mem: 16G total, 15G used, 681M free, 42M buffers
Swap: 16G total, 2.9G used, 13G free, 1.2G cached
400%cpu 55%user 0%nice 42%sys 303%idle 0%iow 0%irq 0%sirq 0%host
There's a whole lot of empty space in that display, and when my laptop is
swap-thrashing and Swap "used" is going down 4 megabytes/second (took me about
a week to do it to the new one, chrome is a memory hog _and_ won't show you more
than about 80 tabs/window), I can't even _see_ that on this display.
(Aside: a machine with >99 procesors would run out of space for the percentages.
Possibly at some point that should go back to 100% for the totals?)
Aesthetic issues are always hard. Possibly what I need to do is add a display
size field to human_readable so it knows how many digits of output to produce,
and when there's more than 3 don't decimalize, just do "12146M" and such.
Rob
More information about the Toybox
mailing list