ECJ-INTEREST-L Archives

March 2011

ECJ-INTEREST-L@LISTSERV.GMU.EDU

Options: Use Monospaced Font
Show Text Part by Default
Show All Mail Headers

Message: [<< First] [< Prev] [Next >] [Last >>]
Topic: [<< First] [< Prev] [Next >] [Last >>]
Author: [<< First] [< Prev] [Next >] [Last >>]

Print Reply
Subject:
From:
Sean Luke <[log in to unmask]>
Reply To:
ECJ Evolutionary Computation Toolkit <[log in to unmask]>
Date:
Thu, 24 Mar 2011 16:09:47 -0400
Content-Type:
text/plain
Parts/Attachments:
text/plain (26 lines)
On Mar 24, 2011, at 1:26 PM, Nikola N. wrote:

> At some point of time all the threads are running, at some point  
> only single
> thread is running by the slave.

Well, keep in mind that the Slave has to read in Individuals from the  
stream before it can start working on them (in the "evolve" mode I  
suggested to you).  This means that in a single thread it's sitting  
there waiting for all the Individuals to be sent over the stream, and  
only then does it begin evaluating them in a multithreaded fashion.   
If your evaluation is expensive with respect to network transfer  
(which is usually the case for situations where distributed EC makes  
sense) then most of your time will be spent in the multithreaded  
section.

At the very least if I can get to whipping up the multithreaded  
"standard" slave evaluation (non-"evolve" mode) we can set it up so  
that as soon as an Individual is read in it immediately begins  
evaluation.  But even so there will be a period of time when the  
fitnesses are sent back that things are gonna be in single threaded  
mode for a bit.  There's just no way around it short of constructing  
an asynchronous response.

Sean

ATOM RSS1 RSS2