Phil Henshaw wrote:
>> The "user negotiated solutions" reduce to the question of a shared values.
>>     
>
> Well, not as I see it.  That would be the central manager's assumption
> for setting up rules that are to be made self-consistent, and excluding the
> environment's inconsistencies from consideration.  From an inclusive view,
> though, the individual users will have different needs, interests,
> information and perceptions and that's the general problem.
For one thing, a program, or a user of a program, can make statements of 
intent.

Example 1: A Linux program that monitors another can ask to keep memory 
resident and also ask for a modest scheduling frequency.   It could do 
this to ensure that a peer program would get most of the CPU cycles, but 
on the other hand that it would be able to count on getting enough 
cycles to be able to periodically send the result of the peer 
calculation to some I/O device.  Say, wavelet compression of an image 
taken on a satellite before it gets sent back to earth.

Example 2:  I'm leaving work and I have a job I want done by morning.  
Rather than asking for more than I need, I make the best calculation I 
can of how much CPU time the job will take and look at the queue 
schedule for the upcoming 12 hours.   In particular, I can look for 
holes in this calendar.   Depending on what's likely to be available, I 
can either ask for a giant number of processors for only an hour, or a 
small number for all 12.   I have an incentive to make realistic 
estimates and to fit it into whats available.
> There are lots of things that virtualization might work for, and that's
> a good way of saying it.  It still requires the global "God's eye view" of
> things that no one naturally has... though.
In the case of computer resource sharing, I don't agree.  First of all, 
people know what the system is and how fast it can in-principle 
operate.   When performances drops below some fraction, users will 
complain or leave.  They can't complain about unfair hogging, because 
that can be dealt with fairly.
Secondly, everything the computer does can be measured.  Common code 
paths can be identified and compressed.   A typical computer system has 
a large number of DLLs, or frameworks, or shared libraries, etc. that 
represent stuff in memory that everyone shares, i.e. they name the 
resource instead of copying it (shared values in some sense).   Jobs can 
even be profiled and marginalized when shown to be doing wasteful 
things.   A "God's eye view" can be approximated by direct measurement, 
using statements of intent, and by inference from the historical 
record.   Much more so than in natural systems.  

Marcus

============================================================
FRIAM Applied Complexity Group listserv
Meets Fridays 9a-11:30 at cafe at St. John's College
lectures, archives, unsubscribe, maps at http://www.friam.org

Reply via email to