Ravenbrook / Projects / Memory Pool System / Issues

Memory Pool System


MPS issue job001150

Title: MPS doesn't provide enough feedback information about what it is doing or what it has done
Status: open
Priority: essential
Assigned user: Richard Brooksby
Product: mps
Organization: Ravenbrook
Description: The MPS provides no feedback information which allows a client program to find out what it is doing or what it has done, or any other statistical information such as counts of various operations or total bytes allocated, etc. This kind of information is needed to provide reassurance that the MPS is working, but also to help a programmer make good use of the MPS (not tuning, exactly, but simply avoiding abuse).
Some sample bits of data we might want are:
1. numbers of faults, to indicate how well barriers are working
2. allocation and collection statistics
3. current state: what's in progress?
4. feedback to help with chain size settings
See also Configura mail <http://info.ravenbrook.com/mail/2004/12/02/07-53-32/0.txt> RHSK 2005-03-10

Related Jobs:
job000666 "Difficult to tell what collections are happening"
Analysis: RB 2005-03-09
We need to gather a better list of information that might be required.
We need to design a generic interface for such information requests.
We need to implement the key information operations. Possibly we
need to throw out the idea of "telemetry" and replace it with
always-on statistics gathering.

RHSK 2005-12-09
I looked at the message mechanism.
See <http://info.ravenbrook.com/user/rhsk/mps/working/job/job001150/1150msgs.txt/>


RHSK 2005-12-09
I looked at telemetry.
See <http://info.ravenbrook.com/project/mps/doc/2006-05-11/telemetry-log-events/>


RHSK 2006-05-17
[GR 2004-12-02] "...
I remember us talking about some improved reporting facilities from MPS.
For my current situation it would be useful to get more info like
Number of pages used by MPS
Max number of pages used
Average number of pages used

For getting a better picture of what is going on in my virtual address space
it would be useful with some way to enumerate the pages used by MPS (or page
ranges).

It would be nice also to get a callback on the start of a bigger collection,
or some other interface to measure time spent in collection. Our microTime()
function typically has a resolution of 10 uS so it should be possible.

Simply a little bit less of a black box!
"


RHSK 2006-05-22
Essence is: communicating with the MPS-client developer.
- what information is helpful for them?
- must synthesise information: do this where? and into what 'language'/model?
- how do we export and present this info?


RHSK 2006-05-22
DRJ did some work on this under job000666. See:
cd branch/2003-02-17/gcgenmsg; p4 diff2 ...@39674 ...
DRJs work was in two parts:
- synthesise descriptions, eg. annotate each ArenaStartCollect with
a "why" code;
- various new message types to export this info.

RHSK 2006-05-25
As an example from Lisp GC, see <http://info.ravenbrook.com/mail/2006/05/25/17-59-05/0.txt>
How found: customer
Evidence: Raw notes from Configura workshop <http://info.ravenbrook.com/mail/2005/02/28/12-40-49/0.txt>.
The thread "Side-by-side comparison: MPS vs dumb stop-and-copy" shows where we had to measure things using other means and shouldn't've had to.
[GR 2004-12-02] <http://info.ravenbrook.com/mail/2004/12/02/07-53-32/0.txt>
Observed in: 1.105.0
Introduced in: 0.0.0
Test procedure: none
Created by: Richard Brooksby
Created on: 2005-03-09 18:11:35
Last modified by: Richard Kistruck
Last modified on: 2006-12-27 16:58:19
History: 2005-03-09 RB Created.
2005-03-10 RHSK Link to Configura mail.
2005-03-10 RHSK Subsumes job000666 (no longer).
2005-12-08 RHSK Use phrase "feedback information"
2005-12-09 RHSK Analysis: part of trace message lifecycle.
2006-05-22 RHSK more analysis; link to DRJ's branch; remove notes on workings of messages.
2006-05-25 RHSK link to example of Lisp GC feedback
2006-12-27 RHSK Unsubsume job000666, which is the initial _gc_start message implementation.

Fixes

Change Effect Date User Description
158620 open 2006-05-11 18:05:14 Richard Kistruck MPS: telemetry log events: notes, for job001150
add link in Doc index to new telemetry log events document
158619 open 2006-05-11 17:55:47 Richard Kistruck MPS: telemetry log events: notes (for job001150):
define Terminology, and give an Overview
158616 open 2006-05-11 16:59:59 Richard Kistruck MPS: telemetry log events: notes, for job001150

Generated at 2008-10-01 00:08:43 by $Id: //info.ravenbrook.com/infosys/cgi/issue.cgi#430 $

Copyright © Ravenbrook Limited. This document is provided "as is", without any express or implied warranty. In no event will the authors be held liable for any damages arising from the use of this document. You may not duplicate or reproduce this document in any form without the express permission of the copyright holder.

Ravenbrook / Projects / Memory Pool System / Issues