VOGONS


First post, by bluejeans

User metadata
Rank Member
Rank
Member

In my other thread I was talking about collecting every major generation of cpu (each one having about double the performance of the one below) and it was pointed out to me that single core performance doesn't vary much between generations, e.g an athlon 1800 xp and intel e2160 have almost identical performance in passmark. Even my q6600 isn't much of an improvement. Is there a general rule that every 5 generations, single core performance will double, or something?

Also, what effect does using windows 7 power management to slow the cpu have on games? If I halved the performance of a 3ghz cpu, would games run just like they would on a 1.5ghz from a similar generation? Mainly talking about zdoom and gzdoom here.

Reply 1 of 1, by Scali

User metadata
Rank l33t
Rank
l33t
bluejeans wrote:

Is there a general rule that every 5 generations, single core performance will double, or something?

Not really.
Back in the early days, single-core was all you had, and performance would increase with every generation.
But eventually they started to hit the limits of single-core performance (at around the time of PIII/P4/Athlon). Which is why the focus moved to multi-core instead.
These limits are roughly:
- Most simple instructions execute in 1 cycle
- Superscalar pipeline can execute up to 3-4 instructions per cycle (x86 code doesn't lend itself very well to this, because of its two operand model and a lot of implicit dependencies on instructions, requiring them to be executed in serial, not in parallel)
- Clockspeed goes up to about 4 GHz

Single-core performance still increases somewhat over time, but it is usually more of an 'indirect' improvement, eg because of more/faster cache, or because of extra instructions being added (most notably AES for example).
There are also some minor improvements from 'micro op fusion' and 'macro op fusion', which is basically combining two 'native' x86 instructions into a single internal instruction, to improve efficiency and parallelism.

Which means it depends on what you're measuring. If you are measuring an application that already fit entirely in the cache with an older CPU, you won't see much of an improvement.
Likewise, if you test software that does not take advantage of new instructions, you won't see the improvement there either.

http://scalibq.wordpress.com/just-keeping-it- … ro-programming/