dockapps/wmmon/CHANGES
Barry Kelly e2363d30fc wmmon I/O monitor bug fixes:
wmmon/CHANGES:
  Updated for 1.2b1.

wmmon/Makefile:
  Added debug build with -g3; default build with -O3. Note:
  This makefile isn't perfect. You must "make clean" when switching
  between "make" and "make debug" otherwise objects won't compile.
  I'm sure it's a simple dependency issue, but I am not an expert with
  Makefiles. I intend to fix this, but it's a low priority.

wmmon/wmmon/wmmon.c:
  Updated changelog. Added #define HISTORY_ENTRIES to replace hardcoded
  values.

  DrawStats_io():
    Removed static variable global_io_scale. Replaced with a local
    variable.  This should improve graphing - scale was growing, but
    never shrinking, meaning as time passed, graphed values were
    downscaled and not displayed.

    Fixed rounding errors caused by use of integer types which were
    causing very small values not to appear on graph. Added code to
    round very low values up, so they will appear on meter and graph.
    We are making a reasonable compromise between readability and
    accuracy. Side effect is that small peaks (greater than 0 but less
    than our rounded-up tiny values) will actually appear as dips
    instead of peaks. I feel this is acceptable, since it still conveys
    an impression of "jitter" to the user. Fixing this would have
    involved further modifying the data before we graph it, which would
    defeat the purpose of improving accuracy.

    Tweaked load bar scaling algorithm for reabality and sensitivity.

  update_stat_io():
    Added a "stale" timeout for static long maxdiskio (determines
    scaling of load bar). New behaviour is that every couple of minutes
    we discard our saved peak value and resample. This prevents an
    anomalously huge I/O spike from making more typical values fail to
    trigger the load bar for the rest of the app's lifetime. Side
    effect will be that every couple of minutes, we will get an
    anomalous spike in the load bar as it recalibrates. This anomaly
    only affects the bar, not the graph.

  getWidth():
    Fixed integer rounding issue similar to that in DrawStats_io().
    Added similar rounding code to round up very small values so we
    don't have the illusion of an idle system following a huge spike.
2012-03-26 08:48:39 +01:00

43 lines
1.8 KiB
Plaintext

WMMon changes.
Version Description
--------------------------------------------------------------
1.2b1 - Released 20120325
- I/O monitor - updated to use /proc/diskstats instead
of obsolete /proc/stat interface, which is no longer
present in post 2.6 kernels. TODO: The non-/proc based
solutions used in the various BSD ports trees should
be incorporated into mainline version.
- I/O monitor - Fixed scaling issues with graph caused
by improper use of static data. The graph would
continually scale up, making smaller values invisible.
Eventually the system would appear to be idle, only
graphing the biggest spikes. A similar issue affecting
the upper-right meter is also fixed. Meter scaling is
recalibrated every couple of minutes to avoid losing
meter funtionality after anomalously large peaks.
- I/O Monitor - Fixed rounding errors caused by use of
integer types, which were causing relatively small
values not to appear on graph or meter. Added code to
round very low values up, so they will appear on meter
and graph.
- ONGOING: Style edits to improve readability and
maintainability (removing hardcoded values, adding
newlines to "if" conditions, etc).
1.0b2 - Released 980520
- Vastly reduced CPU usage in CPU & IO mode,
MEM/SWAP/UPTIME (i.e. SysInfo) only updated
when visible now and now uses global file
descriptors to reduce filesystem overhead,
based on diff by Dave Harden (dharden@wisewire.com);
- Fixed memory overflow bug;
- Memory gauge now displays real used mem, buffered
& cached mem are no longer being displayed;
- Added -i & -s parameters to select startupmode, based
on diff by Brendan Knox (knoxy@origob.demon.co.uk);
1.0b1 - Released 980513
- First initial stable public BETA release.