Author Topic: Multi-core CPU's and GHz question  (Read 8754 times)

0 Members and 2 Guests are viewing this topic.

Offline Enigmatic Entity

  • Exemplar Essayer
  • 28
  • Amigo ad infinitum.
Multi-core CPU's and GHz question
With single core, it's easy enough - 3.0 GHz = 3.0 GHz (non-geeky equation), but with all these new ones that only say they have about 2.2GHz, is that per core or the total processing power? Does that mean a new quad core 2.0 GHz CPU will have 8.0 GHz total?
Juvenescence and multifariousness is eternal.

 
Re: Multi-core CPU's and GHz question
Yes, precisely. However, not every program can take advantage of multiple cores.

However, the newer OSes can split duty so that the OS is running on one core, and whatever applications, programs, etc. split the others. So generally whatever you're running that requires it, get's at least the full 2.2 Gz all to itself, unless it can use multiple cores.
« Last Edit: September 23, 2010, 03:57:14 am by Scourge of Ages »

 

Offline Colonol Dekker

  • HLP is my mistress
  • Moderator
  • 213
  • Aken Tigh Dekker- you've probably heard me
    • My old squad sub-domain
Re: Multi-core CPU's and GHz question
I can't even remember how fast my Q6600 is. It just works. You can always try and change process priority in task manager to realtime, which is what I do with max and after effects. :yes: slow render times make me RAGE.
Campaigns I've added my distinctiveness to-
- Blue Planet: Battle Captains
-Battle of Neptune
-Between the Ashes 2
-Blue planet: Age of Aquarius
-FOTG?
-Inferno R1
-Ribos: The aftermath / -Retreat from Deneb
-Sol: A History
-TBP EACW teaser
-Earth Brakiri war
-TBP Fortune Hunters (I think?)
-TBP Relic
-Trancsend (Possibly?)
-Uncharted Territory
-Vassagos Dirge
-War Machine
(Others lost to the mists of time and no discernible audit trail)

Your friendly Orestes tactical controller.

Secret bomb God.
That one time I got permabanned and got to read who was being bitxhy about me :p....
GO GO DEKKER RANGERSSSS!!!!!!!!!!!!!!!!!
President of the Scooby Doo Model Appreciation Society
The only good Zod is a dead Zod
NEWGROUNDS COMEDY GOLD, UPDATED DAILY
http://badges.steamprofile.com/profile/default/steam/76561198011784807.png

 

Offline Androgeos Exeunt

  • Captain Oblivious
  • 212
  • Prevents attraction.
    • Wordpress.com Blog
Re: Multi-core CPU's and GHz question
Uhh, Dekker, I think AE reserves a set amount of RAM, which can be determined by the user, for rendering. It's not really dependent on processing power as much as it is on the amount of RAM it has to work with.

In addition, on a computer with a single-core processor such as my IBM, setting a single process to realtime causes the computer to lock up since every other process can no longer function due to a lack of available CPU power.
My blog

Quote: Tuesday, 3 October 2023 0133 UTC +8, #general
MP-Ryan
Oh you still believe in fairy tales like Santa, the Easter Bunny, and free market competition principles?

 

Offline Nuke

  • Ka-Boom!
  • 212
  • Mutants Worship Me
Re: Multi-core CPU's and GHz question
i run a 2.8 quad core myself. its not quite equivalent to running a 11.2ghz machine though. the way i precieve computers is that seem to be getting slower, because programmers are trying to push more data through the cpu than it should have to handle. cpu technology doesnt seem to be progressing faster than programmers think they are. but thats another matter entirely. if you open your task manager and look at your processes, you will see a page or two of stuff that is trying to run on your computer simultaneously. fortunately for us very few of them require the computers full attention. the os kinda divs up the cpu time to all those processes, it considers how many resources each is wanting to use, what the user is trying to do (which program has focus), process priority and other factors to decide which process gets the lions share of the resources like memory and cpu time. having more cores just allows for a few processes to take their turns simultaneously, but each can only run at 2.8ghz (and theres some overhead for the scheduler).

a program can use multiple cores, but in most situations its a bad idea. typically its something only suited to a task the computer is pretty much duing exclusively. a server is a good example, games are another, or applications that require massive computations, like video encoding and graphics rendering. even in such an application, youre still going to have a lot of overhead just making sure you arent working with the same chunk of memory from two locations in the code simultaneously. the program might run somewhat faster with 4 cores, but i very much doubt its runing 4 times faster that running it on a single core processor of the same speed. you are very likely to use a cores worth of processing power just for overhead.

another thing that effects speed is how much a cpu core can do per cycle. might be able to cram in more floating point ops per cycle on newer cpus than the older ones. one of the slowest operations a modern cpu can do is to retrieve data from memory. so cpus use prediction algorithms to guess what the contents of the memory might be, and to do the operations on those predictions before the data from memory actually arrives (its just twiddling its thumbs waiting for the data), and if it was correct about the prediction, then it doesnt have to do an operationon the data. its somewhat awesome what goes on the cpu, and its such a shame the art of programming cant keep up with it.
« Last Edit: September 23, 2010, 05:37:56 am by Nuke »
I can no longer sit back and allow communist infiltration, communist indoctrination, communist subversion, and the international communist conspiracy to sap and impurify all of our precious bodily fluids.

Nuke's Scripting SVN

 

Offline Herra Tohtori

  • The Academic
  • 211
  • Bad command or file name
Re: Multi-core CPU's and GHz question
With single core, it's easy enough - 3.0 GHz = 3.0 GHz (non-geeky equation), but with all these new ones that only say they have about 2.2GHz, is that per core or the total processing power? Does that mean a new quad core 2.0 GHz CPU will have 8.0 GHz total?


No. The clock frequencies announce the processor's cycle time - N cycles in a second. With 2.0 GHz clock frequency, the processing unit has two billion cycles in a second (2,000,000,000 Hz).

The fact that there are multiple cores does not magically increase the cycle rate.


However, cycle rate is integral in defining a single core's calculating power; essentially, it means it can do N processes in a second (this is grossly simplified since there are other factors that amount to the calculating power), and the calculating power is measured in FLoating point Operations Per Second (FLOPS), usually with modern computers this ranges in gigaflops which should not become as a surprise to an acute reader at this point.

This means that if each core has calculating power of 2 GFLOPS, a dual core processor has the parallel processing power of 2x2GFLOPS, quad-core has 4x2GFLOPS etc. This, of course, requires that the program itself supports parallel processing which requires that the program uses so-called "multiple threads"; one thread per virtual processor.

Yes, to complicate the matters, some processors have virtualization that enables the operating system to see one physical core as two discrete virtual processors, which can be very beneficial in some ways and problematic in others.


For older applications such as FS2_Open, which don't support multi-threaded processing, the performance of the CPU depends on a single core's performance which often can be more or less directly expressed in main clock frequency.

However, there are other things that affect the processing power in different scenarios; mainly, the speed and size of the processor's memory cache and the bandwidth to system random access memory. These form the so-called von Neumann bottleneck. This means that in many cases, computing power is not limited by the raw processing power but the ability to transfer data to and from between the system RAM and the processor. Not only this, but the processor's are required to cache their own instructions in addition to the data passing through. The latency of memory operations is what causes most significant delays in computing when the amount of data flow goes over certain threshold. If for example the processor need to use an instruction that isn't stored in the instruction cache, it needs to fetch the instruction there and the processing is stopped for the thread that requires that instruction, for the duration of fetching the instruction to the cache. Same with data - when the thread receives data from memory location to calculate (a word, in modern processors it is of length 64 bits), it processes it, spits out the result, and this result is stored back to a memory location, and the processing is halted for the thread until new data can be accessed from the memory.

The data cache speeds up the process by increasing the chunks of data that can be stored "closer" to the processor (computatively speaking) instead of moving each word one by one through the system bus between the RAM and the CPU.

Here is a diagram of a reasonably modern CPU's cache structure (AMD K8 core):




Now, messing up with process priority will not magically increase the processing power of the core. It will, however, elevate the process to higher priority which prevents threads from other processes from being processed on the appropriate core. Setting the priority to real-time does just that - it gives all of the core to the single processes demands, all the time until the priority is dropped or process terminated.

This might work on a multi-core processor when you set affinity to a single core, or the application natively only uses a single core. In this case, it leaves other core free to do important stuff like keep the operating system responsive and working, things like that. If, however, you set a multi-threaded process to real time priority, it can easily hog all of the CPU, prevent the operating system processes from working and crash your computer.

In single core systems this will happen every time if you set a "greedy" process to real-time priority. Unless the OS is protected from stupid user errors like this.

In other words: don't do it, it's misguided and silly and will only grant you a placebo effect of renders going faster. If other processes are messing up with renders, you should set their priority lower, not the rendering process priority to higher. Or you can set rendering processes affinity to a core that is not used by other processes as much. Either method works.

Incidentally, this is also why so many people experience such huge frame rate drops with FRAPS. Sure, it does decrease performance by having to dump each frame into HDD in a video file, but if you set FRAPS affinity to a different core than the game you play, it will work out much smoother... when the same core attempts to run both FS2_Open and FRAPs for example, it creates conflict of interests for both processes which slows down both process threads; when they operate in discrete cores, they are free to use more processing power simultaneously.
There are three things that last forever: Abort, Retry, Fail - and the greatest of these is Fail.

 

Offline Mika

  • 28
Re: Multi-core CPU's and GHz question
Quote
a program can use multiple cores, but in most situations its a bad idea. typically its something only suited to a task the computer is pretty much duing exclusively. a server is a good example, games are another, or applications that require massive computations, like video encoding and graphics rendering. even in such an application, youre still going to have a lot of overhead just making sure you arent working with the same chunk of memory from two locations in the code simultaneously. the program might run somewhat faster with 4 cores, but i very much doubt its runing 4 times faster that running it on a single core processor of the same speed. you are very likely to use a cores worth of processing power just for overhead.

Usually.

There are some real world applications which are easily parallelized. I really get 8 times the processing power of a single core with a hyper-threading enabled quad core. One of the reasons is the demand for raw processing power in and not that much RAM in that application so that slow memory accesses will not cause performance bottlenecks.

Gaming is another case though.
Relaxed movement is always more effective than forced movement.

 

Offline Ghostavo

  • 210
  • Let it be glue!
    • Skype
    • Steam
    • Twitter
Re: Multi-core CPU's and GHz question
I really get 8 times the processing power of a single core with a hyper-threading enabled quad core.

No, you don't.

Unless you are talking about threads that have huge amounts of jumps (and I mean something like 80/90% of jumps), you'll have somewhere between 4 and 6 times the performance. If you don't have jumps at all, you'll even wind up having slightly less performance than a quad-core without HT due to overhead. The reason is that when using hyper-threading you are not adding anything to up the performance, you are dividing a core's pipeline in two.

The benefit is that when a mis-predicted jump occurs, the amount of wasted pipeline space is reduced, and the dependencies are resolved "quicker".
« Last Edit: September 23, 2010, 04:29:51 pm by Ghostavo »
"Closing the Box" - a campaign in the making :nervous:

Shrike is a dirty dirty admin, he's the destroyer of souls... oh god, let it be glue...

 

Offline Mika

  • 28
Re: Multi-core CPU's and GHz question
So then there are likely a lot of jumps in there.

Assembly people tend to consider hyper threading useless for the reason you have listed.

My experience is that in my field of work, it works well! I can see it from the number of system designs computer has generated, and compared to my actual dual core laptop, the quad core desktop resembles actually an octa core.

Although, I'm not sure if the numbers are completely comparable. I just realized that the laptop has about 500 MHz less frequency than the i7 desktop and then there are some differences in the cache sizes. I still think that the i7 is actually more than four times faster than the dual core laptop. I used to do this stuff with a single core, and dual core laptop felt like a rocket when it arrived.

I note that default local optimization macros don't run much faster than they do with a laptop. But global optimization, oh boy!
Relaxed movement is always more effective than forced movement.

 

Offline Ghostavo

  • 210
  • Let it be glue!
    • Skype
    • Steam
    • Twitter
Re: Multi-core CPU's and GHz question
It's not useless, but even Intel doesn't claim double the performance, they claimed at most gains of 30%, which is pretty optimist when you think about it.

Also, when comparing the Core iX family with the Core 2 family, the newer one seems to have a higher IPC than the older one, so comparing frequency is somewhat misguided.
« Last Edit: September 23, 2010, 05:21:31 pm by Ghostavo »
"Closing the Box" - a campaign in the making :nervous:

Shrike is a dirty dirty admin, he's the destroyer of souls... oh god, let it be glue...

 

Offline Mika

  • 28
Re: Multi-core CPU's and GHz question
I actually had to check some forums about hyper threading and software I'm using. Result: weird. Some say it is considerably slower, the software design company says it shouldn't make a big difference, yet it seems to be faster to me. I have to try utilizing all eight and only the four physical cores tomorrow to see what happens.

Articles were dated back to 2007, what could have changed if any? The other difference is that the laptop is 32 bit Windows XP machine and desktop is 64 bit Windows 7 machine. There's a ton of Microsoft updates in the laptop and F-Secure is crawling on both of them.
Relaxed movement is always more effective than forced movement.

 

Offline Sushi

  • Art Critic
  • 211
Re: Multi-core CPU's and GHz question
One of these days in the distant future, I'd love to experiment with multi-threading in fs2_open. :)

 

Offline newman

  • 211
Re: Multi-core CPU's and GHz question
One of these days in the distant future, I'd love to experiment with multi-threading in fs2_open. :)

Yes! Let's have a collision detection-dedicated core :)
You know what the chain of command is? It's the chain I go get and beat you with 'til ya understand who's in ruttin' command here! - Jayne Cobb

 

Offline CP5670

  • Dr. Evil
  • Global Moderator
  • 212
Re: Multi-core CPU's and GHz question
I actually had to check some forums about hyper threading and software I'm using. Result: weird. Some say it is considerably slower, the software design company says it shouldn't make a big difference, yet it seems to be faster to me. I have to try utilizing all eight and only the four physical cores tomorrow to see what happens.

What programs do you use? I actually keep HT disabled, as it seems to hurt more often than it helps in the stuff I do. I find that it consistently makes things in Matlab and Mathematica 5-8% slower, and most benchmarks I've seen show the same thing.

 

Offline Rodo

  • Custom tittle
  • 212
  • stargazer
    • Steam
Re: Multi-core CPU's and GHz question
This thread actually gives me a space to ask for some advise :D

My mobo died like 2 weeks ago, and I'm thinking about upgrading, I just don't have enough $$ to go and buy a x6 or i7, hell I might not even have enough to get i5 :S

So here's the question, if I get my mobo back fixed, should I just get a better processor and up the ram a little?

Present config: m2n sli deluxe + X2 4200 + 3GB DDR800 + GTX 260, I was thinking about getting a 6400+ and 4GB DDR800.
I'll use it for modding stuff, maybe rendering something and playing some FS from time to time.

EDIT: added gpu.
« Last Edit: September 23, 2010, 08:20:16 pm by Rodo »
el hombre vicio...

 

Offline Bob-san

  • Wishes he was cool
  • 210
  • It's 5 minutes to midnight.
Re: Multi-core CPU's and GHz question
This thread actually gives me a space to ask for some advise :D

My mobo died like 2 weeks ago, and I'm thinking about upgrading, I just don't have enough $$ to go and buy a x6 or i7, hell I might not even have enough to get i5 :S

So here's the question, if I get my mobo back fixed, should I just get a better processor and up the ram a little?

Present config: m2n sli deluxe + X2 4200 + 3GB DDR800 + GTX 260, I was thinking about getting a 6400+ and 4GB DDR800.
I'll use it for modding stuff, maybe rendering something and playing some FS from time to time.

EDIT: added gpu.
What's your budget like? It seems that your board, the M2N-SLI Deluxe, has beta support for Phenom II X4 processors (and most under). That of course includes support of the Athlon II lineup. You'd need to flash your BIOS to the latest beta version.
http://usa.asus.com/product.aspx?P_ID=szSFtrap7crpBaQE
Upping RAM to 4GB or 6GB would be an option: I'd suggest if you go anywhere that you go to 6GB. Otherwise, the GTX-260 should be fine for now. Another option might be an AM2+ board (supporting DDR2).


The only place that I've heard/seen a Hyperthreading processor excel over a non-HT processor is in some Distributed Computing applications. Performance is drastically improved by 20-30%.
NGTM-1R: Currently considering spending the rest of the day in bed cuddling.
GTSVA: With who...?
Nuke: chewbacca?
Bob-san: The Rancor.

 

Offline Admiral LSD

  • 27
  • Shorter of breath and one day closer to death
    • http://adphq.dyndns.org
00:19  * Snail cockslaps BotenAnna
00:19 -!- Snail was kicked from #hard-light by BotenAnna [Don't touch me there! RAPE!!!]

15:36 <@Stealth_T1g4h> MASSIVE PENIS IN YOUR ASS Linux

I normally enjoy your pornographic website... - Stealth
Get Internet Explorer!

 

Offline Nuke

  • Ka-Boom!
  • 212
  • Mutants Worship Me
Re: Multi-core CPU's and GHz question
shows how far behind the tech i am. when did they start putting gpus into the cpu?
« Last Edit: September 24, 2010, 03:00:26 am by Nuke »
I can no longer sit back and allow communist infiltration, communist indoctrination, communist subversion, and the international communist conspiracy to sap and impurify all of our precious bodily fluids.

Nuke's Scripting SVN

 

Offline Admiral LSD

  • 27
  • Shorter of breath and one day closer to death
    • http://adphq.dyndns.org
Re: Multi-core CPU's and GHz question
With the Clarkdale (desktop) and Arrandale (mobile) cores earlier in the year. It's not technically "on the CPU yet", it's a seperate die in the same package, but Intel are planning on integrating it all in the upcoming Sandy Bridge chips which are supposedly going to start being released soon. AMD have been bleating about it for a couple of years now, but aren't planning on delivering anything until Liano early next year.
00:19  * Snail cockslaps BotenAnna
00:19 -!- Snail was kicked from #hard-light by BotenAnna [Don't touch me there! RAPE!!!]

15:36 <@Stealth_T1g4h> MASSIVE PENIS IN YOUR ASS Linux

I normally enjoy your pornographic website... - Stealth
Get Internet Explorer!

 

Offline Jeff Vader

  • The Back of the Hero!
  • 212
  • Bwahaha
Re: Multi-core CPU's and GHz question
how how far behind the tech i am. when did they start putting gpus into the cpu?
Hasn't been that long. A year tops, I think. Wiser people are free to correct me, as always.
23:40 < achillion > EveningTea: ass
23:40 < achillion > wait no
23:40 < achillion > evilbagel: ass
23:40 < EveningTea > ?
23:40 < achillion > 2-letter tab complete failure

14:08 < achillion > there's too much talk of butts and dongs in here
14:08 < achillion > the level of discourse has really plummeted
14:08 < achillion > Let's talk about politics instead
14:08 <@The_E > butts and dongs are part of #hard-light's brand now
14:08 <@The_E > well
14:08 <@The_E > EvilBagel's brand, at least

01:06 < T-Rog > welp
01:07 < T-Rog > I've got to take some very strong antibiotics
01:07 < achillion > penis infection?
01:08 < T-Rog > Chlamydia
01:08 < achillion > O.o
01:09 < achillion > well
01:09 < achillion > I guess that happens
01:09 < T-Rog > at least it's curable
01:09 < achillion > yeah
01:10 < T-Rog > I take it you weren't actually expecting it to be a penis infection
01:10 < achillion > I was not

14:04 < achillion > Sometimes the way to simplify is to just have a habit and not think about it too much
14:05 < achillion > until stuff explodes
14:05 < achillion > then you start thinking about it

22:16 < T-Rog > I don't know how my gf would feel about Jewish conspiracy porn

15:41 <-INFO > EveningTea [[email protected]] has joined #hard-light
15:47 < EvilBagel> butt
15:51 < Achillion> yes
15:53 <-INFO > EveningTea [[email protected]] has quit [Quit: http://www.mibbit.com ajax IRC Client]

18:53 < Achillion> Dicks are fun

21:41 < MatthTheGeek> you can't spell assassin without two asses

20:05 < sigtau> i'm mining titcoins from now on

00:31 < oldlaptop> Drunken antisocial educated freezing hicks with good Internet == Finland stereotype

11:46 <-INFO > Kobrar [[email protected]] has joined #hard-light
11:50 < achtung> Surely you've heard of DVDA
11:50 < achtung> Double Vaginal Double ANal
11:51 < Kobrar> ...
11:51 <-INFO > Kobrar [[email protected]] has left #hard-light []