Coffeehouse Thread

15 posts

Core numbers vs GHz Speed

Back to Forum: Coffeehouse
  • User profile image
    turrican

    Dual 4 Core 2.83GHz vs Dual 6 Core 2.4GHz , which one would you think is "faster"? I know we got no chart but in theory.

  • User profile image
    Cannot​Resolve​Symbol

    It depends on the application--  how well can the operation you're trying to perform be parallelized?

    If you make me pick one, though, I'd have to say the two four-core 2.83 GHz processors would be faster in typical use.  Most (non-scientific) applications aren't going to saturate eight cores, so you get no benefit from having four more cores with all at a slower clock speed.

  • User profile image
    spivonious

    I agree.  Most apps today don't take advantage of more than two cores, the faster speed wins out.  3-5 years down the road, it might be a different story.

    The only apps I know of that make use of as many cores as the system has are 3D modeling apps.

  • User profile image
    stevo_

    Yes but to be fair, at the server level - the abstraction of concurrency is processes.. if you are running a lot of processes then you could probably sature the server pretty well.

  • User profile image
    Ion Todirel

    CannotResolveSymbol said:
    It depends on the application--  how well can the operation you're trying to perform be parallelized?

    If you make me pick one, though, I'd have to say the two four-core 2.83 GHz processors would be faster in typical use.  Most (non-scientific) applications aren't going to saturate eight cores, so you get no benefit from having four more cores with all at a slower clock speed.
    ++ as of now I would get the 4 cores one

  • User profile image
    Royal​Schrubber

    spivonious said:
    I agree.  Most apps today don't take advantage of more than two cores, the faster speed wins out.  3-5 years down the road, it might be a different story.

    The only apps I know of that make use of as many cores as the system has are 3D modeling apps.
    "Most apps today don't take advantage of more than two cores"


    If applications are programmed for more than one core why aren't they programmed for arbitrary number of cores - of course there is a difference between 4 and say 16+ cores, but if app can utilize 2 cores, I don't think there is a big gap to 4 cores. 

    There are applications where subsystems are sometimes handled on separate threads - like a game running its graphics system on one thread and physics system on another thread and so the whole application has some cap on number of cores it can use. In this scenario 4 core will give him advantage of maximally 860 Mhz if application can't utilize more than 2 cores and 430Mhz if application isn't threaded at all. I should also mention that for games GPU and good amount of ram is more important than CPU - basically if you're building gaming rig any CPU will do as long as it is recent model. 

    But if he intends to use computer for data processing (server, video conversion, etc) it is likely that his application is designed so that it can operate on arbitrary number of cores (and if not - it's likely that it will be in future application updates). In this case 6 core processor will give him advantage of 3,08 Ghz. If the guy intends to use his system to the fullest I should also say 14,4 Ghz would probably demand better mobo and faster ram. 

    Anyhow it's all dependant on the type of application he intends to use his computer for, so I'm just repeating common knowledge. I'd go with 6 cores myself - games/windows itself don't need good CPU speed, I wouldn't miss 430 Mhz in single threaded apps, but I'd have advantage in computationally intensive apps if I needed power. 

  • User profile image
    spivonious

    RoyalSchrubber said:
    spivonious said:
    *snip*
    "Most apps today don't take advantage of more than two cores"


    If applications are programmed for more than one core why aren't they programmed for arbitrary number of cores - of course there is a difference between 4 and say 16+ cores, but if app can utilize 2 cores, I don't think there is a big gap to 4 cores. 

    There are applications where subsystems are sometimes handled on separate threads - like a game running its graphics system on one thread and physics system on another thread and so the whole application has some cap on number of cores it can use. In this scenario 4 core will give him advantage of maximally 860 Mhz if application can't utilize more than 2 cores and 430Mhz if application isn't threaded at all. I should also mention that for games GPU and good amount of ram is more important than CPU - basically if you're building gaming rig any CPU will do as long as it is recent model. 

    But if he intends to use computer for data processing (server, video conversion, etc) it is likely that his application is designed so that it can operate on arbitrary number of cores (and if not - it's likely that it will be in future application updates). In this case 6 core processor will give him advantage of 3,08 Ghz. If the guy intends to use his system to the fullest I should also say 14,4 Ghz would probably demand better mobo and faster ram. 

    Anyhow it's all dependant on the type of application he intends to use his computer for, so I'm just repeating common knowledge. I'd go with 6 cores myself - games/windows itself don't need good CPU speed, I wouldn't miss 430 Mhz in single threaded apps, but I'd have advantage in computationally intensive apps if I needed power. 
    Just wanted to clarify...in Intel's multi-core chips, each core runs at the rated speed, so I'm not sure what you mean with the 430MHz comments.

  • User profile image
    turrican

    RoyalSchrubber said:
    spivonious said:
    *snip*
    "Most apps today don't take advantage of more than two cores"


    If applications are programmed for more than one core why aren't they programmed for arbitrary number of cores - of course there is a difference between 4 and say 16+ cores, but if app can utilize 2 cores, I don't think there is a big gap to 4 cores. 

    There are applications where subsystems are sometimes handled on separate threads - like a game running its graphics system on one thread and physics system on another thread and so the whole application has some cap on number of cores it can use. In this scenario 4 core will give him advantage of maximally 860 Mhz if application can't utilize more than 2 cores and 430Mhz if application isn't threaded at all. I should also mention that for games GPU and good amount of ram is more important than CPU - basically if you're building gaming rig any CPU will do as long as it is recent model. 

    But if he intends to use computer for data processing (server, video conversion, etc) it is likely that his application is designed so that it can operate on arbitrary number of cores (and if not - it's likely that it will be in future application updates). In this case 6 core processor will give him advantage of 3,08 Ghz. If the guy intends to use his system to the fullest I should also say 14,4 Ghz would probably demand better mobo and faster ram. 

    Anyhow it's all dependant on the type of application he intends to use his computer for, so I'm just repeating common knowledge. I'd go with 6 cores myself - games/windows itself don't need good CPU speed, I wouldn't miss 430 Mhz in single threaded apps, but I'd have advantage in computationally intensive apps if I needed power. 
    Well, it'll be a server running IIS / MSSQL / MAIL / IRC. But as "spivonious" sais, each core uses the rated speed, they don't "share" the speed and split into four.

  • User profile image
    evildictait​or

    turrican said:
    RoyalSchrubber said:
    *snip*
    Well, it'll be a server running IIS / MSSQL / MAIL / IRC. But as "spivonious" sais, each core uses the rated speed, they don't "share" the speed and split into four.
    If it's to be used as a server, get as many cores as you can.

  • User profile image
    Royal​Schrubber

    spivonious said:
    RoyalSchrubber said:
    *snip*
    Just wanted to clarify...in Intel's multi-core chips, each core runs at the rated speed, so I'm not sure what you mean with the 430MHz comments.
    Well you can turn that 430 Mhz into relative scale and say 4 core CPU runs its cores 18% faster, or 18% more efficiently. But my point still holds that if hertz number printed on the outside of box that comes with processor is in near linear correlation of whichever definition of efficiency then if application can efficienly utilize 6 cores or more then 6 core processor has processing power advantage over 4 core one. 

    2.83Ghz - 2.4Ghz = 430 Mhz. Clock ticks 18% faster even if those hertz don't really represent clock ticks. And I'm aware that if processors we are talking about do not belong to the exact same family, then those stated speeds are completely irrelevant.

  • User profile image
    Andrei P

    Just a few days ago Intel showcased their first 80 core CPU. Unfortunately we won't see it hit the market in less than 5 years. Hopefully by that time, we'll see software taking advantage of the cores. I know Windows 7 introduces more support for them, but I doubt we'll see a noticeable performance increase until a Windows version developed with parallel processing in mind, becomes available.

  • User profile image
    Yggdrasil

    evildictaitor said:
    turrican said:
    *snip*
    If it's to be used as a server, get as many cores as you can.
    I'm in the More Core camp as well. When running a server, it's pretty easy to parallelize even when you don't notice. If, as turrican mentions in an earlier post, he intends to run several different services on it (IIS, SQL, IRC, etc), than having more cores means less sharing of CPUs between processes. Context switches are a lot slower than the stated 18% GHZ difference.

  • User profile image
    Yggdrasil

    Yggdrasil said:
    evildictaitor said:
    *snip*
    I'm in the More Core camp as well. When running a server, it's pretty easy to parallelize even when you don't notice. If, as turrican mentions in an earlier post, he intends to run several different services on it (IIS, SQL, IRC, etc), than having more cores means less sharing of CPUs between processes. Context switches are a lot slower than the stated 18% GHZ difference.
    Oh, and there's always the standard warning - check first!
    The application we're developing at work was CPU bound for a while - we easily saturated 8 cores at 100% by having separate processes, splitting operations to async COM+ components and so forth. At some point our usage changed a bit and we started to be memory-bound - we would crash on out-of-memory exceptions way before our CPU usage hit 100%. So we worked hard on finding leaks and inefficiencies, and now we find ourselves I/O-bound - the disk and SQL Server calls are the bottleneck. So now we're rearchitecting around that.

    My point is that your pick of CPU might be totally irrelevant if your app's usage profile isn't limited by the CPU, regardless of speed or cores.

  • User profile image
    cheong

    Yggdrasil said:
    evildictaitor said:
    *snip*
    I'm in the More Core camp as well. When running a server, it's pretty easy to parallelize even when you don't notice. If, as turrican mentions in an earlier post, he intends to run several different services on it (IIS, SQL, IRC, etc), than having more cores means less sharing of CPUs between processes. Context switches are a lot slower than the stated 18% GHZ difference.
    I'm agree with you on one thing - context switches are slow and in many times, the performance hit will be more than the performance it would gain. So if Intel is going to produce anything more than 16 core, I doubt if I'll buy it for desktop (as I seldom have more than 5 foreground process running).

    But if it's for server, do what evildictor suggest - get as many cores as you budget allows. Not only because modern server softwares are designed to take advantages of any cores you feed to it, it also decrease your chance of having poorly written program(s) to freeze your system.

    Also note that it's much easier to apply for budget to expand your RAMs than upgrade your CPUs.

    Recent Achievement unlocked: Code Avenger Tier 4/6: You see dead program. A lot!
    Last modified
  • User profile image
    elmer

    I thought the C9 video on Parallel Computing Platform gave a pretty impressive demo of how much difference parallel application code makes to the way a CPU is utilised.

    http://channel9.msdn.com/posts/Charles/Parallel-Computing-Platform-Overview-and-Future-Directions/

Comments closed

Comments have been closed since this content was published more than 30 days ago, but if you'd like to continue the conversation, please create a new thread in our Forums, or Contact Us and let us know.