http://computer-go.org/pipermail/computer-go/2008-October/016680.html
Interestingly, I did this a while ago.  Here's my results:

$ ./Bench 1 100000
b: 14840, w: 17143 mercy: 67982
elapsed time: 3.42s
playouts/sec: 29208

so, nearly 30k/sec random playouts on 9x9. That's using a hack that stops the game when the score is heavily in favour of one player, it drops to around 20k/sec with that turned off.

Nice!-) 20k playouts/sec (without  the early cutoffs) is the rough number
usually mentioned for these light playouts, reachable even in Java. My own
Haskell code for that was a factor of 5 slower:-(

actually, that 5x is relative to jrefbot on my machine (Pentium M760, 2Ghz),
which doesn't quite reach 20k/sec, so if your code would run at 20k/sec on
my laptop, it would be 10x as fast as my bot:-(( Since you can't release your
code, could you perhaps time the jrefbot from the url above on your machine as a reference point, so that I know how far I've yet to go? Something like:

$ time ((echo "genmove b";echo "quit") | d:/Java/jre6/bin/java -jar refbots/javabot/jrefgo.jar 20000)
   = E5

   real    0m2.539s
   user    0m0.030s
   sys     0m0.031s

Btw, I just realised where my bot dropped from 5x to 8x: to work around

   http://hackage.haskell.org/trac/ghc/ticket/2669

all my array accesses were wrapped in exception handlers, to get
useful error messages while I adapted my code to the refbot spec..

That's not the only bug that got in the way:
   http://hackage.haskell.org/trac/ghc/ticket/2727

forced me to move from functional to imperative arrays much sooner than I wanted, and due to
   http://hackage.haskell.org/trac/ghc/ticket/1216

I did not even consider 2d arrays (the tuple allocations might have gotten
in the way anyhow, but still..).

What do those folks working on parallel Haskell arrays think about the
sequential Haskell array baseline performance?

Claus

-- my slow bot's current time (for 20k playouts on a 2Ghz laptop):

   $ time ((echo "genmove b";echo "quit") | ./SimpleGo.exe 20000)
   TEXT e5 - amaf-score: 0.127
   TEXT e6 - amaf-score: 0.126
   TEXT d5 - amaf-score: 0.126
   TEXT f5 - amaf-score: 0.118
   TEXT d6 - amaf-score: 0.116
   TEXT f4 - amaf-score: 0.115
   TEXT e7 - amaf-score: 0.115
   TEXT f6 - amaf-score: 0.114
   TEXT d4 - amaf-score: 0.110
   TEXT d3 - amaf-score: 0.108
   TEXT e5 - amaf-score: 0.127
   = e5

   =

   real    0m10.711s
   user    0m0.030s
   sys     0m0.031s


_______________________________________________
Haskell-Cafe mailing list
Haskell-Cafe@haskell.org
http://www.haskell.org/mailman/listinfo/haskell-cafe

Reply via email to