View Full Version : CPU Question regarding 64-bit
Lusty_Muffins
September 20th, 2006, 08:11 PM
Not really "tech support" but it would've felt wrong going in the OTF.
Was just curious as to this little question. I don't have all of my facts straight yet so bear with me if I've got some wrong.
(this is where I'm probably wrong) So a 64-bit CPU pretty much doubles the amount of data per refresh or cycle or strobe or whatever, right?
So, in theory, wouldn't a 1.5GHz 64-bit CPU be just as fast as a 3.0GHz 32-bit CPU?
Just thought it up and thought I'd ask you guys.
Rob_F
September 21st, 2006, 02:44 AM
Hmmm, not quite. See, the thing is; with the Pentium III generation, Intel added things called "Streaming SIMD Extensions" (SSE), and basically what that boils down to is hardware functions (I believe there's support for extended math calculations, I know it includes hardware floating-point support), but it also includes the basic stuff such as registers and that sort.
The reason I mention SSE is that those registers are 128-bits. Because most things take advantage of SSE, whether the main registers, memory addresses, and pointers are 64-bit doesn't quite matter as much. 64-bit actually is aimed more towards supporting larger memory addresses, so there isn't so much of a performance hit when reading/writing memory past a certain barrier (4 Gb IIRC.)
However, that's not the whole story. Apparently PCI-Express has special considerations for 64-bit memory transactions; which is naturally beyond the scope of SSE. I noticed a very nice benefit with my AMD64 and PCI-E video card (1000 3dMark2005 points, almost exactly.) However, in order to get that benefit I did have to use WinXP 64-bit, of course.
Anyway, that should help answer your question. Most applications like video encoders, Photoshop, etc will not see barely any benefit as they use SSE anyway. However, anything 3D (games especially) will benefit a very notable amount because (I believe) of the design considerations made with PCI-E in regard to 64-bit.
I'll have to do a bit of digging to ensure my conclusions are correct, but my theory has been very rigidly proved solid by my practical experiences on the subject.
Hope that was helpful Lusty ;)
Enforcer
September 21st, 2006, 03:28 AM
I think Rob is pretty close, but 32-bit and 64-bit are the data path, not the extensions. For example, Mac computers have been 64-bit since the 90's and are generally faster than PCs (Ghz-Ghz). However, to take full advantage of the hardware, you need the software to accommodate it.
Rob_F
September 21st, 2006, 03:33 AM
I think Rob is pretty close, but 32-bit and 64-bit are the data path, not the extensions. For example, Mac computers have been 64-bit since the 90's and are generally faster than PCs (Ghz-Ghz). However, to take full advantage of the hardware, you need the software to accommodate it.
That's what I mean, the data path is not extended by SSE. That's why gains can be had with implementing 64-bit on the x86 platform; and also I think that how PCI-E in particular makes use of the 64-bit expansion forms the first example of this in practice.
Heh, and on the Mac point: Now that they've migrated to the Intel platform, most of their applications now run at half speed (GG Rosetta) although the ability to run Windows is very useful. I miss the PowerPC architecture, but I love the ability to run Windows :p
Enforcer
September 21st, 2006, 03:39 AM
Heh, and on the Mac point: Now that they've migrated to the Intel platform, most of their applications now run at half speed (GG Rosetta) although the ability to run Windows is very useful. I miss the PowerPC architecture, but I love the ability to run Windows :p
Fuckin' catch 22's man, fuckin' catch 22's.
Plus the PPC was getting way too hot to overclock any further. At 3.0ghz, they would have needed liquid nitrogen cooling.
Rob_F
September 21st, 2006, 03:53 AM
Honestly though? Programming has really lagged behind hardware development. C and C++ are still the mainstream language of choice for multiplatform develoment, and it's still tied to the concept of compiling into an executable that runs natively on one platform only.
These languages really need to be transformed into new languages, again specialized in both low-level and high-level programming. I would like to see a language where the idea of "fat" (multiplatform) binaries are chucked out the window. There should be a template of what hardware-level functions are transcribed, and each binary should interface to that template. If you templated the individual CPU functions and registers, programs could actually achieve universal compatibility. If that template is loaded on execution, then it would not need to be interpreted; the program then interfaces directly to the appropriate CPU instructions, with the caveats (such as different register sizes) accounted for.
One day, one day I'll get around to writing my own programming language :p
Enforcer
September 21st, 2006, 04:10 AM
Honestly though? Programming has really lagged behind hardware development. C and C++ are still the mainstream language of choice for multiplatform develoment, and it's still tied to the concept of compiling into an executable that runs natively on one platform only.
These languages really need to be transformed into new languages, again specialized in both low-level and high-level programming. I would like to see a language where the idea of "fat" (multiplatform) binaries are chucked out the window. There should be a template of what hardware-level functions are transcribed, and each binary should interface to that template. If you templated the individual CPU functions and registers, programs could actually achieve universal compatibility. If that template is loaded on execution, then it would not need to be interpreted; the program then interfaces directly to the appropriate CPU instructions, with the caveats (such as different register sizes) accounted for.
One day, one day I'll get around to writing my own programming language :p
That's so true man, the companies are so worried about the "end-user" or "average consumer" that they pretty much neglected the "intelligent consumer." Not to mention the rate hardware has progressed has been pretty intense and I think it'll take specific software like you were talking about ages to catch up. Even hardware-hardware, someone was saying that if the CPU advanced as fast as the graphics GPU, we would have like 10,000GHZ systems. I'm glad to be alive in this era. Anything remotely further or before would have either been too boring or too dangerous. :p
spartan
September 21st, 2006, 04:37 AM
I'm not so keen on the technical aspects of the processors that Rob has enlightened us on, but I can tell you that when switching between 32bit and 64bit processors that are otherwise comparable in terms of preformance, there is little to no net gain in speed, going by what I can remember from the one benchmark analysis between the two sides I've seen. Could be wrong on this.
Lusty_Muffins
September 21st, 2006, 05:34 AM
Jease. Guess it goes to show that you shouldn't believe all the hype you hear about new technology. I remember a few weeks after 64-bit CPU's were introduced I heard from a few sources that it cuts rendering time in half in DCC programs. Would've been insanely useful to me because I'm currently modeling purely for artistic purposed (means I don't have a set poly budget), as opposed to making models for a purpose.
And, yes Rob, your post was MOST helpful. Answered my question and then some. +rep 4 u :D
-edit- I actually remember what one person told me in relation to rendering times w/ 64-bit:
"A scene that takes 40 minutes to render on a 32-bit CPU will only take 10 minutes on a 64-bit system" (both CPU's at the same clock speed).
Would've been nice :(
Rob_F
September 21st, 2006, 04:19 PM
I'm not so keen on the technical aspects of the processors that Rob has enlightened us on, but I can tell you that when switching between 32bit and 64bit processors that are otherwise comparable in terms of preformance, there is little to no net gain in speed, going by what I can remember from the one benchmark analysis between the two sides I've seen. Could be wrong on this.
Jease. Guess it goes to show that you shouldn't believe all the hype you hear about new technology. I remember a few weeks after 64-bit CPU's were introduced I heard from a few sources that it cuts rendering time in half in DCC programs. Would've been insanely useful to me because I'm currently modeling purely for artistic purposed (means I don't have a set poly budget), as opposed to making models for a purpose.
And, yes Rob, your post was MOST helpful. Answered my question and then some. +rep 4 u :D
-edit- I actually remember what one person told me in relation to rendering times w/ 64-bit:
"A scene that takes 40 minutes to render on a 32-bit CPU will only take 10 minutes on a 64-bit system" (both CPU's at the same clock speed).
Would've been nice :(
Again guys: software, software, software. That's what it ends up all depending on. If you have a program that uses the SSE/3dNow! features, whether the main data path is 64-bit or not doesn't really matter as it is using the extended functions to do all the heavy lifting anyway.
However, two caveats: if you have software that doesn't use SSE/3dNow!, you should get that sizable speed boost (although it's not quite double, due to architectural reasons.) The other caveat is that if you have a PCI-E video card, it will take advantage of the 64-bit data path; so games should see a very nice increase. In my case, the rendering gain was roughly 1/3 of an increase in rendering capacity.
Locke
September 21st, 2006, 09:38 PM
OK, well i have another question, does the socket type have any affect on the speed. say i have an AMD Athlon 3000+ socket 754 processor, is it slower than at AMD Athlon 3000+ socket 939?
Rob_F
September 21st, 2006, 10:32 PM
OK, well i have another question, does the socket type have any affect on the speed. say i have an AMD Athlon 3000+ socket 754 processor, is it slower than at AMD Athlon 3000+ socket 939?
Depends if you have dual channel memory in the socket 939 board or not. Socket 754 is generally regarded as the "budget" AMD64 platform, if you're building a gaming box you're best off with 939.
Locke
September 21st, 2006, 11:19 PM
damn, thats the situation im in.
Enforcer
September 21st, 2006, 11:38 PM
Or even AM2 would make more sense, considering thats the newest (and fairly equal to 939 in price). It would allow for much more upgradability in the future.
Rob_F
September 22nd, 2006, 12:07 AM
Or even AM2 would make more sense, considering thats the newest (and fairly equal to 939 in price). It would allow for much more upgradability in the future.
Yes, that's true. I forgot about AM2 as I've not really been paying attention to the AMD lineup as it won't be upgrade time for my 3800+ for some time :p
Remember to consider the upgrade path before tying yourself to a specific platform, rule #1 of PC building.
Enforcer
September 22nd, 2006, 12:14 AM
Yes, that's true. I forgot about AM2 as I've not really been paying attention to the AMD lineup as it won't be upgrade time for my 3800+ for some time :p
Remember to consider the upgrade path before tying yourself to a specific platform, rule #1 of PC building.
I think (by looking at your system specs), you could fetch some good cash for that antique. :kak:
But seriously, upgrade path is truly rule #1, I made that mistake several times (every time :meh:) and I regret it, but at least I got to rip off some idiot thinking it's the newest computer on the planet. I mean seriously, how much power do they need? :p
StandingCow
September 22nd, 2006, 10:55 AM
That's so true man, the companies are so worried about the "end-user" or "average consumer" that they pretty much neglected the "intelligent consumer." Not to mention the rate hardware has progressed has been pretty intense and I think it'll take specific software like you were talking about ages to catch up. Even hardware-hardware, someone was saying that if the CPU advanced as fast as the graphics GPU, we would have like 10,000GHZ systems. I'm glad to be alive in this era. Anything remotely further or before would have either been too boring or too dangerous. :p
Funny you mention the GPU vs CPU thing.. there was an article on tomshardware.com:
http://www.tgdaily.com/2006/09/18/peakstream_supercomputer/
But, it was basically talking about how a GPU is much more powerful than a CPU, actually with a GPU you have a supercomputer (32 or so processors).
kamikaze_decoy
September 22nd, 2006, 08:30 PM
You do see improved performance on 64 bit but not due to the widening of the data path. The big improvement at least with AMD cpu's is the addition of the on chip memory controller and Hypertransport. These two together make fetching instructions and data a significantly faster operation which makes programs appear to be faster since most of the average program's running time is waiting for data and instructions from the main memory.
Agent Law
September 22nd, 2006, 09:24 PM
Funny you mention the GPU vs CPU thing.. there was an article on tomshardware.com:
http://www.tgdaily.com/2006/09/18/peakstream_supercomputer/
But, it was basically talking about how a GPU is much more powerful than a CPU, actually with a GPU you have a supercomputer (32 or so processors).
Interesting that you mention that... Earlier I was thinking what would happen if, in a CrossFire or SLI setup, one of the graphics cards were to supplement the CPU.
Enforcer
September 23rd, 2006, 03:50 PM
Don't forget, Intel chips have 64 bit as well. They traded one set of instructions with AMD for the 64-bit technology. Plus, Intel chips are a lot cheaper per GHZ.
Rob_F
September 23rd, 2006, 04:05 PM
Don't forget, Intel chips have 64 bit as well. They traded one set of instructions with AMD for the 64-bit technology. Plus, Intel chips are a lot cheaper per GHZ.
I thought the whole "clock rate = performance" thing was put to bed a long time ago :confused:
Also, EMT64 doesn't seem nearly as complete as AMD64. Can it even run XP 64-bit?
Agent Law
September 24th, 2006, 02:02 AM
Yes.
Enforcer
September 24th, 2006, 02:28 AM
I thought the whole "clock rate = performance" thing was put to bed a long time ago :confused:
Also, EMT64 doesn't seem nearly as complete as AMD64. Can it even run XP 64-bit?
Well the whole thing surrounding that was AMD is better for gaming with more clocks, however, Intel is far superior to raw power (encoding, etc). At least that's what I heard/experienced (although I see no difference in either)
Lusty_Muffins
September 25th, 2006, 11:30 PM
Well, I've expeirenced great benefits using AMD's for games. My mom has a 1.8GHz AMD Sempron. I have a 3.2Ghz P4 w/HT. Her computer kicks the shit out of mine at most games when I hook my GeForce 6800 into her PC. She has the same amount of RAM and her RAM is DDR, whereas mine is DDR2 (not really much benefit there :rolleyes: )
vBulletin® v3.8.4, Copyright ©2000-2012, Jelsoft Enterprises Ltd.