distributed processing ad multiThreading
distributed processing ad multiThreading
- Subject: distributed processing ad multiThreading
- From: Robert S Goldsmith <email@hidden>
- Date: Mon, 17 Sep 2001 11:34:01 +0100
Hi everyone :)
I have a little problem and am not sure the best way to go
about it best in ObjC.
My work is in evolutionary programming, an area of research
in which the programs being written and run have usually got
a few distinct characteristics:
1) There is a 'population' of entities (instances of an
object). For my work, usually only about 5 or 6 (although
sometimes there can be thousands).
2) In base level systems, every one of these entities must
be 'evaluated' and given a score on every process step
(known as a generation).
3) Evaluation is a HUGE processing requirement. As an
example, some of my recent work takes over 8 hours to
complete only about 10000 generations - and that's in
optimised C.
4) There are a huge number of generations needed to solve
the problems being set the system.
5) This is the real problem point - every generation, almost
all of the entities have to be changed. That is, their
internal structure is redesigned based on the 'winner' of
the last generation.
The problem I have is that I would like to try and
parallelise the evaluation process.
I have two options. I have access to a 4 processor solaris
machine and a duel processor G4 if I want to try threading
in an SMP enviroment and I have access to about 120 solaris
workstations if I want to go for distributed processing.
SMP I don't think will be much of a problem to try - except
the Apple docs on NSThread etc. are a little thin on the
ground. However, with the distributed processing, how would
i go about:
1) launching 'threads' on all the machines
2) getting them to communicate small and large abounts of data
As you can understand, I do not want a huge overhead because
time is an important concideration.
I hope someone can help :)
Thankyou
Robert