This is the title of Robert Anderson and Daniel Ciruli’s
article in November’s Dr. Dobbs Journal which explores the other dimension of
loosely coupled systems being distributed across the grid. They have discussed
topics like scalability in terms of CPU load, network load balancing and mainly
how service oriented architecture can be leveraged by a grid. The complete text
of the article can be found here.
Also, Kim Greenlee of Digipede networks has recently spoken
to our user group about Concurrent
Software Development. Her presentation comprised of two parts; a. best
practices in concurrent development and b. grid computing 101. Kim explained
that In order to distribute a task to grid, we should be able to decompose it
into executable segments which can be distributed on the grid. However, the
distribution should be justified for instance ‘task A’ maxes out CPU on the
machine, it would not be beneficial to make it multi-threaded since it will
only increase the context switching; this task when distributed across
different CPU’s would perform better and would be more efficient. Kim
elaborated on why threading is non-deterministic and how a single statement, as
we see it, can result in multiple lines of IL instructions. She emphasized that
now that CPU power is not following
law and hence we need to distribute as hardware vendors have also started to
follow distributed computing model more and more. After a detailed discussion
about Kernel threads and User thread mapping in Solaris and Windows XP threading models, windows computing clusters
were also brought up by one of the audience. The speaker explained that
digipede’s framework is different because it allows the framework libraries to
distribute the task empowering the developer.
Kim has recently finished some C++ and Excel automation work
and demonstrated audience a Monte-Carlo retirement calculator simulation in
excel distributed across grid. Connected to her workplace grid, a 30 year
retirement calculation which would take ages on a local machine was completed
in minutes. A similar demonstration was also done with Mandel Brot set.
Attributing “Put the computer near data” to Jim Gray of Microsoft Research, Kim
explained digipede’s job distribution model, the inherent object oriented
design, resource pooling and bridge model. The meeting ended with Q&A
section and applause from audience on Kim’s excellent presentation.
Her presentation slides and sample code can be downloaded from here.
A Day in the Life
Kim Greenlee’s blog