At Sun, 29 Jan 2006 13:03:19 -0600 Dale <[EMAIL PROTECTED]> wrote:

> Alexander Skwar wrote:
>
>>Something that I always wondered about - does it
>>actually *lose* speed? IOW: Is it, *IN* *TOTAL*
>>slower to do multiple emerges in parallel compared
>>to doing them sequentially?
>>
> I'm no guru for sure but here is my $.02 worth.  Let's say emerge one
> takes ten minutes and emerge two takes 30 minutes.  If you have a single
> CPU machine I would think that if both were started at the same time,
> the both of them would take 40 minutes.  So in my theory, "emerge one &&
> emerge two" should be the same as doing seperately.

It is more complicated than that.

1.  A single CPU machine most likely has a DMA I/O controller and
    hence more than one action can be concurrent.

2.  I/O itself causes long delays while the disk is active, with a
    second emerge (or any other processor) the CPU can be concurrent
    with this delay.

These two argue for the concurrent emerges to be faster, but

3.  The context switching between processes is not free and adds CPU
    (at least) requirements to the concurrent emerge situation.

4.  The concurrent invocation increases the cache pressure (i.e.,
    demand) which most likely increases the cache miss rate.

5.  Similarly for the buffer cache.

etc

allan
-- 
gentoo-user@gentoo.org mailing list

Reply via email to