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