Author: Gian-Carlo Pascutto
Date: 11:25:50 09/26/01
I have been wondering about my engines speed lately. Right now, I do about 110 knps in the middlegame on an Athlon 1000. Is that good or bad? Well, everybody else (save the one engine that shall not be named) seems to be doing more, so it can't be very good ;) Programs like Crafty do about 700 knps on the same hardware. ExChess (which has a similar design to my engine) does about 250-350 knps. I couldn't care less about the actual NPS value, but I do seem to get outsearched sometimes, which is quite annoying. Especially since my eval isn't of the most sophisticated either. Makes me shiver about the idea of adding some of the more expensive terms. A simple explanation would be that I just suck at programming and my program is slow. That would be plausible, if it weren't for 2 facts: a) with material only eval I do +- 300 knps b) I 'perft' a few percents faster than crafty I did a few more experiments (no SEE, futility pruning) and I hardly go over about 350 knps. That's still half the speed of crafty, with _everything_ enabled. I'm baffled as to where all those NPS come from/disappear to. The only area where Crafty would hold the advantage is capture-only movegen. My standard movegen does about 450 000 calls per second (testpos: LCT2 pos1). Capture only makes that 600 000 calls per second. I could see how crafty is faster here. (anyone care to test how much?) However, I don't see how this could be enough to compensate for the huge difference even without an eval on my part! Crafty is _searching_ faster than I can generate moves! So, basically, where are all those NPS coming from? You guys have a 'nodes <<= 2;' somewhere? -- GCP
This page took 0.01 seconds to execute
Last modified: Thu, 15 Apr 21 08:11:13 -0700
Current Computer Chess Club Forums at Talkchess. This site by Sean Mintz.