Does hardware follow the "cubed rule"?

Okay, let me explain…

So power plants, engines, refrigeration, power grids, and many many other things have a what I’ve read as a “cubed rule”. There may be other, better, names for it. I don’t know.

Basically, from how I understand it, a lot of things in engineering become exponentially more efficient as the scale goes up. That’s why we make giant power plants and move the electricity up to a hundred miles away. Because it’s more efficient to have one big plant, rather than multiple small ones all about the place.

It’s the same reason why trains and freighters are so cost effective.

And this same principle goes into the economics as well.

It’s exponentially cheaper to house 100 people in one apartment then it is in 100 houses.

SO, what I’m wondering is, is it exponentially cheaper to make a super computer than it is to do the same thing on multiple computers? Does the financial cost of computational power go down as the power goes up?

Like, if you were to make a super-computer for a million dollars, would it out perform 1,000 pc’s that cost $1000 each?

Kind of a weird thought, I know. I’m wondering about this in terms of cloud computers and streaming games.

It depends what you mean by efficient. Certainly faster, although much more risky. Just look at RAID.

It’s the other way around with computing you want to make the chips smaller to get more transistors and logic circuits for the same space. The smaller chips are the greater the reduction in power needed and heat generated.

But I think a lot of benefit of sizing things up is the reduction in materials, an apartment complex can use a single water system, heating system, electricity system scaled up but with less complexity and cost than 100.

This can apply also to larger scale supercomputers where the power supply, cooling system and secondary systems can be scaled up and reduced in cost. e.g. 1000 pc’s with displays, keyboards and mice vs 1 supercomputer with 10.

It sounds like your “cubed rule” is tied into the physics of thermodynamics, and heat is actually the enemy in computing.

1 Like

The cubed rule typically applies to the fact that a cube 2m * 2m * 2m actually has 8 times the volume of a cube with 1m sides. I’ve never heard it used to describe economies of scale.

But yes, the same rule applies. Per unit of computing power a large server farm is cheaper then a desktop PC. And a desktop PC is cheaper then a smart phone. And so forth.

There are a ton of reasons for this. But this sort of scaling and increase in cost efficiency for larger projects is almost universal.

3 Likes

In a way, yes. In a way, no.
Yes case:

^For the end consumer, it is cheaper to hire a serverfarm thanks to the electricity discount and providers having dedicated hardware (and software optimizations) for computing.

No case:
Go look at your microprocessor.
It is small, isn’t it?
Would you computer be 100x stronger if your physical processor was 100x bigger? Who knows, maybe the gain could be even 1000x stronger.
But no one is willing to spend on the R&D to develop that. Silicon Wafers are expensive as hell and coupled with a higher dye yield risk the bigger the size, it is business suicide. So It is not profitable for a mass market. And neither corporations when they could be using server farms.
You can SLI three graphics cards, but you can’t SLI 3 processors. Reason is if you could bridge two 3GHz processors, they suddenly wouldn’t become a 6GHz processor. Only 2 3GHz ones. They will work in parallel, not stack.
And that my friend is the reason we have to optimize code for multicore/multithreaded performance these days: because we can’t push more GHz.
So in a way you could even look at it as a technological regression.

1 Like

Multi-processor is a real thing. Both dual and quad.

3 Likes

Yup, you can even buy multi-CPU Mobo’s for PC’s… I’ve had a couple over the years.

  • disclaimer: this is not 100% technically accurate and is only meant to represent a simplified version of reality *

A CPU can only process one instruction (per core) at one time. As you add cores, you add power, but you overload other things like your IO ops, RAM reads, etc. For example, if you were to have 100 processors and one hard drive, it wouldn’t matter how fast your processors are because each would be waiting on File IO. If you had 100 hard drives, and they were laid out properly then you wouldn’t have that problem.

The “super computer” that you refer to is more or less just 1000 $1000 PCs, but in the same box rather than 1000 boxes. The power is the same, but the components are closer together allowing faster/more reliable connections between components, and they are optimized to reduce resource blocking as much as possible.

  • Edit *
    I thought about the 100 people living in one apartment analogy and I think it kind of fits. You have 100 people living in an apartment, it costs the same to feed them, but delivery/distribution of food is simplified/cheaper. They produce the same amount of solid/liquid waste product, so you have to have enough disposal units, and an adequate system that won’t get clogged. Again, its cheaper because you need one system, and the components in that system are closer together.
1 Like

One key reason CPU sizes remain small is heat dissipation. Removing heat is based on the CPU surface area. Generating heat is based on the CPU volume.

So a simplified 1 unit cube CPU has a volume of 1 and a surface area of 6. That’s a ratio of 1:6

A 2 unit cube CPU has a a volume of 8 and a surface area of 24. That’s a ratio of 1:3.

So a CPU twice as big is half as efficient at dissipating it’s own heat. It doesn’t take long to reach a critical point that will start melting CPUs. You can always throttle CPUs so they don’t generate as much heat. But in that case you might as well be using a smaller CPU.

New technology like superconductors might change this. But for now the ‘cube law’ is keeping a tight lid on efficient CPU sizes.

1 Like

For consumers, if you think in terms of utilisation as well as raw computational output there’s other wins as well.

For instance, I own a pretty beefy desktop PC with a giant CPU and a pretty epic GPU. I use it for maybe… 10% of the day, on average? Not much! In other words, my computer is sitting there doing absolutely nothing for anyone for 90% of the time.

With a bit of centralisation that could be easily and drastically improved upon, up to a theoretical 10x better than the current situation. If that computer were in a building somewhere instead of under my desk then, when I’d finished with it, the same bits could be put to use by someone else. That building could have specially designed electric supply and cooling systems so that it’s more efficient in those regards compared to what I’ve got in my house. On the down side, all IO would need to go through a network which would add some latency, and I’d still need something on my end to be able to get that IO to/from my screen, speakers, keyboard, etc. (though I suspect my phone would be more than up to the task if it had a couple of extra plugs).

Since nobody’s done anything like that (though I guess stuff like OnLive is very close) for consumer PCs I can only assume there’s some reason it’s still more efficient for us to all have our own powerful machines we barely use rather than renting a timeshare on a pool of machines. In my part of the world network bandwidth and latency for the IO would certainly be an issue. I guess a part of the issue would be that machines like mine are only a tiny minority, and there’s little to gain from centralising a bunch of office machines (which would have higher utilisation figures anyway)…

2 Likes

This is a very good point.

As far as latency goes, I’m not sure how much of an issue that would be for the right game. Say, an mmo.

What I’m thinking is an mmo where it all takes place on one machine on one server and people stream video back to their machine. That way a low end phone could handle it while at the same time the game could be huge with every items dynamic and tons of players and mobs on screen.