Multi-Cores evidence that Moore's Law is already breaking down?

If this was a car, would it be equal to installing two separate motors to increase performance because the law of diminishing returns makes it cost prohibitive to get a significant performance increase out of a single motor?

If Moore's Law is indeed ending and Heisenberg's Law is beginning, how do you think it will influences Apple products five years from now? Will Mac performance plateau while iOS devices continue to rapidly increase performance with the use of multi-cores until Macs and ios devices have nearly the same performance in 5 years or so?

How many multiple-cores can we go before it becomes redundant?

We become what we behold. We shape our tools and then our tools shape us.- Marshall McLuhan

The general expectation is that Moore's Law will break down as we approach the atomic scale. However, Intel's trigate 3D process, to be introduced with Ivy Bridge, may provide a way around that limitation -- for a while.

We can expect a generation or two of continued exponential growth will likely continue only for leading-edge chips such as multi-core microprocessors. More designers are finding that everyday applications do not require the latest physical designs.
It could well be that, Moore's Law (halving of the dimensions and doubling of speed of chips every 18 months), will run out of steam very soon based on current production and materials used. Only a few high-end chip makers today can even afford the exorbitant cost of next-generation research and design, much less the fabs to build them.
There are three next-generation technologies that are still on the fast track for exponential growth: optical interconnects, 3-D chips and accelerator-based (GPU) processing. Perhaps optical interconnects will become commonplace, with chip-to-chip optical connections on the same board coming soon.
When you buy a CPU chip it has a max speed i.e. 3 Ghz. The chip will perform without error when running at or below that speed withing the chips normal operational temperature parameters.
There are 2 things that limit a chips speed, transmissions delays on the hip and Heat build up on the chip.
Transmission delays occur in the wire or etchings on the silicon. A chip in its simplicity is a collection of transistors and wires, the transistor is the on-off switch. To change state the switch as to charge up or drain the wire the connects it to the next transistor. The size of the wire and transistors has gotten smaller of the year but there is a limit, charging and draining the wires take time and there is a minimum amount of time for a transitor to flip states. As transistors are chained together the delays add up and even though they are smaller the sheer number of transistors (currently approx 2.5 billion in a six core i5 and only 1 billion in a dual core itanium 2. So the faster chips with more transistors also suffer from longer chain limits which impacts speed. Now that manufacturing technologies are getting smaller this is exacerbating the problem as at the 10nm level the electrons can leak so that on-off switching is no longer stable.
Heat is the 2nd factor. every time the transistor changes state it leaks a bit of electricity. This creates heat. As the transistors sizes shrink the amount of wasted current is less but the faster the clock speed 3.4Ghz) the more heat it generates and the more dense the transistors are the more overall heat is generated. This also puts another limit on speed.
So using current materials with current manufacturing processes we should not expect to see 10Ghz CPUs.

(yes I did meet Carl Anderson and plagiarised my notes on his speech for this)

Multi-core CPUs are actually direct supporting evidence of Moore's Law. It's was never a prediction about clock rate or performance. It was always about the number of transistors: the number of transistors per square area in a CMOS device will double approximately every 18 to 24 months.

By increasing the cores, it maintains this prediction of transistor counts doubling every 18-24 months.

Moore's Law is not some natural, physics based "law". It's an economics one. He had other "laws" such as the cost of developing a next gen CMOS process approximately doubles every generation. Maybe it's just a convenience in the industry to create processes that double transistor counts per square area every generation, and that was his insight. Once it is set in motion, it's difficult to break as the entire industry relies on each others developments.

The clock rate and end user performance are only correlative.

Quote:

Originally Posted by Commodification

If Moore's Law is indeed ending and Heisenberg's Law is beginning, how do you think it will influences Apple products five years from now? Will Mac performance plateau while iOS devices continue to rapidly increase performance with the use of multi-cores until Macs and ios devices have nearly the same performance in 5 years or so?

How many multiple-cores can we go before it becomes redundant?

In 5 years we will be using 10 nm devices. Today, 32 nm. Next year, 22 nm. 3 years from now 15 nm. 5 years, 10 nm. We will see if the semiconductor folks can overcome quantum effects at 10 nm. 15nm looks doable.

In many ways, we aren't compute bound or GPU bound anymore or even memory bound anymore, except for specialized computational problems. Today, we are storage bound and network bound. It is the hard drive and the network that is holding back our experience. (And as always, software is the ultimate gate).

For Macs, 90% of the folks out don't need the power represented by the Sandy Bridge CPUs in iMacs and MBPs today. With quad-core, Thunderbolt and an external RAID, even most video pros aren't held back with that.

So we've already reached a plateau where computers already satisfactorily fulfill the needs of 90% of the people out there. So, I think we've already reached it with quad-core 2-way multithreaded processors. Unless you are doing computationally intensive stuff, an iMac or MBP purchased today will probably satisfy you for next 5 years, especially with SSDs. What will likely improve, especially with Apple, are thinner and cooler form factors.

What won't satisfy you is storage performance, storage limits and network performance.

An interesting aside. Back in the early 2000s, when there was a clock rate race between Intel and AMD in the hey days of the Netburst architecture and SLI of GPU cards was beginning, I thought that 1000 Watt PSUs could be the norm. 1000 W! Running on your desktop for the majority of the day. Holy cow! With 22 nm and 15 nm, a prospective 4-core desktop with nice GPU and SSD drive could be 10 Watts and <10 db (no fans).

If Moore's Law was still increasing at the same rate it did from 1990-2000, shouldn't we be near 16 ghz or at least 8-cores (2 ghz each)?

I often think the future of the net is some form of grid-computing, where the internet-itself becomes one giant wireless computers as all connected devices share a portion of their processing power. As America has gone from an 'ownership economy', to a 'credit economy', and is now becoming an 'access economy', I think this will significantly impact the type of computers we use and how we use them in the future.

We become what we behold. We shape our tools and then our tools shape us.- Marshall McLuhan

Memristors and Phase Change Memory are the leading edge of the next technological s-curve that will sit on top of the current semiconductor technological s-curve pushing computing faster. Cool stuff not quite ready for mass manufacturing, but the theory has turned into actual working, repeatably build-able hardware. 5-7 years should see some of this stuff appearing in expensive gear, once that happens the the 20 years after that will be inevitably built on the new stuff.

Every technology has it's heyday, then it runs out of overhead for the bleeding edge. Basic silicon CMOS and related chip tech has a few years to go, HP and IBM are well positioned to reap some major upsets over Intel/AMD given their current progress in the next best thing.

If Moore's Law was still increasing at the same rate it did from 1990-2000, shouldn't we be near 16,000 ghz or at least 8-cores (2,000 ghz each)?

I often think the future of the net is some form of grid-computing, where the internet-itself becomes one giant wireless computers as all connected devices share a portion of their processing power. As America has gone from an 'ownership economy', to a 'credit economy', and is now becoming an 'access economy', I think this will significantly impact the type of computers we use and how we use them in the future.

No. Moore's law had absolutely nothing to do with CPU frequency. The original version was simply that the number of transistors per unit area doubled every 12 months, then it settled into a more average 18 month doubling.

This made chips more powerful, but not in a linear manner. It also made them cheaper because you could make more of them at one time for roughly the same amount of raw material and energy input, but this also isn't a strict relationship.

If you do a computational power comparison (throughput or total work done per unit time per chip), we are actually ahead of a equivalent (incorrect) extension of Moore's Law. You need to pick the right problem to test against, one that isn't memory access limited, but thats how to assess how powerful CPUs are getting now.

If this was a car, would it be equal to installing two separate motors to increase performance because the law of diminishing returns makes it cost prohibitive to get a significant performance increase out of a single motor?

If you can tie two motors together and harness the power you can leverage all the engineering and tuning that has been developed for an eight cylinder engine. In some ways this represents exactly what has happened with multicore.

With multi core you simply duplicate a "processor" on the die and tie everything together. This gives you some significant advantages. For one you aren't designing 128 bit cores for general purpose applications that don't need that sort of core. Second you don't have to scale clock rate to gain performance which saves significantly on power. Third you can effectively run the different processes that modern computers run on real hardware as opposed to context switching all the time.

Quote:

If Moore's Law is indeed ending and Heisenberg's Law is beginning, how do you think it will influences Apple products five years from now?

Well it isn't a problem yet and likely won't be in five years either. Ten years might be a different story all together.

Quote:

Will Mac performance plateau while iOS devices continue to rapidly increase performance with the use of multi-cores until Macs and ios devices have nearly the same performance in 5 years or so?

I'm not sure where this question comes from. To put it simply the current ARM processors are no where near i86 in performance. Nor is it likely that they will be anytime soon as that sort of performance would mean that ARM devices are using the same amount of power as the i86 devices.

Quote:

How many multiple-cores can we go before it becomes redundant?

With current technology I believe that number is less than 50. There has actually ben some research done on this. The problem if memory holds up is that communications begins to throttle the processors in an unacceptable manner. On the other hand specialized processor can perform well beyond the 50 core mark very well. Here is an example company having success with thousands of processors: http://www.adapteva.com/

The problem with your question is that the answer then becomes "it depends". Think about it, even at this early stage some codes will effectively saturate every core in an Intel processor. That is something considering we are at an early stage in the process of taking advantage of all of these cores. Simply put many people aren't even taking advantage of their dual cores, while other can't find machines that are fast enough.

I really do appreciate all the answers that all of you have given, since it's very useful in helping me understand the complexity of the situation. Does anyone think that our technological progress is limited more by software code or by the needs and desires of the average user? Might PCs and Macs never see their full potential because most consumers will migrate towards easier and more fun to use iOS/Android mobile devices, and software developers will go where the money and exponential growth is? It seems like it's more likely that the money needed to fund and build fab plants to make faster PCs/Macs will stop much sooner then when the true technological limits are reached.

We become what we behold. We shape our tools and then our tools shape us.- Marshall McLuhan

I know there is research going on in developing new substrates just like this one but another complication has emerged as part of nanotechnology and that is that at a nanometer size there are changes to how the materials work i.e. heat and physical properties react differently than they do at sizes we can see.
This is part of the reason why nanotechnology is hard to develop, you can't physically see what you are developing and stuff doesn't necessarily work based on normal physics so this has to be developed and discovered to help progress technology in this field.
One good thing on nano tech is the fact that they also have organic polymers from maize so these should aid treatment for medical conditions.

Sparc T3' have 16 core. More to come with the T4's in October this year.

I was referring more to Macs in particular since we had 1 ghz machines 10 years (2001) ago and 33 mhz ones 20 years ago (1991). Today a single core processor in a multi-core Mac maxes out at 3.33 ghz so 'on the surface it appears' like progress on single core performance has really slowed.

We become what we behold. We shape our tools and then our tools shape us.- Marshall McLuhan

Oh, sorry, I've been waffling about the CPU industry in general. Forgot where I was.

I think if the power macs ran P7 CPU's they would be a head above anything else. Of course the software/OS problems would be a pain in the arse but from a pure power perspective P7 CPU's using SSD's only with infiniband would be great (and only as expensive as a normal IBM server i.e. arm + leg).

I was referring more to Macs in particular since we had 1 ghz machines 10 years (2001) ago and 33 mhz ones 20 years ago (1991). Today a single core processor in a multi-core Mac maxes out at 3.33 ghz so 'on the surface it appears' like progress on single core performance has really slowed.

True, but some myths (and/or sales terminology) are more influential on an industry than the actual facts of performance. I think the speed or the number of cores is important for marketing reasons because its one of the very few things that the average consumer can actually understand about a computer processor.

We become what we behold. We shape our tools and then our tools shape us.- Marshall McLuhan

I think the current manufacturing will however allow enough room to satisfy the vast majority of computing needs in something as small as a mobile phone.

Thanks, that is interesting. I looked at graphene's wiki and it says:

Quote:

According to a January 2010 report,[144] graphene was epitaxially grown on SiC in a quantity and with quality suitable for mass production of integrated circuits. At high temperatures, the Quantum Hall effect could be measured in these samples. See also the 2010 work by IBM in the transistor section above in which they made 'processors' of fast transistors on 2-inch (51 mm) graphene sheets.[136]﻿[137]

In June 2011, IBM researchers announced[145] that they had succeeded in creating the first graphene-based integrated circuit, a broadband radio mixer. The circuit handled frequencies up to 10 GHz, and its performance was unaffected by temperatures up to 127 degrees Celsius.

I was referring more to Macs in particular since we had 1 ghz machines 10 years (2001) ago and 33 mhz ones 20 years ago (1991). Today a single core processor in a multi-core Mac maxes out at 3.33 ghz so 'on the surface it appears' like progress on single core performance has really slowed.

This is actually a pretty good observation. Yes, single core, single-threaded performance has slowed down.

One wrinkle you forget about is that Intel's Core-i7 CPUs can "turbo". Depending on the workload and the temperature, a multi-core i7 can shut down all but one core and ramp up the clock 20% or so. Not a 2x, but it illustrates why the MHz race is ended.

These parameters are also correlative as well. In order to get a larger number of higher frequency parts from your fab process, you have to typically increase the input voltage. But look at the equation: f x V^2. Increases in frequency through voltage increases CPU power (essentially heat for this discussion) by more than the square of the voltage increase. It could even be a cubic increase depending on the frequency increase.

This is in of itself not a huge deal if we happen to have really cheap power. A 500 W CPU running at 6 GHz is possible. But you have to suffer the consequences. A super noisy, huge cooling system and the energy costs for powering the thing for any length of time.

Half a decade ago, Intel realized this was not a tenable thing for personal computers, and abandoned their Netburst architecture and moved on to Core. Once that decision was made, single core performance slowed down and the pressure is now on the software to take advantage of the cores.

I think the fact that Apple might be considering merging mobile iOS devices and Mac OS X imacs and laptops into a single platform is related to some of the limitations of PC processors ability to offer any real new advantages for the majority of users.

I think it is the other way around.
The CPU technology has started to plateau on the 2-3.5 Ghz area so more effort is being put into CPU design which allows CPU's like the A6 to delivery performance required to give a similar feel to a PC's response yet use far less power and produce less heat.

An ipad/mac book air will be crap at crunching a DVD, encryption and other tasks where real throughput is required.

An ipad/mac book air will be crap at crunching a DVD, encryption and other tasks where real throughput is required.

Horses for courses.

Steve Jobs will kill off the optical drive long before DVD crunching will ever be needed. Whatever short comings the A6 will have (and I'm sure there will be plenty) I think icloud could evolve into something that fills in the (heavy lifting) gaps.

We become what we behold. We shape our tools and then our tools shape us.- Marshall McLuhan

Single core performance hasn't slowed down at all. The difference is that a single core now does a lot more work per clock signal.

You touch on the voltage issue which is really important to grasp. There are processors out there running on as little as 1.2 volts DC to control power consumption. Not to confuse people even more but in a DC resistive circuit power varies with the square of the voltage.

Quote:

Originally Posted by Shrike

This is actually a pretty good observation. Yes, single core, single-threaded performance has slowed down.

One wrinkle you forget about is that Intel's Core-i7 CPUs can "turbo". Depending on the workload and the temperature, a multi-core i7 can shut down all but one core and ramp up the clock 20% or so. Not a 2x, but it illustrates why the MHz race is ended.

These parameters are also correlative as well. In order to get a larger number of higher frequency parts from your fab process, you have to typically increase the input voltage. But look at the equation: f x V^2. Increases in frequency through voltage increases CPU power (essentially heat for this discussion) by more than the square of the voltage increase. It could even be a cubic increase depending on the frequency increase.

This is in of itself not a huge deal if we happen to have really cheap power. A 500 W CPU running at 6 GHz is possible. But you have to suffer the consequences. A super noisy, huge cooling system and the energy costs for powering the thing for any length of time.

Half a decade ago, Intel realized this was not a tenable thing for personal computers, and abandoned their Netburst architecture and moved on to Core. Once that decision was made, single core performance slowed down and the pressure is now on the software to take advantage of the cores.

Do you really think that article is based on fact? I don't take it that way at all, but rather see it as somebody blowing hot air to justify his job.

Quote:

Originally Posted by Commodification

I think the fact that Apple might be considering merging mobile iOS devices and Mac OS X imacs and laptops into a single platform is related to some of the limitations of PC processors ability to offer any real new advantages for the majority of users.

You are totally blowing my mind here. How in the hell do you come to this conclusion? The facts are actually just the opposite. Sandy Bridge and Ivy Bridge are huge advancements for the average user. Look at what you get on one chip. You get multiple CPUs, a GPU complex, and some special purpose video hardware. Plus a few more advanced instructions to chew on. Simply put it would be impossible to build a MBA like we have today five years ago.

I don't mean to be cruel here but it appears that you have been very misinformed about computer technology for some time. Either that or you have a pessimistic or negative attitude.

Look at it this way I don't know what Apple is up to with ARM hardware nor do I know their future plans. In fact no body on these forums know except for the Apple engineer here or there. However I can tell you with some certainty that an ARM based MBP would go over like a lead ballon. Now Apple might have plans for an iOS device with keyboard, but I'd think they would carefully market it as an iOS device.

I think it is the other way around.
The CPU technology has started to plateau on the 2-3.5 Ghz area so more effort is being put into CPU design

I find these statements frustrating because technology isn't clock rate per say. The problem isn't with the switching of transistors, which happens very fast on modern processors, but rather the ability to move those signals across the die.

Beyond that CPU technology consists of a number of things that have to come together to build a successful processor. Logic design, processes, manufacturing equipment all work together to produce a functioning unit. What clock rate it runs at is determined by the process and the logic design. However that is still only part of the story as more and more is done per clock on modern processors.

Look at it this way, when was the last time you heard somebody complain about the clock rate on his Sandy Bridge machine relative to his old NetBurst machine?

Quote:

which allows CPU's like the A6 to delivery performance required to give a similar feel to a PC's response yet use far less power and produce less heat.

When we actually have shipping ARM base Macs we can discuss apparent performance. However I have no doubt in my mind that the mystery A6 will be totally out classed by the then current Intel processor. We aren't talking trivial differences in capability here at all. An Intel based laptop can easily run four hardware based threads with great efficiency.

Quote:

An ipad/mac book air will be crap at crunching a DVD, encryption and other tasks where real throughput is required.

Horses for courses.

Well yeah and that is why I don't think Apple would ever market an ARM based MBP. Well at least not until the ARM architecture catches up with Intel in several areas. Also Intel has a fairly well fleshed out 64 bit processor now. Thus they can put effort into optimization, new instructions and other things that can leverage all the transistors they have.

Single core performance hasn't slowed down at all. The difference is that a single core now does a lot more work per clock signal.

I think it has slowed down quite a bit. With turbo-boost, it has mitigated some of the slow-down, but we're not where we should be if frequency ramps were as freely available as they used to be before the power wall was hit.

You're only eeking out about 15%, maybe 20% per clock in single-threaded performance these days. I'll have to go look, but I don't think we are getting 2x performance increases in single threaded performance every 2 years any more.

Look at the performance of Sandy Bridge based Macs versus what was before them. There are some benchmarks already that demonstrated pretty clearly that we are seeing a significant performance boost at the same relative clock rates.

In the case of Apple they are aggressively focusing on low power systems so yeah they bias their hardware to lower clock rate chips. However some of those SB chips can boost clock rate significantly.

Quote:

Originally Posted by Shrike

I think it has slowed down quite a bit. With turbo-boost, it has mitigated some of the slow-down, but we're not where we should be if frequency ramps were as freely available as they used to be before the power wall was hit.

When Intel was hell bent on scaling clock rate a few years ago each generation of chips actually ended up performing worst, relative to older models at a given clock rate. I'm not sure where you got the idea that processor performance has been going backwards as it hasn't been. WE are getting much better performance out of each core in a chip these days.

Quote:

You're only eeking out about 15%, maybe 20% per clock in single-threaded performance these days.

I'm not sure what you mean by that statement. I've never heard of such a performance metric.

Quote:

I'll have to go look, but I don't think we are getting 2x performance increases in single threaded performance every 2 years any more.

When was the last time that happened? There was a time, back in the 486 days, when you could double clock rate and keep up with improved memory systems. Those days are gone. The reality is that today it actually takes a very long time to get a few bytes of data from RAM as RAM is electrically a very long ways away from the CPU cores.

I just don't see where you get any information to support your position. The reality is that increasing the clock rate doesn't scale well because you still need to be able to scale the rest of the system. Focusing on bottle necks, like Apple did with the AIRs, now has a greater impact on performance.

I think it has slowed down quite a bit. With turbo-boost, it has mitigated some of the slow-down, but we're not where we should be if frequency ramps were as freely available as they used to be before the power wall was hit.

You're only eeking out about 15%, maybe 20% per clock in single-threaded performance these days. I'll have to go look, but I don't think we are getting 2x performance increases in single threaded performance every 2 years any more.

You really have to restrict what you are talking about to make a statement like that. CPus aren't a single thread execution units anymore, they are complex systems which also optimize far more on memory accesses and support. You have to falsely construct a current argument based on a 10 year old view of a CPU or you have to acknowledge that throughput is going up by 4x or more every 2 years.

CPUs have been held back by comparatively poor memory system design and execution for far too long, now that part of the CPU capability equation is being fixed. There is so much pent up underperformance that throughput increases will exceed what most folks incorrectly think of as the Moores' Law curve for quite awhile yet. Finally, engineers are freed from the sexy Mhz marketing forcing engineers to focus on that, and Mhz has has finally slipped back to an engineering driven priority. A relatively low priority in the big picture.

Moore's law is more an economic law than physical or computational. It's about computational power at a given price. It may be that typical consumer-level computers are not getting better as quickly, but we're not spending as much on computers as we used to. That computing power is also being distributed, not just on multiple cores but on GPUs.

Anyway, integrated circuits aren't going to be the preferred method of computing forever. Once we reach their limit, we'll find something else. That's a long ways away, regardless.

2020 will be about the time 3D integrated circuits become standard and that will carry us into whatever new paradigm awaits in 2030 (optical or quantum computing).

Moore's law is more an economic law than physical or computational. It's about computational power at a given price. It may be that typical consumer-level computers are not getting better as quickly, but we're not spending as much on computers as we used to. That computing power is also being distributed, not just on multiple cores but on GPUs.

No. No. A thousand times no.

Moore's Law relates that production transistor densities on Integrated Circuits tend to double per unit area every year to 18 months, at essentially constant production cost.

That's it.

Everything else people attribute to Moore's Law is not actually part of the observation that commented on the physical nature of IC production. There is no solid predictable correlation between the secondary effects of having more transistors per unit area and the greater density itself beyond an IC becomes more powerful if you throw more transistors into it. How you use those transistors have everything to do with specifically how powerful and how much throughput you can get out of an IC.

Quote:

Anyway, integrated circuits aren't going to be the preferred method of computing forever. Once we reach their limit, we'll find something else. That's a long ways away, regardless.

2020 will be about the time 3D integrated circuits become standard and that will carry us into whatever new paradigm awaits in 2030 (optical or quantum computing).

No, ICs will continue to be the foundation of computing for the far foreseeable future. The construction methods and circuit components of those IC is what will change.

Quantum computing is not an exact science and does not produce exact results, only probabilities. Intermediate steps do not exist and changes are state destructive, making algorithms hard to describe and even harder to implement. So you have to run your computation many times to confirm that the probabilities are generating a useful answer. It's decades off at best from being widely useful, and the chance all of us will be housing near absolute zero enclosures for our qbits at home and at work is even less likely and farther off.

The facts are actually just the opposite. Sandy Bridge and Ivy Bridge are huge advancements for the average user. Look at what you get on one chip. You get multiple CPUs, a GPU complex, and some special purpose video hardware. Plus a few more advanced instructions to chew on. Simply put it would be impossible to build a MBA like we have today five years ago.

Yet the vast majority of people on this planet could care less and will instead continue to migrate to mobile devices as their main computer.

We become what we behold. We shape our tools and then our tools shape us.- Marshall McLuhan

Look at the performance of Sandy Bridge based Macs versus what was before them. There are some benchmarks already that demonstrated pretty clearly that we are seeing a significant performance boost at the same relative clock rates.

On aggregate Sandy Bridge is about 0% to 20% faster per core than Westmere/Clarkdale/Lynfield/etc processors at the same clock rate, with a lot more towards the 0% end of the range. The performance increase wasn't that significant. What was significiant was the price. Sandy Bridge chips came in a lot lower than then the previous gen chips.

Quote:

When Intel was hell bent on scaling clock rate a few years ago each generation of chips actually ended up performing worst, relative to older models at a given clock rate. I'm not sure where you got the idea that processor performance has been going backwards as it hasn't been. WE are getting much better performance out of each core in a chip these days.

Didn't say backwards. I said slowed compared to the days where frequency ramps were free.

Quote:

I'm not sure what you mean by that statement. I've never heard of such a performance metric.

Single-threaded benchmarks? Kind of hard to believe you have not hard of these.

Quote:

When was the last time that happened? There was a time, back in the 486 days, when you could double clock rate and keep up with improved memory systems. Those days are gone. The reality is that today it actually takes a very long time to get a few bytes of data from RAM as RAM is electrically a very long ways away from the CPU cores.

When superscalar was introduced with frequency ramp. When OOE was introduced along with a frequency ramp. I'll have to look up some others. As an example: 486 to Pentium. Pentium to Pentium Pro. Yeah, the days of getting 2x single threaded performance are long gone.

Improving single threaded performance will improve every single application.

Quote:

I just don't see where you get any information to support your position. The reality is that increasing the clock rate doesn't scale well because you still need to be able to scale the rest of the system. Focusing on bottle necks, like Apple did with the AIRs, now has a greater impact on performance.

You really have to restrict what you are talking about to make a statement like that. CPus aren't a single thread execution units anymore, they are complex systems which also optimize far more on memory accesses and support. You have to falsely construct a current argument based on a 10 year old view of a CPU or you have to acknowledge that throughput is going up by 4x or more every 2 years.

CPUs have been held back by comparatively poor memory system design and execution for far too long, now that part of the CPU capability equation is being fixed. There is so much pent up underperformance that throughput increases will exceed what most folks incorrectly think of as the Moores' Law curve for quite awhile yet. Finally, engineers are freed from the sexy Mhz marketing forcing engineers to focus on that, and Mhz has has finally slipped back to an engineering driven priority. A relatively low priority in the big picture.

My worldview is the improving single-threaded performance is the single biggest benefit to the user. Every single application will have improved performance if single-threaded performance increase. That's why I harp on it here. With multi-cores, only some applications will see improvements.

I totally agree with you that system throughput is increasing in concert with the transistor budgets, but benefits to the end user, in single-threaded ops? Not so much.

The core counts and transistor counts will continue upward apace. But the software is still lagging quite a bit. Multithreaded software is hard and not every operation could be multi-threaded. I think the vast majority of software out there is largely of the single-threaded variety - or it could be multithreaded, but one thread serves as the bottleneck to performance - and having more and more cores will not help.

Today, 4 cores is normal and our software barely takes advantage of that. Tomorrow, when 6/8/10/12-cores are available? The benefits aren't going to be that much.

On aggregate Sandy Bridge is about 0% to 20% faster per core than Westmere/Clarkdale/Lynfield/etc processors at the same clock rate, with a lot more towards the 0% end of the range. The performance increase wasn't that significant. What was significiant was the price. Sandy Bridge chips came in a lot lower than then the previous gen chips.

Ahh but the systems benchmark much better. Of course half of that is people picking benchmarks that play to SB strength.

Quote:

Didn't say backwards. I said slowed compared to the days where frequency ramps were free.

I lost track of this thread but you do realize those frequency ramps of the past where for marketing. Intels old chips actually performed worst on a cycle by cycle basis for awhile.

Quote:

Single-threaded benchmarks? Kind of hard to believe you have not hard of these.

I've heard of them but my point is they are of limited use considering how modern users use their machines and how today's software is written. Let's face it it is exceedingly easy to get a Mac to multitask these days even for novice users. That is at the system level, at the app level it is a whole new ball game.

For example Safari is heavily threaded but also spawns processes for things like Flash. Not to mention Safari uses GPU acceleration. It isn't so much that I dismiss single threaded benchmarks is just that they are of little value to today's user.

Quote:

When superscalar was introduced with frequency ramp. When OOE was introduced along with a frequency ramp. I'll have to look up some others. As an example: 486 to Pentium. Pentium to Pentium Pro. Yeah, the days of getting 2x single threaded performance are long gone.

For general purpose instructions yes! However Intel can now apply all of those free transistors to special purpose hardware. So today's processors can do things no processor of the past could - for example decode video in realtime.

Quote:

Improving single threaded performance will improve every single application.

Not at the expense of cores it won't. Take our Safari example, turn off all the cores but one and see what happens. This isn't to say certain single thread apps don't exist just that you put to much emphasis on single threading.

The big problem with stressing single thread performance is the diminishing returns for the engineering effort put in. In any event I suspect we will be seeing some creep up in clock rates as Intel and AMD move to smaller process geometries. AMD can already hit 4GHz speed stepping.

Quote:

Yes, very true. I'll get to the other thing in a different post.

The unfortunate thing is that it looks like flash is already hitting the wall.

My worldview is the improving single-threaded performance is the single biggest benefit to the user. Every single application will have improved performance if single-threaded performance increase. That's why I harp on it here. With multi-cores, only some applications will see improvements.

Not to be unkind but you don't know what you are talking about. The transition to dual core was one of the best things that ever happened to the PC industry.

Quote:

I totally agree with you that system throughput is increasing in concert with the transistor budgets, but benefits to the end user, in single-threaded ops? Not so much.

It is only a problem if you buy into the mis-belief that single threaded performance is important these days. The fact is today's users would be extremely frustrated with the current selection of apps and the OS's they run on if the machines where single core.

Quote:

The core counts and transistor counts will continue upward apace. But the software is still lagging quite a bit. Multithreaded software is hard and not every operation could be multi-threaded. I think the vast majority of software out there is largely of the single-threaded variety - or it could be multithreaded, but one thread serves as the bottleneck to performance - and having more and more cores will not help.

The above is about as valid as the guys that claim OpenCL is a failure. It also indicates a fundamental misunderstanding of how modern OS's and apps work. Honestly you need to look into the modern apps an OS technologies.

Quote:

Today, 4 cores is normal and our software barely takes advantage of that. Tomorrow, when 6/8/10/12-cores are available? The benefits aren't going to be that much.

The above is very misleading. It is simply a question of what the user is doing.

Not to be unkind but you don't know what you are talking about. The transition to dual core was one of the best things that ever happened to the PC industry.

Who said it wasn't?

We're spending a bit time on this based on one simple statement, or maybe statements: single threaded performance increases have slowed in the multi-core era, and most software performance is bound to one thread.

The performance increases, the ones most users see and feel and when using an OS, aren't as apparent or as great from CPU generation to generation to be because of this. It used to be great to see every facet of a new computer to be so much faster.

Quote:

It is only a problem if you buy into the mis-belief that single threaded performance is important these days. The fact is today's users would be extremely frustrated with the current selection of apps and the OS's they run on if the machines where single core.

If all the transistors in today's multi-core CPUs were devoted to single-threaded performance, and real single-threaded performance improvements were delivered, I think users would be extremely happy, happier than they are today with multi-cores. There's only a small class of users (servers, computational modeling, simulation et al) who need a lot of cores.

Obviously though, CPU architects have run out of techniques to increase single threaded performance 2x every 18-24 months (be it power limits, cost limits, technical limits), and have resorted to using multi-core design.

For today, it's arguable that the best upgrade a user could do is to upgrade to an SSD. Not more RAM. Not a faster CPU.

We're spending a bit time on this based on one simple statement, or maybe statements: single threaded performance increases have slowed in the multi-core era, and most software performance is bound to one thread.

This is where we have a problem and is where I think you are completely wrong. Software performance is seldom bound to one thread any more. Really all you need to do is look at popular software today that most users run from time to time. All of it is making use of threading or traditional UNIX'y processes. Mail, Safari, Finder and frankly just about everything that comes with OS/X.

Quote:

The performance increases, the ones most users see and feel and when using an OS, aren't as apparent or as great from CPU generation to generation to be because of this. It used to be great to see every facet of a new computer to be so much faster.

This is not my experience at all. Cores can have a major impact on performance of many apps. And if not with the apps they keep your machine functioning well with multiple apps without degradation.

Quote:

If all the transistors in today's multi-core CPUs were devoted to single-threaded performance, and real single-threaded performance improvements were delivered, I think users would be extremely happy, happier than they are today with multi-cores.

Frankly this is baloney. Engineer of cores eventually reaches a point where there is little pay off for those extra transistors. In the end your only hope is a higher clock rate or more cores. Intel is delivering both of these as process technology improve.

Quote:

There's only a small class of users (servers, computational modeling, simulation et al) who need a lot of cores.

This is baloney also. It is very much a question of what the user does and that frankly verys widely. To put it mildly it doesn't take much effort these days to put four of more cores to work.

Quote:

Obviously though, CPU architects have run out of techniques to increase single threaded performance 2x every 18-24 months (be it power limits, cost limits, technical limits), and have resorted to using multi-core design.

After a bit what more can you do to an adder, multiplier or instruction decode unit? Given that; both AMD and Intel are still making modest gains in performance to traditional instructions.

As to making the user happy that is happening but via specialization in the processors/GPUs. Things like video decode units are huge as they greatly reduce the need to dedicate cores to this task. Also vector units and similar enhancements lead to happy users or in the case of AMD they expect the "GPU" to handle vectors. Either way these are real advancements that enable user functionality that could not be obtained in a traditional ALU no matter how fast it is running.

Quote:

For today, it's arguable that the best upgrade a user could do is to upgrade to an SSD. Not more RAM. Not a faster CPU.

Certainly the SSD should be a high priority but many machines/users can benefit from more RAM.

If this was a car, would it be equal to installing two separate motors to increase performance because the law of diminishing returns makes it cost prohibitive to get a significant performance increase out of a single motor?

If Moore's Law is indeed ending and Heisenberg's Law is beginning, how do you think it will influences Apple products five years from now? Will Mac performance plateau while iOS devices continue to rapidly increase performance with the use of multi-cores until Macs and ios devices have nearly the same performance in 5 years or so?

How many multiple-cores can we go before it becomes redundant?

Moore's law doesn't address performance. Instead it states that the transistor count in an IC doubles every two years.

It will likely be invalidated some day, but it does not yet show signs of abating...