ECJ-INTEREST-L Archives

January 2010

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:
Fri, 22 Jan 2010 08:49:53 -0500
Content-Type:
text/plain
Parts/Attachments:
text/plain (31 lines)
Nope.  Though I would be pretty surprised to find that it made a  
_huge_ difference.

Some stuff to note. Way back when we had ECJ more heavily
multithreaded in certain locations. And discovered that as a result
it was *slower* than just running on a single CPU. This is because
the thread overhead is quite high if your threaded tasks are short in
duration.

LoadElites is expensive: it's O(n^2) in the worst case. So it's an
obvious candidate for parallelization if possible. And Java's thread
overhead has reduced since the earlier days described before (but not
as much as you'd think). So go for it if you've got a strategy for
doing so. But (1) I think it may not be trivial to parallelize
LoadElites and (2) compared to the evaluation phase -- which usually
dominates stuff timewise -- ordinarily such a beast wouldn't be that
costly. So think carefully first about whether it'd really be worth
it...

Sean

On Jan 22, 2010, at 7:25 AM, Adam Spalek wrote:

> All,
> I am running SPEA2 on several CPUs. The problem with the
> SPEA2Breeder class
> is that all of the loadElites(...) loops run just on one CPU. Has
> anybody
> already developed a support for multi-threads?
> Cheers

ATOM RSS1 RSS2