Core i7 makes everything better. :) POPCNT is supported by Intel in SSE4.2 and 
AMD in SSE4a, so that's good to hear.

I'd be curious since you mention vectors is anything in AVX will prove useful, 
although that's when the instruction sets between Intel and AMD get verrrry 
fragmented, it looks like: 
http://en.wikipedia.org/wiki/Advanced_Vector_Extensions

--
It only took 15 years for me to get a sig... to shamelessly promote my podcast. 
http://www.valuecube.com

Aug 18, 2010 12:52:11 PM, [email protected] wrote:

===========================================

             
I haven't done much visible Quackle work in the past year plus, but I have been 
thinking a lot about Scrabble programming and doing some experiments, and since 
getting back from the NSC I've been working on some C++ code that I hope to 
integrate into Quackle in the near future.
Quackle's current move generation code is much slower than it needs to be. Matt 
Liberty sped it up quite a bit, but my original code was very boneheaded and I 
look forward to starting fresh. I'm almost too embarrassed to get into the 
details of all the ways in which it is deficient, but the important points are 
that while Quackle in its current state would get no benefit from a x86-64 
build, a smarter Quackle would. The current lexicon data structures are relics 
from when I was much lesser programmer. What I would replace them with would 
make use of bit vectors for the presence of child nodes. Things are going to be 
much faster even on older processors, but especially so with 64 bit registers 
and the SSE4 POPCNT instruction. I've done tests on my i7, and I can already 
tell that this is going to be a huge win.
John O'Laughlin
On Sun, Aug 15, 2010 at 12:17 AM,   wrote:
 It's impossible to make a generalization about the performance
characteristics of 32-bit vs. 64-bit programs.  It is not true,
for exampe, that 64-bit programs can be expected to be twice as
fast because there are twice as many bits.  I could explain why
this is, but the explanation is pretty technical.  But just trust
me, it doesn't work that way.  In fact, depending upon the nature
of how a given program works, it's actually possible for a 64-bit
version to be *slower* than a 32-bit version, all other things
being equal.

There is only one true generalization one can make about 64-bit
programs, and that is that they are capable of accessing far more
memory than 32-bit programs.  This can be very important for
certain high-performance computing applications that deal with
large amounts of data, but that does not describe Quackle.

So, there may or may not be a performance increase associated with
compiling Quackle under 64-bit Windows.  If there is, I suspect it's
comparatively small, but that's a guess.  Assuming that Win64 Qt
builds without much difficulty, it probably would be easy for me
to test, but I just don't have the time right now.  I'm absolutely
saturated.


        

Reply via email to