Could a modern chess engine on a Pentium have defeated Kasparov in 1996?

335 points - today at 7:56 AM

Source

Comments

tombert today at 3:02 PM
Very tangential, but I think a lot about how modern video compression has gotten so unbelievably good that if we went back in time with AV1 or HEVC or something, I'm wondering if we could have had passable video streaming at 240p with something like an ISDN connection.

It would be a tight fit, but I still think within feasibility. We've gotten so good at shrinking video that it kind of feels like wizardry to me. Granted, I'm not sure there existed a computer in the 90s that was powerful enough to encode or decode it.

FartyMcFarter today at 12:20 PM
Awesome article. Nit:

> the average chess grandmaster during a classical game will analyze roughly the same number of moves as an amateur player, but they analyze only the most critical moves and do a better job with that analysis.

I don't buy this. I've seen GMs playing online while verbalizing their thought process (on twitch / youtube videos where they livestream their play), and they consider way more branches than I do, while also going deeper than I ever would on some branches. My top rating in lichess blitz is about 1900, not bad but way lower than a GM.

rockmeamedee today at 2:23 PM
Yes but most of it is NNUE, a custom neural network trained on mountains of data to copy modern Stockfish.

So a computer from back then _can_ run at Elo +3k, but the programmers at the time wouldn't have been able to implement it even if you went back with a time machine and the blueprint for the technique. They wouldn't have the teacher model to distill from.

Sharlin today at 12:50 PM
> because who would want to buy a Pentium Pro when the better-in-almost-every-way Pentium MMX

Maybe this was satirizing people running after every shiny new thing, but the MMX certainly wasn’t. The Pro was the first P6, a totally new, out-of-order microarchitecture that the Pentium 2 would be based on. The MMX was a standard P5 Pentium with a larger L1 and the MMX vector instruction set which, while the first of its kind in an x86, was ultimately not used much in applications, partly because it was integer-only (also because it awkwardly co-opted the existing FPU registers rather than having its own register file). In any case, the Pros were expensive and meant for business use, while the MMXs were consumer processors.

orac81 today at 6:24 PM
A 100 Mhz Pentium did, in 1994, running ChessGenius in the Intel Grand prix.

https://chessprogramming.org/Chess_Genius

https://www.chessgames.com/perl/chessgame?gid=1070709

throw315 today at 6:47 PM
So algorithms beat clock cycles.
dmurray today at 12:56 PM
Great project but I have a nit on the board displays: every board is displayed as <human username> vs Pentium Pro, even when the Pentium is playing White. The normal chess convention is <White name> vs <Black name>.

I spent some time trying to figure out how some of the humans seemed to have trapped the machine out of the opening, because it looked like the human was winning.

largbae today at 6:07 PM
I love this article and I love that LLMs enabled it to exist. The labor cost of software has been setting such tight bounds on creativity and exploration that we will soon wonder why we ever loved to write code.
mb_thd today at 1:08 PM
> Throughout this article, when I say "I wrote", what I really mean is "I asked an LLM to write".

I wish disclaimers like that would be at the start and not halfway trough the text.

mherrmann today at 6:08 PM
Is an interesting question whether the same will apply to AI models? Not on 1996 hardware, of course. But on 2026 hardware in 2056. Does anybody have any idea / insight?
glimshe today at 12:02 PM
Very interesting. I don't play chess but like to observe others playing and talking about it on YouTube.

I thought about something the other day... Modern chess sites run proprietary algorithms to detect cheating by modern engines. But would it be possible for an old engine, let's say from the 70s or 80s, running on modern hardware to deceive these algorithms?

They wouldn't win every tournament but still have a respectable performance.

weinzierl today at 1:52 PM
I find the general topic of purely algorithmic progress super interesting.

I just ran Andrej Karpathy's Tiny Stories model on a tiny ESP32. In principle we could probably have done this in the 80's and it would have been so amazing.

bentt today at 12:08 PM
Wonderful work! Just inspiring.

I had a Pentium Pro 200 back in the day, to run 3DSMax 1.0 on Windows NT 3.5.

emil-lp today at 12:03 PM
This is very cool. But yes, totally unsurprising that a megahertz machine with 100MB+ available ram has >2500 ELO.
cousin_it today at 12:29 PM
I'll go out on a limb and say that future AI models, running on today's smartphones, will be better at programming and formal math than today's frontier models running in datacenters. And by "future" I mean less than 5 years from now.
vhcr today at 12:22 PM
> As it turns out, the majority of the Elo gains (+720 of the +1335 gained) can be attributed to better programming, and not better hardware.

It's not so easy, a lot of that better programming can be attributed to better hardware, it wouldn't have been possible to implement NNUE or Fishtest without modern hardware.

Sopel today at 1:03 PM
Cool exploration, and very much needed because depressingly few people who use these engines actually understand this.

Back in 2021 I got cfish and weiss working on a 386sx, though didn't test it much. cfish was doing 5k nps so some results can be extrapolated. NNUE complicated things due to RAM requirements. Though I did train a small one for lichess at some point and they can be surprisingly good.

edit. A good view on the continuous progress of Stockfish itself https://nextchessmove.com/dev-builds

PowerElectronix today at 1:16 PM
Very cool project. It seems incredible that such a "humble" device for the time would match and beat deep blue. It must be true that software has been living off hardware for a very long time, even if as others comment, the latest developments in software have only been possible after hardware got much much better.
deleted today at 1:47 PM
fergonco today at 1:24 PM
A modern chess engine would definitely have defeated Kasparov in 1996. It would have had a database containing all the games, particularly that strange game against a computer nobody knew anything about, which seemed to be able to anticipate all of Kasparov's moves.
hn_submit today at 2:13 PM
Interesting article. Have we just acquired better insights into programming chess? Are ELO ratings guaranteed to predict whether a machine can beat a human or can a human outsmart a higher ELO rated chess program?
zellyn today at 12:38 PM
When I tried this with a 6502 (Apple II), it did not work. It was just too underpowered for enough modern algorithms to kick in. It might also be an LLm-driving skill issue of course!

https://github.com/zellyn/8fish

BobbyTables2 today at 1:43 PM
Makes me wonder if a modern ESP32 could have beaten him.

Of course, “human vs supercomputer” is more exciting to the public than “human vs toaster controller”, especially when the latter in small quantities costs less than a cup of coffee.

mcksp today at 1:40 PM
Nice post, thanks.

On a kinda similar note i always wander that about indie video games. We have this massive hits like balatro, vampire survivors, that easily could be made in the era of SNES or N64. But somehow we have to wait 30 years to get them.

It clearly wasn't technical side of things that prevented that, but also I don't believe it was lack of creativity.

Some could argue that it is just what art is, we will get every year some new thing, creating all "possible and meaningful" art right now isn't even valid thing to consider, because art isn't about exhausting a finite set of possibilities.

But at the other hand some mechanics, design solutions in the hindsight seem kinda obvious and make me wonder, what things we do not see now, but will look obvious to people 30 years from now.

fsckboy today at 5:44 PM
I think the author jumps around a bit in the piece muddying the facts. A 200 MHz Intel Pentium Pro he's talking about had a single core and a supported single thread, so while this may be true of a modern x64 computer:

>Chess engines like Stockfish, running on silicon instead of our human brains, dominate us at the first of these and analyze millions of positions per second.

the 200MHz Pentium Pro he's talking about was capable of 1.5 million instructions per second, which on it's own is not quite millions, and how many instructions would be required to evaluate a position, let's say very optimistically it's 10 for "valid move", now we're at 150k positions per optimistic second.

criddell today at 12:36 PM
I wonder how far back you can go? Could a modern chess engine run on a Cray 1? 386? 68k?
w-m today at 12:59 PM
> (Also, uh, if anyone has any ideas for projects I could do with a Pentium Pro in a few weeks once I no longer need it to host this chess engine ... do let me know!)

Throw a 3dfx Voodoo in there and do some real-time 3D Gaussian Splatting!

bjourne today at 12:22 PM
Why is the time per move fixed? A chess engine can, of course, do much better by deciding itself how much time to allot to each move.
ur-whale today at 3:16 PM
Get it to play Magnus, that'd prbly ground the whole affair.
RicoElectrico today at 2:25 PM
Polish folk of my vintage probably remember Snikers, a somewhat amusing if not dumb rules based chatbot from 2000s. I wonder what chatbot one could devise that could run comfortably on the hardware of the period, given our advances in NLP.
learntoplaypitc today at 3:01 PM
[flagged]
HardHardman2033 today at 1:35 PM
[flagged]
bell-cot today at 12:15 PM
In one sense, Knuth fans and really good engineers are correct to prioritize algorithms.

Unfortunately, most humans see big|new|expensive hardware as great status signifiers, barriers to lesser folks joining the Cool Club, and optimal sources of sales commissions.

squidbeak today at 2:20 PM
Technically interesting but also fanciful bollocks - because there was no Stockfish in 1996, and developing a sufficiently strong equivalent in time for the Deep Blue match would have taken substantially longer that the 18 years the current Stockfish has needed, thanks to the drastically weaker processor capabilities back then.