The Source for Java Technology Collaboration
User: Password:



Osvaldo Pinali Doederlein

Osvaldo Pinali Doederlein's Blog

Where is my 10GHz CPU???

Posted by opinali on October 01, 2007 at 09:35 AM | Comments (5)

I won't rehash everything everybody already knows about the end of the "free lunch" of increasing CPU speeds, just point this curiosity. Being fair on S.H., he was just quoting projections from Intel. This book is from 2001, not such a long time compared to the 3-4 years of design for each CPU generation; so it's funny that Intel wouldn't know better - or perhaps they did, but didn't want to tell us. In the same chapter, Hawking states that future computers would have to be more parallel if they wanted to match our brain's intelligence. IMHO he was an optimist, because we didn't yet make ANY substantial progress towards real understanding of the human mind - and one cannot program in a computer a system that's not understood. But if this situation ever changes (and I'll put serious money that Hawking's search for the Great Unification Theory will end much sooner than that), parallelism will obviously play a major role. But this doesn't matter, even the 2010 version of Notepad will have to be highly concurrent to keep up with the featuritis escalation of our industry. So, grab yourself a good book on concurrency if you plan to be worth anything as a programmer when massively multicore architectures become mainstream even in the desktop, which won't take many years...

Bookmark blog post: del.icio.us del.icio.us Digg Digg DZone DZone Furl Furl Reddit Reddit
Comments
Comments are listed in date ascending order (oldest first) | Post Comment

  • You could probably say that we have achieved a virtual 10GHz CPU if you take many/multi-core processors into account. 2.5GHz x 4 = 10GHz, no? I'm pretty sure Intel and AMD are at that point, if not better, without going to research exact specs. I'm pretty sure tht in 2001 Intel knew that single-core/single-CPU processors weren't going to scale up to 10GHz using the x86 instruction set, so most likely they were projecting many/multi-core solutions, Itanium, or something else would achieve a virtual 10GHz.

    Posted by: gerryg on October 01, 2007 at 12:18 PM

  • it doesn't make sense from a business standpoint when you have an oligopoly on the market. the video card chipset business is the same-- why release such a giant jump in technology if you run the market-- it's much better for the longevity of the business to just stay competitive and keep people buying at increments over numerous years. if your argument is purely academic, then nothing's stopping current systems from just scaling out as the previous commenter stated.

    Posted by: jhook on October 01, 2007 at 12:25 PM

  • gerryg: Yes a 4x2,5GHz chip is equivalent to a 10GHz, but only for tasks that are (or can theoretically be) parallelized 4-way or more.

    Posted by: opinali on October 01, 2007 at 01:54 PM

  • No, no and no! How many articles have to be written and how many whitepapers/benchmarks/rules of thumb have to be published before the fact that parallelization performance benefits are NOT additive? Not in CPU design nor algorithms! a 4 core 2.5Ghz chip is the same speed as an identical single core 2.5Ghz chip! Firstly the potential for performance increase is not linear, its not even close.

    There's an article even highlighting this VERY fact published less than a week ago linked on the frontpage of java.net by Kirill:

    Multicore processing for client-side Java applications For anyone wondering, a 35% comparative boost in speed from parallelizing a single threaded routine to dual core is an impressive boost. You can often expect lower, and decreasing as core quantity increases.

    Short cause: Diminishing returns.

    Detailed cause: Programming (esp. x86) is inherently sequential with many serial dependencies. If even 20% of an algorithm is parallelizable, this is an achievement. Read this: Amdahl's Law

    gerryg: Intel were predicting 10Ghz back in 2001 since this was when we were in the peak of making wild predictions about the scalability of the Netburst (Pentium 4 era.) archictecture which was initially intended to carry to speeds of 10Ghz.

    Multiple core CPU is about increasing execution throughput, not about doing it faster. That's what the debate over the "no free lunch" arguments are about. Most players are predicting we are close to the limit of how far we can get with Instruction Level Parallelism (which directly benefits all programs, single threaded included). All the smart money is currently on Thread Level Parallelism.

    Posted by: fred34 on October 01, 2007 at 06:24 PM

  • I should qualify the statement about a 4 core 2.5Ghz being equivalent to a single core chip as only being true for the next few months as both the major players are getting ready to start shipping CPUS with dynamically clocked cores and memory buses.

    Posted by: fred34 on October 01, 2007 at 06:26 PM





Powered by
Movable Type 3.01D
 Feed java.net RSS Feeds