Hi all,
I've recently talked with Gary (Campbell) on E-mail and he told me how to use
the command line interface of FCELL.COM. (I hope I'll be able to publish the
notes from this talk.) As a result, I've decided to benchmark it. The first
thing I tried was using the so-called DosBox (
http://www.dosbox.com/ ) which
is a portable DOS emulator, but it was extremely slow. I guess DosBox didn't
make use of the processor's virtualisation capabilities.
I then tried using WINE (
http://www.winehq.org/ - a Windows and DOS
compatibility layer - WINE Is Not an Emulator) and it was much faster (and
worked after I tweaked a kernel variable) but still not as fast as the latest
Freecell Solver. (So far I only tried Linux).
Then I ran FCELL.COM and Freecell Solver on a different WinXP machine, and
FCELL.COM was faster than fc-solve, but even Freecell Solver ran much slower
than on my Linux machine despite the fact that it ran on a somewhat faster
machine (P4-2.8GHz vs. P4-2.4GHz). I guess the WinXP installation accumulated
some cruft - not unlikely malware.
Now, fc-solve is written in ANSI C and makes use of the built-in ANSI C /
POSIX functions and as such will perform better on a native POSIX/Unix
platform such as Linux, while FCELL.COM is written in 8088 Assembly under DOS,
and so will perform better on platforms that are DOS-like. So it would be hard
to compare the two.
Even if two programs are written in portable ANSI C, then it's not
inconceivable that one of them will run better on a different platform than
the other (due to changes in the underlying architecture). I should also note
that the Freecell Solver version that I tried was compiled on windows with an
earlier version of the gcc compiler.
In the message
http://tech.groups.yahoo.com/group/fc-solve-discuss/message/584
Bill Raymond claims his solver can solve "~10,000,000 deals per hour _at_733mHz".
The Freecell Java Solver (
http://sourceforge.net/projects/freecelljsolver/ )
told me his solver solves the first million deals in 24 hours ("4 hours" on
the SourceForge page) on a Dual Core machine, and when I tried my solver on my
x86-64 Dual Core laptop, it solved the first million deals in 19 minutes and
35 seconds. (mikejyg later admitted my solver was much faster so far.)
The question is whether it matters for anything except bulk solving for
statistics. Solving 1M deals in 24 hours, means that it will take an average
of 0.0864 seconds to solve a single deal, which is still also pretty good.
Regards,
Shlomi Fish
--
-----------------------------------------------------------------
Shlomi Fish http://www.shlomifish.org/
Stop Using MSIE - http://www.shlomifish.org/no-ie/
Deletionists delete Wikipedia articles that they consider lame.
Chuck Norris deletes deletionists whom he considers lame.
Please reply to list if it's a mailing list post - http://shlom.in/reply .
Received on Fri Apr 23 2010 - 06:45:05 IDT