History of Memory Wall in Computer Chess?

Discussion of chess software programming and technical issues.

Moderators: hgm, Rebel, chrisw

Joost Buijs
Posts: 1563
Joined: Thu Jul 16, 2009 10:47 am
Location: Almere, The Netherlands

Re: History of Memory Wall in Computer Chess?

Post by Joost Buijs »

Laskos wrote: Wed Aug 12, 2020 11:59 am Were you aware back then that your program rates high among available at that time on the market programs and dedicated units? That you were close to the top of micro-computer chess programming? People were much less informed and connected back then, at least usually, maybe you were unaware of the place of your program, that's why you lost the sources and everything.
Sargon I of 1978 (considered one of the best programs of its time, to early 1980s in Sargon II version on Z80)
https://en.wikipedia.org/wiki/Sargon_(chess)
was rewritten from the book to Intel PC and ported to UCI
http://talkchess.com/forum3/viewtopic.php?f=7&t=73969
I had fun with it.
I'm well aware of Sargon, I still must have a booklet somewhere with it's Zilog assembler source, I do remember the swap-off code they used.

I think that at the beginning of the 80s there were several other micro-computer chess programs reaching the same level. Sargon got famous because it won a microcomputer tournament in 1978, and because the Spracklens sold their source in booklet form later on. This doesn't mean that there weren't any other non commercial programs that reached approximately the same level. At least it never struck me as being something special, developments were going very fast during the 80s.

Most of the information I started with came from the book 'Chess Skill in Man and Machine' edited by Peter Frey. And there were several articles about computer-chess published in Byte Magazine, for instance about Chess 0.5 by Larry Atkin and Peter Frey. I still have the book, but the magazines are long gone.
Joost Buijs
Posts: 1563
Joined: Thu Jul 16, 2009 10:47 am
Location: Almere, The Netherlands

Re: History of Memory Wall in Computer Chess?

Post by Joost Buijs »

About the port of Sargon I to the PC with UCI, I had it play at the last blitz tournament from July, it lost all of it's games, so it is actually very weak, weaker than the weakest programs of today, even on modern hardware.
User avatar
Laskos
Posts: 10948
Joined: Wed Jul 26, 2006 10:21 pm
Full name: Kai Laskos

Re: History of Memory Wall in Computer Chess?

Post by Laskos »

Joost Buijs wrote: Wed Aug 12, 2020 2:27 pm
Laskos wrote: Wed Aug 12, 2020 11:59 am Were you aware back then that your program rates high among available at that time on the market programs and dedicated units? That you were close to the top of micro-computer chess programming? People were much less informed and connected back then, at least usually, maybe you were unaware of the place of your program, that's why you lost the sources and everything.
Sargon I of 1978 (considered one of the best programs of its time, to early 1980s in Sargon II version on Z80)
https://en.wikipedia.org/wiki/Sargon_(chess)
was rewritten from the book to Intel PC and ported to UCI
http://talkchess.com/forum3/viewtopic.php?f=7&t=73969
I had fun with it.
I'm well aware of Sargon, I still must have a booklet somewhere with it's Zilog assembler source, I do remember the swap-off code they used.

I think that at the beginning of the 80s there were several other micro-computer chess programs reaching the same level. Sargon got famous because it won a microcomputer tournament in 1978, and because the Spracklens sold their source in booklet form later on. This doesn't mean that there weren't any other non commercial programs that reached approximately the same level. At least it never struck me as being something special, developments were going very fast during the 80s.

Most of the information I started with came from the book 'Chess Skill in Man and Machine' edited by Peter Frey. And there were several articles about computer-chess published in Byte Magazine, for instance about Chess 0.5 by Larry Atkin and Peter Frey. I still have the book, but the magazines are long gone.
Well, very interesting and different times from today. Basically, a talented programmer, computer chess hobbyist could have written a world level chess engine writing in a matter of 1 year an engine from scratch. And it doesn't matter that there were many world level programs as long as available commercial or not software and dedicated units were no stronger to significantly weaker.

Sargon I is not that weak, today I checked with most trustworthy UCI_Elo enabled engines: Shredder 12 Elo 1600 and Stockfish 11 Elo 1600, they came remarkably consistent ranking Sargon I at 1700 Elo engine on modern hardware.

Code: Select all

Score of sargon1978 vs DeepShredder12UCI Elo 1600: 11 - 5 - 4 [0.650]

...      sargon1978 playing White: 5 - 3 - 2  [0.600] 10
...      sargon1978 playing Black: 6 - 2 - 2  [0.700] 10
...      White vs Black: 7 - 9 - 4  [0.450] 20

Elo difference: 107.5 +/- 152.4, LOS: 93.3 %, DrawRatio: 20.0 %
20 of 20 games finished.

Code: Select all

Score of sargon1978 vs SF_11 Elo 1600: 13 - 7 - 0 [0.650]

...      sargon1978 playing White: 8 - 2 - 0  [0.800] 10
...      sargon1978 playing Black: 5 - 5 - 0  [0.500] 10
...      White vs Black: 13 - 7 - 0  [0.650] 20

Elo difference: 107.5 +/- 177.3, LOS: 91.0 %, DrawRatio: 0.0 %
20 of 20 games finished.
You should note that on modern i7 Sargon I port reaches only 40k NPS, probably only 50 times faster than on Z80. And that would mean that on Z80 Sargon I would be 1400 Elo or so. From Wiki, Sargon II of 1978 too was rated about 1500 in its time, but performed sometimes at 1700 level against humans. Kudos for competing with such legends for us, kids of those times. We (and my parents) weren't even aware in the early 1980s that there are very decent playing engines out there, which can give and take good games to my father.
Joost Buijs
Posts: 1563
Joined: Thu Jul 16, 2009 10:47 am
Location: Almere, The Netherlands

Re: History of Memory Wall in Computer Chess?

Post by Joost Buijs »

Probably the 1850 FIDE is overestimated, it is just that I had in my mind that FIDE ratings at these levels were ~150 points higher than Dutch ratings. The only thing I remember is that it did very well against players with a Dutch Elo of 1500 to 1700. I started the development of the program in the fall of 1977, it played it's first games in 1978, I think it was in 1981 that it played at our club regularly.

There were several other micro-processor chess programs from Dutch programmers playing at the same level, the Netherlands was no1 with respect to micro-processor chess development. At the beginning of the 90s most programs in dedicated units were from Dutch programmers like Johan de Koning, Frans Morsch and Ed Schoder.

Why the port of Sargon I to the PC is only 50 times faster is not very clear to me, if you look at clock-frequency alone the speed became at least 1000 times higher, and the IPC is much higher too. I would expect the port to run at least 1000 times faster, I wonder what the bottleneck is.
User avatar
towforce
Posts: 11516
Joined: Thu Mar 09, 2006 12:57 am
Location: Birmingham UK

Re: History of Memory Wall in Computer Chess?

Post by towforce »

Probably not what smatovic is talking about - but before Windows took over, DOS used to have a limit of 640K of conventional memory. Device drivers became available that would allow you to have either "extended memory" or "expanded memory" above that limit, and, for some reason, the following definition from a computer newspaper (news used to be published on physical paper) has always stuck in my mind:

"Extended memory is memory that is... er... different from expanded memory. Expanded memory is memory that is... er... different from extended memory."

One company I worked for needed everyone to be able to run WordPerfect and Lotus Notes at the same time. To make it possible to install them both on the company's PCs, which had a 20Mb hard disc, the disc had to be compressed, which meant that each time the disc was accessed, decompression code had to run. I made it work - but the PCs ran like a 3 legged dog. I used to describe it as "running a champagne system on a beer budget".
Writing is the antidote to confusion.
It's not "how smart you are", it's "how are you smart".
Your brain doesn't work the way you want, so train it!
User avatar
towforce
Posts: 11516
Joined: Thu Mar 09, 2006 12:57 am
Location: Birmingham UK

Re: History of Memory Wall in Computer Chess?

Post by towforce »

Joost Buijs wrote: Thu Aug 13, 2020 8:34 amWhy the port of Sargon I to the PC is only 50 times faster is not very clear to me, if you look at clock-frequency alone the speed became at least 1000 times higher, and the IPC is much higher too. I would expect the port to run at least 1000 times faster, I wonder what the bottleneck is.

We could only guess as to what the author did, but the overarching reason is that the best software was strongly tuned to the available hardware at the time.
Writing is the antidote to confusion.
It's not "how smart you are", it's "how are you smart".
Your brain doesn't work the way you want, so train it!
Joost Buijs
Posts: 1563
Joined: Thu Jul 16, 2009 10:47 am
Location: Almere, The Netherlands

Re: History of Memory Wall in Computer Chess?

Post by Joost Buijs »

towforce wrote: Thu Aug 13, 2020 9:33 am Probably not what smatovic is talking about - but before Windows took over, DOS used to have a limit of 640K of conventional memory. Device drivers became available that would allow you to have either "extended memory" or "expanded memory" above that limit, and, for some reason, the following definition from a computer newspaper (news used to be published on physical paper) has always stuck in my mind:

"Extended memory is memory that is... er... different from expanded memory. Expanded memory is memory that is... er... different from extended memory."

One company I worked for needed everyone to be able to run WordPerfect and Lotus Notes at the same time. To make it possible to install them both on the company's PCs, which had a 20Mb hard disc, the disc had to be compressed, which meant that each time the disc was accessed, decompression code had to run. I made it work - but the PCs ran like a 3 legged dog. I used to describe it as "running a champagne system on a beer budget".
This holds only for people that were using DOS or Windows 3.1. At he end of the 80s there was also OS/2 and later NT 3.1/3.5 and 4.0.

At the very beginning of the 90s I had a PC with a 80486 processor and OS/2 on it (for that time a very nice OS BTW), this machine could already address all memory without pain, there was no reason to stick with DOS at all. It is true that most chess engines were still DOS based, but being a programmer myself I already made full use of the 32 bit memory model.

A few years later I replaced the processor with a 80486-DX2 that was given to me by Intel for free in a promotional campaign, it was a 80486 with an internal PLL clock doubler, after this I switched to the Pentium Pro and later the dual Pentium II.

Over the years I spent a lot of money on all these computers, probably I could have bought 2 expensive cars for it.
Dann Corbit
Posts: 12536
Joined: Wed Mar 08, 2006 8:57 pm
Location: Redmond, WA USA

Re: History of Memory Wall in Computer Chess?

Post by Dann Corbit »

And even the Amiga had a motorola 68000
It was actually a much better machine than the PC.
There were also AT&T unix machines. We had some where I worked.
We used CP/M also, but CP/M was not very impressive to me.
I thought the Unix machines were the future of computing and even talked several people out of buying Microsoft Stock, because I did not like the new MS-DOS.
At the time, there was a limit of 255 files, only floppy disks, and no such thing as a subfolder.
I still find it hard to believe that it was MS-DOS that dominated the OS scene.
Taking ideas is not a vice, it is a virtue. We have another word for this. It is called learning.
But sharing ideas is an even greater virtue. We have another word for this. It is called teaching.
Dann Corbit
Posts: 12536
Joined: Wed Mar 08, 2006 8:57 pm
Location: Redmond, WA USA

Re: History of Memory Wall in Computer Chess?

Post by Dann Corbit »

The Amiga came around after DOS, I recall, but CP/M and AT&T Unix were contemporary
Taking ideas is not a vice, it is a virtue. We have another word for this. It is called learning.
But sharing ideas is an even greater virtue. We have another word for this. It is called teaching.
User avatar
towforce
Posts: 11516
Joined: Thu Mar 09, 2006 12:57 am
Location: Birmingham UK

Re: History of Memory Wall in Computer Chess?

Post by towforce »

Dann Corbit wrote: Thu Aug 13, 2020 5:31 pmI still find it hard to believe that it was MS-DOS that dominated the OS scene.

In the much of the computing environment, the rule was that whatever IBM did became standard (ever wondered why your keyboard has an alt-gr (alternative graphics) key?). When IBM announced the PC, all of a sudden there was, FINALLY, a standard for "personal computers".

Bill Gates was told that his operating system would be used if he could get it working in time, so he worked like stink from the crack of dawn to the setting of the sun, and got DOS working just in time (some say parts of it were copied, I'm not in a position to say).

The PC architecture absolutely dominated personal devices, and it's only recently that ARM processors have started to challenge the Intel CPU architecture.

Today, nobody commands respect in terms of setting standards in the way that IBM used to - it's a different world.
Writing is the antidote to confusion.
It's not "how smart you are", it's "how are you smart".
Your brain doesn't work the way you want, so train it!