From: Gerrit H. <ge...@us...> - 2001-01-24 01:17:35
|
FWIW, DYNIX/ptx did process pairs originally for a BAAN application and later for Oracle. The first lesson we learned is that pairs of processes was nice but often processes came in little clusters. As a result, we implemented a system call which allowed any process to bind to any other process. End result was that a set of processes could bind to one process. Scheduling decisions then needed to take this into account, moving an entire set into a run queue when moving processes and making sure to factor in the "weight" of the set of processes when making a "migration" decision. Of course, long chains of relationships and the full generalized cases that resulted would have been a pain to handle (not impossible but time consuming). The general usage model was that spawned children would through an explicit call, typically bind to their parent. This would also be possible for pipes. We avoided having these bindings take place automatically. New run queue homes were typically selected as part of the exec() process, rather than the fork() process, so parents and children communicating via pipes would typically be on the same CPU, at least until the child did an exec(). Of course, I'd bet that the general case with pipes is that the child exec()'s a binary afterwards, so our strategy (which didn't focus on pipes) might not work as well in this case. gerrit > Andi Wrote : > > > On Mon, Jan 22, 2001 at 02:23:05PM -0500, Bill Hartner wrote: > > > Mike K, wrote : > > > > > > > > > > > If the above is accurate, then I am wondering what would be a > > > > good scheduler benchmark for these low task count situations. > > > > I could undo the optimizations in sys_sched_yield() (for testing > > > > purposes only!), and run the existing benchmarks. Can anyone > > > > suggest a better solution? > > > > > > Hacking sys_sched_yield is one way around it. > > > > How about process pairs that bounce around tokens in pipes ? > > > > -Andi > > Process pairs - good idea, should be easy to hack sched_test_yield > to do this. > > Bill > > > _______________________________________________ > Lse-tech mailing list > Lse...@li... > http://lists.sourceforge.net/lists/listinfo/lse-tech > |