Top
Best
New

Posted by markusw 11 hours ago

Could a modern chess engine on a Pentium have defeated Kasparov in 1996?(nicholas.carlini.com)
310 points | 142 commentspage 3
BobbyTables2 5 hours ago|
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.

zellyn 6 hours ago||
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

mcksp 5 hours ago||
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.

jameshart 4 hours ago||
Just because a game could graphically have been displayed on an N64 doesn’t mean the game could be built. Vampire Survivors has hundreds of units on screen at a time firing hundreds of projectiles and weapon effects; running those on a memory bandwidth-constrained 93MHz single core processor in 4MB of RAM would be, uh… a challenge.
jerjerjer 1 hour ago||
Balatro possibly could have.
retsibsi 5 hours ago|||
> 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.

I don't know those specific games, but I think this often happens because, although the thing has been technically possible for decades, it used to be relatively difficult/expensive/obscure, and now it's far more accessible.

In those days, writing and publishing a SNES game was something that relatively very few people would have even thought to attempt, let alone had the knowledge and skills and capital to pull off successfully. Nowadays, creating and publishing a SNES-level game is comparatively very easy (at the technical level, that is; making a good original game is of course still hard), and so a large portion of the people with an idea and some motivation can actually go ahead and do it. And now that games are fully mainstream, there will be more of those people in the first place. Many of the resulting games won't be very interesting, but collectively we're exploring the design space much more quickly.

edit: I was probably silly to focus on literal SNES games instead of 'SNES era' games, but the point still stands: creating games for any platform back then was harder and more obscure than it is now (especially given that we're talking about a technical level that required quite efficient use of the hardware back then, but can be done with extremely inefficient use of the hardware now).

swiftcoder 4 hours ago||
> it used to be relatively difficult/expensive/obscure

I don't know I fully agree with this. Consoles always had the "walled garden" thing going for them, but on the other side of things, developing games became so cheap and easy during the personal computer revolution that whole industry collapsed in '83 under a massive flood of shovelware...

retsibsi 2 hours ago||
That's a fair point, but I think what I said still holds, with emphasis on the word 'relatively'. I don't think you could argue that it didn't get even easier, and significantly so, between then and now.
peterfirefly 4 hours ago|||
Better machines make it so much easier to experiment. You could make things fast on a SNES or a N64 but you'd have to sweat for it and your code turned into write-only concrete. You don't have to sweat much anymore and your code can easily stay lithe.
rkangel 4 hours ago|||
Technology is a progression where we learn new things, built on old things.

Game design (like other creative expressions) is the same. Each new game doesn't come from a vacuum, it's a progression from everything that has come before.

Marazan 4 hours ago|||
More opportunity to write games. It is infitenly easier to get into writing games now than back then.

Also, don't underestimate the "juice" that these days is relatively easy to do but would be expenseive back then. Balatro has dozens of very small things going on graphically that make it feel real nice to play that most certainly not be free on SNES hardware.

And like vampire survivors is just Robotron/Smash TV with infinity number of sprites on screen. The limitation is very much hardware in that case.

pessimizer 4 hours ago|||
I think it's better to say that it wasn't the electronic side of things that prevented that. Game design is technical.

Every board game could have been built thousands of years ago, at least after the dawn of some reasonable writing/drawing media. But technology in design hadn't accumulated enough. To go farther, every bit of math could have been done thousands of years ago, but new math had to draw on earlier math. New math didn't rely (much) on special paper.

Also, "hit" probably isn't a good metric. Those games might have showed up back then and just been moderately notable, like dozens or hundreds of other games were.

Asooka 4 hours ago||
The N64 was extremely constrained by its cartridges. If it had a CD-ROM drive, it could have easily won the console wars of its generation, or at least would have gotten ports of many more PS1 games. Probably one of the biggest blunders in gaming business history. Ah well.
criddell 6 hours ago||
I wonder how far back you can go? Could a modern chess engine run on a Cray 1? 386? 68k?
kragen 6 hours ago|
I don't think there's a meaningful difference between the Pentium and the 80386 except speed. You might have to change the compiler options a bit.

And, with more work, that's true of computers in general; they can all do the same computations once you somehow wire up enough memory: https://dmitry.gr/?r=05.Projects&proj=35.%20Linux4004

criddell 5 hours ago||
I understand about Turing machines.

For chess though, there are time constraints. The 386 is a lot slower. Is it fast enough?

kragen 5 hours ago||
That's a good question, and I don't know the answer, but I can try to guess.

An 80386 is about 10–13 Dhrystone MIPS, while a 200MHz Pentium Pro is about 90–450, according to https://netlib.org/performance/html/dhrystone.data.col0.html. So we're talking about a further slowdown on the order of 20×. I don't know how to estimate how much that would lower its Elo.

The article says:

> By making a number of adjustments to the algorithm and tuning it to the Pentium, we can increase its Elo to 2846 ± 35 at 1 second per move, 3109 ± 79 at 10 seconds per move, and 3180 ± 80 at 30 seconds per move.

So making it 30× faster would raise its 1-second Elo by about 334 points, and ln(30) is 3.4, so that's about 100 points per factor of e. ln(10) is 2.3, so we'd interpolate a prediction of 230 points gained at 10× faster, reasonably close to the 263 points reported.

If we extrapolate that in the other direction, ln(20) is 3.0, so on the 80386 we'd expect a loss of about 300 Elo points, down from 2846 to 2550 or so. Still enough to wipe the floor with Crafty, but low enough that Kasparov would usually beat it.

But we don't really know if that extrapolation is valid.

criddell 5 hours ago||
Great analysis. Thanks for taking the time to write it out.
kragen 4 hours ago||
I'm guessing that Nicholas Carlini could give you a much more accurate answer by reporting its Elo with a move limit of 50 milliseconds.
w-m 5 hours ago||
> (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!

RetroTechie 4 hours ago|
Run some current and still-compiled-for-i686 Linux or *BSD distros on it. See what breaks, save logs & report issues upstream.

A lot of support for old CPUs & platforms they're on goes through emulators like QEMU. Or plain old 'go with specs, disturb code as little as possible, and assume (hope) it still works'. But nothing beats running on actual hardware. Uncommon configurations, specific drivers that may have been broken (sometimes for a looong time before someone notices), spec says A but hardware does B, etc.

ur-whale 3 hours ago||
Get it to play Magnus, that'd prbly ground the whole affair.
bjourne 6 hours ago||
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.
spuz 4 hours ago|
Why would it be better for an engine to use less than the maximum time it has available per move?
chihuahua 2 hours ago||
Because in competitive chess games, the time limit is usually 40 moves in 90 minutes. You don't have a fixed amount of time per move. It's up to you how you want to spend that time budget.
bjourne 2 hours ago||
Exactly, and budgeting your time well is a very important skill of professional chess players.
RicoElectrico 4 hours ago||
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 3 hours ago||
[flagged]
HardHardman2033 5 hours ago|
[flagged]
More comments...