Why are the GHz speeds in computers the same after such a long period of time?

2.98K views

Why are the GHz speeds in computers the same after such a long period of time?

In: Engineering

26 Answers

Anonymous 0 Comments

A lot of this has already been answered, but let me provide a bit of perspective from closer to the silicon level since I’m currently on an internship working with this issue. While clock speeds are important, they are not the only factor in computer performance. Thus, current designs aren’t focused solely on increasing clock speeds.

One of the main issues is simply heat. As we increase the rate transistors switch the power required increases exponentially and it gets difficult to cool.

A more fundamental issue is that transistors and associated wire have capacitances, or the ability to store electrical charge. This effectively slows down the rate you change your signal- as the electrons in these reservoirs counteracts any changes you make until the electrons it holds is depleted. This makes a nice sharp clock signal flatten out and slows down rise times.

Lastly, it is difficult to design good interconnects. Even if we have a really high clock speed, it’s not easy to design wires that can carry information at that clock speed. All wires have some capacitance and inductance where energy is temporarily stored in electric and magnetic fields instead of being sent down the wire. Worse still, the magnitude of this energy that is stored is frequency-dependent. This means at higher clock speeds/frequencies a lot more energy is “lost” before getting to the end. This means that the magnitude of the signal at the end is a lot less. For example, one thing you see is that at higher frequencies, signals on one wire start leaking to other wires close by- something you obviously want to avoid.

Anonymous 0 Comments

Processors can’t multitask. What they can do, however, is rapidly switch between different tasks. Pushing clock speed (Ghz) higher has diminishing returns for the amount of effort and cost involved, in getting better performance from the computer. Instead, its better to have multiple cores, each one capable of doing its own task so collectively, the CPU as a whole is multitasking. This means you can play a video game, for instance, having one core dedicated to that, and another to a background task so they aren’t competing to use the same core.

Anonymous 0 Comments

Used to be that we’d figure out how to cram twice as many transistors on chips every year and a half or so, that’s what we call Moore’s law. Used to be, too, that those transistors which were half the size also drew half the power, but at one point that stopped, meaning you could maybe put twice the transistors on the chip but it would also draw twice the power, meaning it would heat up twice as much, and heat dissipation became the limiting factor, not ability to make faster processors in itself.

Anonymous 0 Comments

Physically, processors can only process so quickly. We’re limited by physics. We can only make things so small before we run into issues, and we can only transmit information so quickly with our current technology.

Imagine you’re an Olympic athlete. Let’s say you do the long jump. Due to limitations of physics and due to the limitations of the human body, there’s only so far a person can really long jump. It can only be optimized so much before humans reach a ceiling where they just can’t higher records for the long jump. The Olympic record for the men’s long jump is 8.90 meters in 1968. That’s over 50 years ago!

Anonymous 0 Comments

Imagine you had to blow into a straw. If you blew slowly, it’s pretty easy. If you blew hard you’d get a lot of resistance but it’s possible. Now try blowing with your full strength. It’s very hard right? Now try the same with 2 straws. It’s suddenly a lot easier to blow air out of them. What if you had 4 or even 8? It’s similar in computers. It becomes very hard to make it tick tock after a certain point (which seems to be about now). But it is fairly easy to add more things that go tick tocking, as you have to solve more logistical issues rather that technical ones.

so if you were over 5: making a cpu with a clock speed of say 8 GHz would require a lot of advanced physics, possibly a better understanding of quantum mechanics and so on (other comments explain this better). The only thing you have to figure out with sticking more cores is, how do you remove the heat from there (as it’s a very small surface and you can conduct so much heat per square cm), how to keep them supplied with things to do. These are not easy things to tackle, but are easier than increasing clock speed. Now, this makes the job of a programmer harder, but apparently it doesn’t seem too bad for now.

Anonymous 0 Comments

I’ll give you an analogy.

Let’s say you want to clean your kitchen.

Increasing the frequency (ghz) is sort of like you moving around and doing things faster, eg walking, picking things up etc. Now, you can get yourself pretty fast if you drink a lot of coffee say, but you will reach a limit.

Now to get around this limit we can do two things in our kitchen cleaning analogy.

Adding another person to help you clean is like adding another core. As time has moved on the cores or in the analogy people over time are able to work together better, eg not getting In each others way, blocking the sink. There is a limit with this too, think of trying to clean your kitchen with 20 people, you wouldn’t be able to manage that in normal circumstances at home.

And the other way to improve performance is how you can accomplish a task. Back to the kitchen analogy. Compare manually sweeping up the dust and crumbs with a brush and using a vacuum cleaner. Or adding in a dishwasher. Lots of the performance gains in processors these days are also from optimizing how they perform common sub tasks that they will run into.

I hope that clears it up a bit.

Anonymous 0 Comments

Think a lot of these explanations are too technical for this sub.

GHz is only one factor in how fast a computer is. Like how in cars, horsepower is only one of many factors that impacts how fast it is.

Nowadays, it’s easier to make computers by making them more efficient, rather than raw power.

Anonymous 0 Comments

They went from one core that was say 3.74 GHz in 2006 – that used 115W of power and 135 mm2 in size and $999 to 6 cores that are each 4.0 GHz that use 140W of power and 82 mm2 in size for $617 in 2015

Thats a big jump in performance, dropping in size and only using 23W per core vs 115W

Anonymous 0 Comments

Imagine you had a maid who comes in and cleans your house every day. Over time it turns out you make more of a mess so you make the maid work faster and faster. But realistically, there’s only so fast she can work. That’s the problem with clock speed. You can make it faster and faster, but there’s only so fast it can reasonably go.

A much better solution is to hire multiple maids and have them work at a reasonable pace. So while one cleans the kitchen, another is cleaning the living room, etc. Overall, the amount of work they can get through is more than one maid working really fast. This is like a CPU with multiple cores.

So basically, instead of struggling to make 1 CPU that runs at 10ghz (which is really hard), manufacturers instead make a 4 core CPU where each core runs at, say, 2.5ghz, for roughly the same overall performance, and that’s really easy.

Anonymous 0 Comments

Idk if somebody mentioned this yet but there will come a point where the transistors bridges inside the CPU are so close together that the electrons will quantum tunnel across the bridge whether it’s open or closed. Basically like a light switch turning itself on and off randomly because the wires are so close together the electricity will jump across the gap anyways. So there are upper limits, defined by the laws of physics, on how tightly we can pack the transistors. There are downsides to adding cores rather than increasing speeds but there might not be much of an option. Programmers write sets of instructions and the CPU executes one, and then the next, and then the next. By using multiple cores you have to send different sets of instructions to different cpus. It’s called threading And it can be very difficult for a novice programmer to do correctly. It requires skill, knowledge, and experience to do it correctly. But if done correctly, it can be more useful to have multiple cpus than one very powerful one