Jay Rimalrick <[EMAIL PROTECTED]> 2006-03-13 08:03:
> Is it possible to break a problem into X chunks,
> declare X threads, and have a time reduction of 1/X
> assuming the chunks can be processed in parallel? Or
> is it the case that the X threads will just share the
> available processing power in a round robin fashion
> and there will not be any time reduction? I think the
> latter is true, but I would appreciate other comments.
In theory (I have no idea of how it works in RB) you can have a improvement
in performance by threading an application but ...
+ The different threads have to be a mixture of compute and IO
intensive tasks, if you only have compute intensive tasks
there is probably no gain (rather a reduction because of the
switches between threads).
+ The scheduler needs to be able to detect if one thread blocks
on IO and be able to schedule one of the other threads. If the
scheduler only detects this on process level (assuming a model
where the scheduler schedules processes and each process
schedules the threads) you will see no performance gain for
the threads in that process.
jem
--
Jan Erik Moström, www.mostrom.pp.se
_______________________________________________
Unsubscribe or switch delivery mode:
<http://www.realsoftware.com/support/listmanager/>
Search the archives of this list here:
<http://support.realsoftware.com/listarchives/lists.html>