Computer Chess Club Archives


Search

Terms

Messages

Subject: Re: Benchmarks, question about Coppermine

Author: Eelco de Groot

Date: 21:42:28 09/22/99

Go up one level in this thread



Because Joshua specifically mentioned the Rebel AMD-results I hope people won't
mind my doing some reposting?

Here are a few  earlier messages by Ed and others on that subject:

(Quotes)

On July 06, 1999 at 17:01:02, Alain Lyrette wrote:

>
>On July 06, 1999 at 14:57:58, James T. Walker wrote:
>
>>Hello,
>>Does anyone know if there is any advantage to using the K6-3 over the K6-2 at
>>the same Processor speed(450Mhz) for chess programs??
>>Jim Walker
>                                                              The only
>difference between k6-2 and k6-3 is that there is 256kb of L2 cache on the die
>itself of the k6-3 and that cache is running at the same speed of the cpu NOT
>the speed of the bus(100 mhz).What used to be called L2 cache is now L3 cache.As
>mentionned before knowledge based programs (Rebel,Hiarcs) are relying much more
>on cache than fast searchers like Fritz and Nimzo.About 2 weeks ago someone
>posted here something like saying that csst2 was almost twice as fast on a
>pentium than on k6....which is very surprising to me....

It is surprising yes. Its reason: Programs like CSTAL and Rebel and probably
Hiarcs too have a large evaluation function. The disadvantage of a large
evaluation function is that it uses many so called variables (=memory).

Using memory is very expensive in terms of speed. That's why chip
developers invented:

a) first level cache (super fast memory)
b) second level cache (fast memory)

to speed up all memory requests from programs.

For years second level cache runs at 66 Mhz and recently this was
increased to 100 Mhz.

The AMD-K6-III is a breakthrough because the second level cache runs
at full processor speed. If you have (say) a 450 Mhz K6-III the
second level cache will run at 450 Mhz too instead of the old 100 Mhz.

Now to chess programs and its effects, chess programs with small
evaluation functions will hardly profit from this new technique.
Chess programs with a big evaluation function will profit a lot.

Rebel's speed-up is about 100%. CST speed up is 125% which is
no surprise for me because CST has the largest eval of all.

Ed Schroder


On July 22, 1999 at 02:28:43, Dave Gomboc wrote:

>Thanks for posting this.
>
>I wanted to clarify something, though I think I know the answer: you were
>referring to the binary size of the eval when you said 120Kb of assembler, not
>the source size, right? :-)

I was referring to the binary size indeed.

>One more question: how much slowed do you think your eval would be if you wrote
>it in C or C++ instead of assembler?

The C-version is about 30% slower than the ASM version.

Ed Schroder



>Dave
>
>On July 21, 1999 at 06:41:25, Ed Schröder wrote:
>
>>>I took a look at the log file you placed on your site so as to show what would
>>>be subject to tweaking and found that what interested me most was all grouped
>>>up. I am thinking particularly of Chess Knowledge which is said to increase or
>>>decrease the quality of positional play according to its value. This is quite
>>>vague, and I would have thought that it was precisely in the various
>>>elements of
>>>chess knowledge that one could achieve the most interesting tweaking. Is this
>>>left like this due to a desire to not divulge all of Rebel's cogs and screws?
>>>
>>>                                Albert Silver
>>
>>The option [Chess Knowledge] is about LAZY-EVAL which is currently
>>a hot topic here. Below is a quote from my pages which might explain
>>a bit (I hope).
>>
>>Ed Schroder
>>
>>-----------------------------------
>>
>>[Chess Knowledge = 200] Chess Knowledge above 100 will result in
>>more accurate positional play but a lower search depth. Chess Knowledge
>>below 100 will result in less accurate positional play but a higher search
>>depth. This function needs a detailed (and quite technical) explanation:
>>
>>The heart of a (any) chess program is its evaluation function (EVAL). In
>>there all chess knowledge is present. The most important ones are already
>>discussed above  (King Safety, Mobility, Pawn Structure, Passed Pawns
>>etc). Above these major items EVAL contains over 200 specific (position
>>oriented) chess knowledge cases of all kind. To name  a few: Bishop of
>>opposite colors, bad (or good) bishops, piece development in the
>>opening, castling, rook endings, pawn endings and and and... EVAL is
>>the soul of a (any) chess program and will reflect the playing style the
>>programmer has (had) in mind.
>>
>>EVAL in REBEL takes a lot of processor time even for todays fast
>>computers. EVAL's size is over 120 Kb (pure assembler code)
>>containing over 30,000 instructions which is very big for a chess
>>program. Calling EVAL for every position in the tree-search is very
>>expensive and will slow down the search tremendously, in REBEL's
>>case a slow down factor of 7 to 8 (nodes per second) is not unusual.
>>
>>To handle this chess programmers invented LAZY EVAL in all kind
>>of sorts. LAZY-EVAL is a smart algorithm that only picks the main
>>important parts of EVAL belonging to the (current position) and then
>>skips the rest of EVAL. This is of course a very dangerous approach
>>as often LAZY-EVAL is not 100% right and will return a score that isn't
>>100% accurate which (sometimes) in the end may result in a lesser
>>quality move.
>>
>>On the other hand Rebel's LAZY-EVAL algorithm will speed-up the
>>search tremendously and allows REBEL to look 2-3 plies deeper
>>than without LAZY-EVAL which in the end is by far is superior in
>>terms of chess strength.
>>
>>With the option [Chess Knowledge = 200] you can tune REBEL's
>>LAZY-EVAL. The higher you set its value the more accurate REBEL
>>will play but the search depth will decrease. If you set Chess
>>Knowledge to its maximum [Chess Knowledge = 500] you actually
>>see REBEL's EVAL in its full glory as LAZY-EVAL is hardly active
>>anymore.
>>
>>However REBEL'S nodes per second (NPS) will drop typically with
>>a factor of 7-8. On a PII-333 REBEL searches about 100,000
>>positions a second. Using [Chess Knowledge = 500] REBEL's
>>NPS will drop to 12,000-15,000.
>>
>>More technical stuff: all of the above is true for current and older
>>INTEL processors. However times are changing, chips are equiped
>>with larger and faster cache memory. On the new AMD-K6-III the
>>cache runs at full processor clock speed. INTEL processors cache
>>memory is just running on 100 or 66 Mhz. The result is that on
>>AMD K6-III using the maximum [Chess Knowledge = 500] REBEL
>>will run 2-2½ times faster than on INTEL.
>>
>>All of this makes it very difficult to tune Chess Knowledge for its
>>best setting because it is very dependant on the processor you
>>have in your PC. This month AMD released the new K7 processor
>>which again doubled the cache memory and REBEL will profit a lot
>>from that. INTEL surely will answer. The bottom line is that one day
>>the ideal setting will be [Chess Knowledge = 500] and you can use
>>REBEL's EVAL in its full glory.

(End of quotes)

The first results for the K7 Athlon compared to the K6-III were a bit
disappointing as far as Rebel was concerned, probably because the L2 cache,
though 512 kB, does run only at half the processor speed. Also Ed's Kryotech K-6
3 has special very fast memory I believe with a bus at 400 MHz. Athlon's runs at
efectively 200 MHz. Future more expensive Athlons are supposed to have L2 cache
that can also run at processor speed, and that also could grow in size, to up to
8MB.

What I was wondering about myself is if anybody here knows if the L2 cache of
"Coppermine", the "real" Pentium III that is to come out in November, still
runs at only half the CPU clock-speed? If not its 512 kB, now on-board of the
chip itself, compared with 128 kB on-chip L2 cache of the Celeron, could make
quite a difference again. Couldn't find the answer to that one.

Sorry if this message was too long.

Eelco.




This page took 0 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.