I have one possible explanation for such a phenomena to happen that cooling might make a 286 run faster. What may have been happening is that cooling the CPU shifted the timing of the CPU which is very plausible, this may have affected the system control circuits that terminate the cycles if something was right over the margin of timing. In some cases a slight shift in timing may advance the terminated T_COMMAND of the 286 into one CPU clock cycle earlier. That could theoretically result in a significant faster performance. Imagine one T_STATUS and for example three T_COMMAND cycles, a total of 4 CPU cycles that were executed previously, shifting into one T_COMMAND earlier, this would result in 1 T_STATUS and 2 T_COMMAND cycles, and increase the efficiency of the CPU by 25%.
It really wasn’t that fancy, I didn’t even measure the clock speed - just wrote a little program (I think it was in QBasic) that calculated factorials or something (don’t remember the details), then measured performance difference between no cooling, ice water, and liquid nitrogen. Made some graphs, printed with my color inkjet (very fancy at the time).
It was more a situation of being a computer nerd at exactly the right time and place so that it was possible to really impress adults with minimal actual effort
> It was more a situation of being a computer nerd at exactly the right time and place so that it was possible to really impress adults with minimal actual effort
Oh, I know that feeling.
Blew one teacher's mind by doing animations on the RISC OS machines at school, they didn't know it was even possible.
4D-maze visualisation and route-finding at university.
What was weird was all the times I've shown people Word Lens or Google Translate, augmented reality translations blew the minds of other developers even a decade after that was demonstrated.
You can just buy it at the appropriate gas supplier, my local university used to sell it. If your parent was a nerd or a welder it would be fairly easy, it can just be expensive getting an appropriately sized dewar if a thermos isn’t big enough for your usage (or if you can’t find someone willing to sell you only a thermosful, which is admittedly a little dangerous)
My university was the only place in my city that had a plant for liquid nitrogen so they supplied all the hospitals. They also were pretty cool about giving it out, so you could do diy ice cream or minor cosmetic procedures.
My dad got it just to play with on a couple of occasions. We froze and reanimated brine shrimp once..blew up a 2 liter bottle (do not attempt - it was really loud).
He just got it from a gas supply - I’m sure it’s the same situation today. The liquid nitrogen itself is fairly inexpensive, but you need to rent a special container for it.
How did this work? 286 didn't have free clock scaling. Cooling it could make it use less power I guess, by lowering internal resistances, but that won't make it run faster, it's still running based on the clock rate.
More importantly, a hot CPU wouldn't perform worse, it would just break at some point when a computation got the wrong result.
And just yesterday, I was remembering a 6th grade science experiment that involved a radar gun that my father "borrowed" from a police dept (I suspect he paid to borrow or bought it outright and didn't tell me) and how that was somewhat sophisticated compared to the projects of other kids.
Really put me in my place with this one. Nice work.
Older CPUs didn't have a range of performance. They either worked at a clock speed, or didn't. If you put in a very high rate crystal, the CPU would either work at that higher rate without cooling, or not work without cooling. Clock speed was a constant.
>I didn’t even measure the clock speed - just wrote a little program (I think it was in QBasic) that calculated factorials or something (don’t remember the details), then measured performance difference between no cooling, ice water, and liquid nitrogen.
>My measurement technique was extremely simplistic - how much wall clock time does it take to do this computationally-intensive task. It ran faster with ice water, and even faster with the liquid nitrogen (until it died from condensation).
There is no world in which a 286 has a program that runs "slow" without cooling, and fast with cooling. If a clock speed "needs cooling", it's because the CPU crashes otherwise. If jdenning changed the crystal, THAT'S what increased the CPU speed. They seem adamant that wasn't the case though.
Dude, that's cool! Now I have to look around if someone has anything similar.
I was always trying to find ways to improve the performance of my systems when I was a kid. Tweaking configs, removing bloat, stealing components from my parents systems. I would've loved to have tried what you did!
286 systems generally didn’t have programmable on-chip clock oscillators for the CPU. There was an external clock chip that generated the exact frequency needed for the CPU; sometimes there was another setting for a reduced speed for compatibility. If you changed this clock, you’d also disturb all the other I/O that depended on it.
I can see why you won! In the early 80s, just building the clock circuitry to generate arbitrary frequencies for the CPU only would have been quite an engineering feat.
It could work either way. It would be better to phrase it as "outside of turbo mode it operated as a 4mhz 8086, with turbo it operated faster (usually the CPU's actual rated speed)".
I mean, my dad had already got liquid nitrogen for us to play with on a few occasions, I think he suggested “something with liquid nitrogen would be science fair gold”..it doesn’t take very deep knowledge to understand that cooler is better for a cpu.
My measurement technique was extremely simplistic - how much wall clock time does it take to do this computationally-intensive task. It ran faster with ice water, and even faster with the liquid nitrogen (until it died from condensation).
I truly don’t understand why this anecdote seems to be offensive - but let me assure you, I’m claiming no scientific discovery or prodigious understanding of cpus here.
It was neat - computers, liquid nitrogen, color charts.. in the early 90s. That kind of shit got you scholarships back in the day.
I think it's because CPUs don't run faster just because they're colder, they run faster when you overclock them. Often to get them stable at higher clock speeds you need more voltage, which at some point demands more cooling to mitigate that.
AFAICT doing interesting but ultimately trivially complicated stuff as a youngster can still result in scholarships etc, Ahmed Mohamed comes to mind.
Perhaps that generation of cpus was very insufficiently cooled? This is before people even really put much of a heat sink on a cpu. The code did run faster with ice water, and faster again with liquid nitrogen. It was a high school, county-level science fair. I don’t know how things stand today, but at the time “will a computer run faster with better cooling?” was a perfectly acceptable level of scientific inquiry for a 14 year old.
I’m truly sorry if my childhood anecdote has inadvertently spread misinformation on this topic :)
> Perhaps that generation of cpus was very insufficiently cooled? This is before people even really put much of a heat sink on a cpu.
The 286 came out in 1982 but it wasn't until ~2000 (with the release of the Pentium 4) that thermal throttling was introduced.
From ~1995-2000 if the CPU got over temperature, your PC just turned off immediately. And prior to ~1995 if you ran a CPU without a heatsink it could overheat and destroy itself. We just had to be careful not to do that :)
the singular form of evidence is not anecdote. I think it's an interesting conundrum myself. as others have pointed out, the story as it was told is not consistent with the physics and current knowledge of what things were like in those days: CPUs did not yet do thermal throttling and simply cooling a CPU from that time doesn't make it go faster.
somebody else mentioned the possibility that the cooling did something to the crystal oscillator, but I think there are another two explanations that either alone or in combination might explain what happened: unreliable narrator (OP was very young when the memory was formed) and external influence - his dad or teacher might have done the overclocking which might have been beyond his understanding and therefore notice at the time.
either way there's no reason to take anecdotes uncritically.
That’s right. Did somebody investigate the same thing and had different results? Because in this thread there are only theoretical explanations why it cannot be, and not experiments. So in short, there is only one data point.
What conclusions do you believe it is reasonable to draw in light of this? Is your position significantly different from what I said:
> either way there's no reason to take anecdotes uncritically.
> Because in this thread there are only theoretical explanations why it cannot be
No, the explanations are referring to the mountain of evidence based on the physics of the chips and the known characteristics of the chips of the time. That's not theoretical, that past observations.
I get it, I guess I just don’t see the point of trying to determine how much of the project I did myself here and now, 30 years later. It was my idea and I wrote the code, but my dad certainly helped with the physical design, and I think he suggested that I test ice water.
I will leave it to history to judge if I truly earned that blue ribbon
>I truly don’t understand why this anecdote seems to be offensive - but let me assure you, I’m claiming no scientific discovery or prodigious understanding of cpus here.
You are stating that providing better cooling to a 286 improved it's performance in the terms of calculating faster.
This is, flatly, false. If you have a 286 clocked at 8mhz, it doesn't matter how much you cool it, it will still run at 8mhz, and still only execute the same number of instructions per clock.
To make a 286 perform more calculations per second, you MUST increase it's clock rate, directly, by installing a faster oscillator. Running at a high clock rate reduces the time each gate in the circuit has to settle to a state, high or low. This can cause the CPU to have what it experiences as "random" gate flips, that will eventually crash it. To fix this, you can increase the voltage, which can force the gates to stabilize faster. This creates more heat. This heat is what more cooling can extract.
In modern CPUs, the voltage, clock speed, and cooling can all be varied independently (within limits) to acheive whatever is desired: quietest/coolest performance, fastest clock, highest performance, etc.
This is not true on a 286.
If the CPU does not crash with a faster oscillator, extra cooling will not increase it's performance.
Am I the only one that was disenchanted with the article? It was basically and advertisement for Elmor Labs and everything was “swap out a part for an Elmor part configured to do the same thing”.
The cooling was basically for show given the temperature- and voltage-independent scaling wall; the proper place to go would have been an ARM-based development house to use the debug tools, they’re certainly available.
I’m not a Pi guy and I don’t know if the dev samples/hal/device trees have been released yet, but another option is to set up a bare metal environment and bring up the clock buses one by one to a different multiplier and see if you can reproduce it manually executing neon instructions in a tight loop.
Don't know about present. Back when I worked with a version 2, Raspbian couldn't handle a 2560×1080 UltraWide without low frame rate with stuttering but ArchARM with Sway had no issues.
I would be suspicious of that being the display server as much as the OS, though... although, granted, I suppose it depends on what the fair basis is for comparison. A person could argue that "performance of the default graphical stack" is at least as important as "performance of a CPU-bound workload if you tune everything else".
Usually this holds true in terms of how quickly performance optimizations and bug fixes trickle down to other distributions.
Like the NUMA patch mentioned in the video-it is already included in Pi OS (and has been for a while, but it takes time for it to make its way into other distros.
>Can't wait for someone like kingpin or gamers nexus to try helium over clocking....
Basically only useful to say you did. It's way more expensive, and doesn't really help with cooling because once you're cryogenic the bottleneck tends not to be the temperature of your liquid. Also helium has a lower heat of vaporisation and heat capacity than nitrogen, so it could easily perform worse.
Just replying for others because this confused the hell out of me until I said it out loud - Dippin' Dots, the ice cream treat you find at amusement parks.
I won a science fair when I was a kid doing this with a 286; it worked great except for all of the condensation :D
I have one possible explanation for such a phenomena to happen that cooling might make a 286 run faster. What may have been happening is that cooling the CPU shifted the timing of the CPU which is very plausible, this may have affected the system control circuits that terminate the cycles if something was right over the margin of timing. In some cases a slight shift in timing may advance the terminated T_COMMAND of the 286 into one CPU clock cycle earlier. That could theoretically result in a significant faster performance. Imagine one T_STATUS and for example three T_COMMAND cycles, a total of 4 CPU cycles that were executed previously, shifting into one T_COMMAND earlier, this would result in 1 T_STATUS and 2 T_COMMAND cycles, and increase the efficiency of the CPU by 25%.
What are "T_COMMAND" and "T_STATUS"? I searched but that terminology doesn't seem to be used much
Those are states of the 286. This is described in the Intel 286 documentation for system engineers.
Thanks for your reply
Yo, Imma need you to provide more details, this sounds super awesome! Do you perhaps have any pictures or the original paper for your project?
It really wasn’t that fancy, I didn’t even measure the clock speed - just wrote a little program (I think it was in QBasic) that calculated factorials or something (don’t remember the details), then measured performance difference between no cooling, ice water, and liquid nitrogen. Made some graphs, printed with my color inkjet (very fancy at the time).
It was more a situation of being a computer nerd at exactly the right time and place so that it was possible to really impress adults with minimal actual effort
> It was more a situation of being a computer nerd at exactly the right time and place so that it was possible to really impress adults with minimal actual effort
Oh, I know that feeling.
Blew one teacher's mind by doing animations on the RISC OS machines at school, they didn't know it was even possible.
4D-maze visualisation and route-finding at university.
What was weird was all the times I've shown people Word Lens or Google Translate, augmented reality translations blew the minds of other developers even a decade after that was demonstrated.
Right time and place.
How did you get your hands at liquid nitrogen as a kid?
You can just buy it at the appropriate gas supplier, my local university used to sell it. If your parent was a nerd or a welder it would be fairly easy, it can just be expensive getting an appropriately sized dewar if a thermos isn’t big enough for your usage (or if you can’t find someone willing to sell you only a thermosful, which is admittedly a little dangerous)
My physics department had a spigot coming out the wall and sheet with the number of liters you poured yourself. It was about the price of milk.
This is exactly correct. The nerd/hacker acorn doesn’t fall far from the nerd/hacker tree.
Same reason I had a spare 286 lying around
My university was the only place in my city that had a plant for liquid nitrogen so they supplied all the hospitals. They also were pretty cool about giving it out, so you could do diy ice cream or minor cosmetic procedures.
My dad got it just to play with on a couple of occasions. We froze and reanimated brine shrimp once..blew up a 2 liter bottle (do not attempt - it was really loud). He just got it from a gas supply - I’m sure it’s the same situation today. The liquid nitrogen itself is fairly inexpensive, but you need to rent a special container for it.
Dewar flask is the container. Hospitals also have liquid gasses but don't usually sell it directly.
[dead]
How did this work? 286 didn't have free clock scaling. Cooling it could make it use less power I guess, by lowering internal resistances, but that won't make it run faster, it's still running based on the clock rate.
More importantly, a hot CPU wouldn't perform worse, it would just break at some point when a computation got the wrong result.
How did this work?
By swapping crystal oscillators with a higher frequency.
And just yesterday, I was remembering a 6th grade science experiment that involved a radar gun that my father "borrowed" from a police dept (I suspect he paid to borrow or bought it outright and didn't tell me) and how that was somewhat sophisticated compared to the projects of other kids.
Really put me in my place with this one. Nice work.
Older CPUs didn't have a range of performance. They either worked at a clock speed, or didn't. If you put in a very high rate crystal, the CPU would either work at that higher rate without cooling, or not work without cooling. Clock speed was a constant.
>I didn’t even measure the clock speed - just wrote a little program (I think it was in QBasic) that calculated factorials or something (don’t remember the details), then measured performance difference between no cooling, ice water, and liquid nitrogen.
>My measurement technique was extremely simplistic - how much wall clock time does it take to do this computationally-intensive task. It ran faster with ice water, and even faster with the liquid nitrogen (until it died from condensation).
There is no world in which a 286 has a program that runs "slow" without cooling, and fast with cooling. If a clock speed "needs cooling", it's because the CPU crashes otherwise. If jdenning changed the crystal, THAT'S what increased the CPU speed. They seem adamant that wasn't the case though.
Dude, that's cool! Now I have to look around if someone has anything similar.
I was always trying to find ways to improve the performance of my systems when I was a kid. Tweaking configs, removing bloat, stealing components from my parents systems. I would've loved to have tried what you did!
286 systems generally didn’t have programmable on-chip clock oscillators for the CPU. There was an external clock chip that generated the exact frequency needed for the CPU; sometimes there was another setting for a reduced speed for compatibility. If you changed this clock, you’d also disturb all the other I/O that depended on it.
I can see why you won! In the early 80s, just building the clock circuitry to generate arbitrary frequencies for the CPU only would have been quite an engineering feat.
My 286 was nominal 8 MHz, but the red turbo button boosted that to 12 MHz. How far did you manage to push it?
The turbo button actually was used to underclock the CPU's speed, not increase it.
https://en.wikipedia.org/wiki/Turbo_button
It could work either way. It would be better to phrase it as "outside of turbo mode it operated as a 4mhz 8086, with turbo it operated faster (usually the CPU's actual rated speed)".
Hah that reminds me of the way of a supermarket chain to shill rebates.
Turbo button not pressed, run at lower speed than rated
Turbo button pressed, run at rated speed
No rebate, sell at a huge margin
Rebate, sell at a minimum margin
The linked article suggests it could be both ways for button behavior. But I see what you mean for how it achieves it.
Yup, on many boards you could either jumper the direction (turbo switch closed= slow or closed = fast), or set it in the BIOS.
So you thought of this idea yourself at that age?
I mean, my dad had already got liquid nitrogen for us to play with on a few occasions, I think he suggested “something with liquid nitrogen would be science fair gold”..it doesn’t take very deep knowledge to understand that cooler is better for a cpu.
Apparently it takes a bit to understand that CPU temperature doesn't affect clock speed, though!
My measurement technique was extremely simplistic - how much wall clock time does it take to do this computationally-intensive task. It ran faster with ice water, and even faster with the liquid nitrogen (until it died from condensation).
I truly don’t understand why this anecdote seems to be offensive - but let me assure you, I’m claiming no scientific discovery or prodigious understanding of cpus here.
It was neat - computers, liquid nitrogen, color charts.. in the early 90s. That kind of shit got you scholarships back in the day.
I think it's because CPUs don't run faster just because they're colder, they run faster when you overclock them. Often to get them stable at higher clock speeds you need more voltage, which at some point demands more cooling to mitigate that.
AFAICT doing interesting but ultimately trivially complicated stuff as a youngster can still result in scholarships etc, Ahmed Mohamed comes to mind.
Perhaps that generation of cpus was very insufficiently cooled? This is before people even really put much of a heat sink on a cpu. The code did run faster with ice water, and faster again with liquid nitrogen. It was a high school, county-level science fair. I don’t know how things stand today, but at the time “will a computer run faster with better cooling?” was a perfectly acceptable level of scientific inquiry for a 14 year old.
I’m truly sorry if my childhood anecdote has inadvertently spread misinformation on this topic :)
> Perhaps that generation of cpus was very insufficiently cooled? This is before people even really put much of a heat sink on a cpu.
The 286 came out in 1982 but it wasn't until ~2000 (with the release of the Pentium 4) that thermal throttling was introduced.
From ~1995-2000 if the CPU got over temperature, your PC just turned off immediately. And prior to ~1995 if you ran a CPU without a heatsink it could overheat and destroy itself. We just had to be careful not to do that :)
Alternative theory: you also ended up cooling the crystal oscillator, which subtly influenced clock speed.
At any rate, sounds like a really fun high school project!
People get upset when their understanding of the world conflicts with evidence, especially the scientifically minded.
I mean, this tends to be true, but what evidence are you referring to?
The evidence relayed by the person I replied to, that as the chip was cooled the performance increased.
the singular form of evidence is not anecdote. I think it's an interesting conundrum myself. as others have pointed out, the story as it was told is not consistent with the physics and current knowledge of what things were like in those days: CPUs did not yet do thermal throttling and simply cooling a CPU from that time doesn't make it go faster.
somebody else mentioned the possibility that the cooling did something to the crystal oscillator, but I think there are another two explanations that either alone or in combination might explain what happened: unreliable narrator (OP was very young when the memory was formed) and external influence - his dad or teacher might have done the overclocking which might have been beyond his understanding and therefore notice at the time.
either way there's no reason to take anecdotes uncritically.
> the singular form of evidence is not anecdote
It is in Bayesian reasoning.
that's right, and you don't just update your posterior to match the one dodgy data point at the expense of decades of evidence.
That’s right. Did somebody investigate the same thing and had different results? Because in this thread there are only theoretical explanations why it cannot be, and not experiments. So in short, there is only one data point.
What conclusions do you believe it is reasonable to draw in light of this? Is your position significantly different from what I said:
> either way there's no reason to take anecdotes uncritically.
> Because in this thread there are only theoretical explanations why it cannot be
No, the explanations are referring to the mountain of evidence based on the physics of the chips and the known characteristics of the chips of the time. That's not theoretical, that past observations.
Show me those observations. Without that your word is just another anecdote.
what would you accept as evidence? does it need to be certified by a notary public?
You know well that a single study about the temperature response of the given CPU is enough.
Those CPUs can fly. Now you have to show me a single study about the flight response of the given CPU.
The logic which you apply here caused several decades and centuries of scientific delays for no good reason.
that's right, we should have been throwing CPUs off a cliff several decades and centuries ago.
Alright, that's an interestingly chill take on 'evidence'.
Never has someone described my personal epistemology so succinctly!
I am not claiming to be offended, just pointing out the fine line between "Dad's science project" and "Child's science project". It's often blurred.
I get it, I guess I just don’t see the point of trying to determine how much of the project I did myself here and now, 30 years later. It was my idea and I wrote the code, but my dad certainly helped with the physical design, and I think he suggested that I test ice water.
I will leave it to history to judge if I truly earned that blue ribbon
But why?
The lines get blurred because some parents overstep their boundaries to get the child ahead.
Some of us do it so that our kids learn something important, regardless.
>I truly don’t understand why this anecdote seems to be offensive - but let me assure you, I’m claiming no scientific discovery or prodigious understanding of cpus here.
You are stating that providing better cooling to a 286 improved it's performance in the terms of calculating faster.
This is, flatly, false. If you have a 286 clocked at 8mhz, it doesn't matter how much you cool it, it will still run at 8mhz, and still only execute the same number of instructions per clock.
To make a 286 perform more calculations per second, you MUST increase it's clock rate, directly, by installing a faster oscillator. Running at a high clock rate reduces the time each gate in the circuit has to settle to a state, high or low. This can cause the CPU to have what it experiences as "random" gate flips, that will eventually crash it. To fix this, you can increase the voltage, which can force the gates to stabilize faster. This creates more heat. This heat is what more cooling can extract.
In modern CPUs, the voltage, clock speed, and cooling can all be varied independently (within limits) to acheive whatever is desired: quietest/coolest performance, fastest clock, highest performance, etc.
This is not true on a 286.
If the CPU does not crash with a faster oscillator, extra cooling will not increase it's performance.
How did you overclock it??????
You replace the crystal on the motherboard with a faster one. I did it on 386s and 486s. Adrian Black recently did it with a 286 too I think.
A 3600 MHz 286?! Clearly you jest.
Am I the only one that was disenchanted with the article? It was basically and advertisement for Elmor Labs and everything was “swap out a part for an Elmor part configured to do the same thing”.
The cooling was basically for show given the temperature- and voltage-independent scaling wall; the proper place to go would have been an ARM-based development house to use the debug tools, they’re certainly available.
I’m not a Pi guy and I don’t know if the dev samples/hal/device trees have been released yet, but another option is to set up a bare metal environment and bring up the clock buses one by one to a different multiplier and see if you can reproduce it manually executing neon instructions in a tight loop.
> Coming from Ubuntu in my SkatterBencher guide, there’s two things we can improve:
> 1. Change to the official Raspberry Pi OS
Now I'm curious how much OS matters. Has anyone done a bunch of benchmarks to see if the Pi is faster/slower on Ubuntu/RPiOS/Alpine/ArchARM/FreeBSD?
Don't know about present. Back when I worked with a version 2, Raspbian couldn't handle a 2560×1080 UltraWide without low frame rate with stuttering but ArchARM with Sway had no issues.
I would be suspicious of that being the display server as much as the OS, though... although, granted, I suppose it depends on what the fair basis is for comparison. A person could argue that "performance of the default graphical stack" is at least as important as "performance of a CPU-bound workload if you tune everything else".
I don't know if it still holds true, but historically speaking, Raspberry Pi OS has been the best option for out of the box performance.
Usually this holds true in terms of how quickly performance optimizations and bug fixes trickle down to other distributions.
Like the NUMA patch mentioned in the video-it is already included in Pi OS (and has been for a while, but it takes time for it to make its way into other distros.
Can't wait for someone like kingpin or gamers nexus to try helium over clocking....
Iv been trying to keep an eye out for used LN2 tanks and dewars on different used places so I can grab one for cheap.
Always wanted to try making dip and dots at home, and going for insane PR's over clocking.
>Can't wait for someone like kingpin or gamers nexus to try helium over clocking....
Basically only useful to say you did. It's way more expensive, and doesn't really help with cooling because once you're cryogenic the bottleneck tends not to be the temperature of your liquid. Also helium has a lower heat of vaporisation and heat capacity than nitrogen, so it could easily perform worse.
> dip and dots
Just replying for others because this confused the hell out of me until I said it out loud - Dippin' Dots, the ice cream treat you find at amusement parks.
tank youth for the bone apple tea!
I think you have a Pi stuck to your LN2 container
the ln2 pot looks quite ridiculous with the board, but to be fair it seems less complex to make it work due to "blank" pcb around the soc.
while not mentioned in the article, i wonder if deliding the soc (as done previously here - https://www.jeffgeerling.com/blog/2024/new-2gb-pi-5-has-33-s...) could help with this.
[dead]
Holy shit.