[DGD] Multi Threading

Kris Van Hees aedil at alchar.org
Fri May 16 23:57:14 CEST 2003


On Sun, May 11, 2003 at 12:33:05AM +0200, Felix A. Croes wrote:
> This means that the n-processor version of DGD/MP will not run n times
> as fast, since some threads will be rescheduled.  In the worst case,
> with every thread except one failing to commit at all times, it will
> run as fast as if it were only using a single processor.  Actual
> speed will vary, between 1 and n times that of a single-processor
> version.

Not to offer criticism (since I do believe that re-scheduling threads of
execution is the right way to go - you convinced me of that in 1995 already),
but isn't the worst case where one or more threads of execution may have to be
rescheduled multiple times, due to getting undercut by other threads?  E.g. if
all threads need to access a central object during their execution, it could be
possible that thread n will get rescheduled (n - 1) times because all previous
threads modifying that single central object?  It does of course depend on the
scheduling algorithm, and it is very easy to guarantee at least completion of
all threads, but it seems that the possible impact of a high degree of
collisions in accesses (bad design, but nonetheless) could be quite a bit higher
than sequential threads on a uni-processor driver.

Or am I missing some critical here?

	Kris
_________________________________________________________________
List config page:  http://list.imaginary.com/mailman/listinfo/dgd



More information about the DGD mailing list