Boost logo

Boost :

Subject: Re: [boost] [threadpool] mixture of recursive invokation and fibers?
From: Oliver Kowalke (k-oli_at_[hidden])
Date: 2008-11-05 04:04:06


> > > Could you tell me more about when we need more that one pool (piplined
> > > architectures for instance)?
>
> > Pipelined architectures could be used in network-applications/services
> > (for instance web-services).
> > The idea is to parallelize the receiving, parsing, processing of
> > network-messages in different stages. Each stage could have its own
> > threadpool (the stages maybe also use only one pool). The pattern comes
> > from the pipeline architecture of modern RISC processors.
> A better description can be found here (chapter 6):
> http://www.cs.uwaterloo.ca/~brecht/papers/getpaper.php?file=eurosys-2007.pdf
>
> What is the advantage to have one pool for each stage respect one pool for
> all the stages?

Imagine we have stage A which reads message from the network and stage B processing the messages read by A. If both use the same threadpool and mltiple clients send a large messages (ready will take some significant time) stage A coul possibly allocate all threads in the pool so not work-item in stage B can be executed. If both stages use different pools the processing of work-items is independent.
B can executes its task even if stage A becomes a high load.

regards,
Oliver

-- 
Psssst! Schon vom neuen GMX MultiMessenger gehört? Der kann`s mit allen: http://www.gmx.net/de/go/multimessenger

Boost list run by bdawes at acm.org, gregod at cs.rpi.edu, cpdaniel at pacbell.net, john at johnmaddock.co.uk