AOA AOA AOA Folding For Team 45 AOA Files Home Front Page Become an AOA Subscriber! UserCP Calendar Memberlist FAQ Search Forum Home


Go Back   AOA > Software > Programming and Assembly Language
Register FAQ Members List Calendar Arcade Search Today's Posts Mark Forums Read

Programming and Assembly Language Please read this Topic's rules!!


Reply
 
LinkBack Thread Tools Rate Thread
  #1 (permalink)  
Old 8th December, 2005, 09:24 AM
Gizmo's Avatar
Chief BBS Administrator
 
Join Date: May 2003
Location: Webb City, Mo
Posts: 13,949
Send a message via ICQ to Gizmo Send a message via AIM to Gizmo Send a message via MSN to Gizmo Send a message via Yahoo to Gizmo Send a message via Skype™ to Gizmo

Why Do Intel CPUs stink at games?

There is an interesting article over at ExtremeTech which asks the question, "Why do Intel CPUs stink at games?". We all know that in most benchmarks, AMD usually comes out on top in the gaming area. This is true even when AMD lags Intel in other benchmarks. So, one of the people at ExtemeTech decided to disect the executable for BF2, and found some interesting things.

What do you think? Do Intel CPUs REALLY stink at gaming? Is there a massive conspiracy among game writers to make AMD look better than Intel? Is it a case of game writers just not wanting to risk turning on all the compiler options?
__________________
Avatar and sig graphic by Pitch. Subscribers!
Ask about a custom graphic or avatar today!
 
Later,
Gizmo
Thermal Diode Mod and Direct-Die Water Block
8-Cheetah 18GiB U-2 SCSI
MegaRAID Enterprise 1500/128MiB
Samsung SyncMaster 955DF
TTGI/Superflower TTS-520 PSU
 

 
AOA Team filesAOA Team wcgAOA Team fah
Digg this Post!Add Post to del.icio.usBookmark Post in TechnoratiFurl this Post!
Reply With Quote
  #2 (permalink)  
Old 8th December, 2005, 10:07 AM
Staz's Avatar
Member/Contributer
 
Join Date: June 2002
Location: Lafayette LA
Posts: 3,240
Send a message via Yahoo to Staz

OK, Why would a game manufacturer purposely hobble the performance on a game?
__________________
How come whenever I have a 50/50 chance I'm wrong 80% of the time?

What goes in a computer? Click me to find out.
Digg this Post!Add Post to del.icio.usBookmark Post in TechnoratiFurl this Post!
Reply With Quote
  #3 (permalink)  
Old 8th December, 2005, 11:21 AM
Áedán's Avatar
Chief Systems Administrator
 
Join Date: September 2001
Location: Europe
Posts: 11,799

It raises several questions. Firstly, how much performance is lost across the two classes of processors given that the code is optimised for a Pentium class processor (no optimisation flag present).

Now, MS's documentation appears to suggest that you can see a speed up of around 5-10% ( on the code. Assuming worst case that this optimisation resulted in no speedup on the AMD processors (which we know is untrue), then it would produce a speedup on the P4 processors of 10%.

Using the BF2 framerates present in the original article shows that there's more than a 10% difference between the two processors. Thus, we can see that even in the best light, those optimisations will not result in enough of a difference to stop AMD keeping the lead.

On the other hand, my experience with compiler optimisations is that they can, under certain circumstances, lead to some odd and very difficult to debug crashes. Developers have limited time. If they have to spend many hours trying to work out why good code is mangled by a compiler optimisation, then that's many hours they're not spending fixing the real bugs in the program. When you're under time pressure to get a product finished, then the compiler optimisations are going to be the first thing that goes out of the window! At least that way the developers are going to know that any bugs that are in the code are actually in their code, not the compilers code.
__________________
Digg this Post!Add Post to del.icio.usBookmark Post in TechnoratiFurl this Post!
Reply With Quote
  #4 (permalink)  
Old 8th December, 2005, 11:27 AM
Staz's Avatar
Member/Contributer
 
Join Date: June 2002
Location: Lafayette LA
Posts: 3,240
Send a message via Yahoo to Staz

Quote:
Originally Posted by Staz
Why would a game manufacturer purposely hobble the performance on a game?
Quote:
Originally Posted by Áedán
Developers have limited time. If they have to spend many hours trying to work out why good code is mangled by a compiler optimisation, then that's many hours they're not spending fixing the real bugs in the program. When you're under time pressure to get a product finished, then the compiler optimisations are going to be the first thing that goes out of the window!
Thanks Áedán
__________________
How come whenever I have a 50/50 chance I'm wrong 80% of the time?

What goes in a computer? Click me to find out.
Digg this Post!Add Post to del.icio.usBookmark Post in TechnoratiFurl this Post!
Reply With Quote
  #5 (permalink)  
Old 8th December, 2005, 11:38 AM
Gizmo's Avatar
Chief BBS Administrator
 
Join Date: May 2003
Location: Webb City, Mo
Posts: 13,949
Send a message via ICQ to Gizmo Send a message via AIM to Gizmo Send a message via MSN to Gizmo Send a message via Yahoo to Gizmo Send a message via Skype™ to Gizmo

I highly doubt there is any conspiracy; AMD doesn't have enough resources to make it worth the developer's while, for one thing (i.e. money), I don't think.

There is also the possibility that they are using an older compiler. For example, I have products I maintain that were originally compiled using Microsoft Visual C 2.0, and I still use the 2.0 compiler to build and maintain them. Why? Because there are a lot of things that have changed over the years, and I can't simply drop that code into the latest Visual Studio .NET 2005 and expect it to compile without having to change a fair amount of code (libraries have changed; some function calls no longer exist, others take different arguments than they used to, internal data formats are different, the list goes on and on). Oddly enough, the VC 2 compiler doesn't have any idea how to optimize for a P4.

That's one issue.

Another is that, as Áedán points out, compiler optimizations can cause some weird problems. While it might be desirable to optimize for the most common CPU in the target audience, the fact is that after you've spent days tracking down a compiler induced bug, you are going to be loathe to reactivate a setting that could potentially cause that bug to reappear.

The fact is that in many cases, optimizers are simply a substitute for lazy programmers. This is not necessarily a bad thing, mind you. As a programmer, I should be able to spend most of my time developing the algorithm, not worrying about how to make it more efficient. However, if I do need to make it efficient, there are a LOT of things I can do in the source code. I once took a speech recognition algorithm that required over a minute of real processing per second of voice, and rewrote the source code so that, using the same hardware and the same audio, it only took about 3/4 second for the same second of voice. That was right at 2 orders of magnitude performance improvement, and that improvement was achieved even after the original code was compiled with optimizations enabled! Now granted, the original algorithm was written to illustrate how to do speech recognition, not for efficiency, but I think it still illustrates my point.

If I've got a piece of code that is so performance sensitive that I need the additional benefits of optimized code (and I can't reap those benefits by carefully laying out my source code), then I am most likely going to drop straight to assembler and do it myself. In which case, I don't need the compiler mucking about and screwing around with my memory and register layout.
__________________
Avatar and sig graphic by Pitch. Subscribers!
Ask about a custom graphic or avatar today!
 
Later,
Gizmo
Thermal Diode Mod and Direct-Die Water Block
8-Cheetah 18GiB U-2 SCSI
MegaRAID Enterprise 1500/128MiB
Samsung SyncMaster 955DF
TTGI/Superflower TTS-520 PSU
 

 
AOA Team filesAOA Team wcgAOA Team fah
Digg this Post!Add Post to del.icio.usBookmark Post in TechnoratiFurl this Post!
Reply With Quote
  #6 (permalink)  
Old 8th December, 2005, 12:46 PM
alexkerhead's Avatar
Member/Contributer
 
Join Date: June 2004
Location: Montgomery, AL USA
Posts: 3,007
Send a message via MSN to alexkerhead

Intels do not suck at games, just benchmarks favor amd a tad more.
Not a big deal, I wish amd people would quite making intel people think that intels are like 1/4 the gaming speed.
The truth is, you need a benchmark to tell the difference, real life, the diff in 55fps and 65fps is unoticable.
__________________
Ubuntu Linux User.
New Stuff:
Texas Instrument Portable Professional Computer, Kaypro IV, Compaq portable I, Compaq Portable II, Compaq Portable III, IBM 5150, Apple IIe, Commodore CBM 8032, and a whole bunch more.
Old Stuff:
P4 3.06GHz@3.45GHz/2048MB OCZ/Asus P4G8X-Deluxe/6600GT
AMD XP 2400@2.3GHz/1024MB OCZ/MSI nForce/9600pro
P4 2GHz@2.4GHz/512MB OCZ/Junky Biostar board/9000pro
AMD XP 2000@2.2GHz/512MB OCZ/Junky Shuttle board
Dual P3 1Ghz/512MB Generic/AOpen m25/9600se

AOA Team fah
Digg this Post!Add Post to del.icio.usBookmark Post in TechnoratiFurl this Post!
Reply With Quote
  #7 (permalink)  
Old 8th December, 2005, 01:59 PM
Seperah's Avatar
Member
 
Join Date: July 2005
Location: Northern Ohio
Posts: 1,411

Easy there cowboy. Yes the article says "stinks at games"
But the question is why a specific architecture be it AMD or Intel isnt exploited to its fullest potential... Not "AMD pwnz Intel"

I'm still thinking about this one though..
__________________
I burn the bridges behind me therefore
I have no choice but to move forward
Digg this Post!Add Post to del.icio.usBookmark Post in TechnoratiFurl this Post!
Reply With Quote
  #8 (permalink)  
Old 8th December, 2005, 03:34 PM
hoinar's Avatar
Member
 
Join Date: February 2005
Location: Iasi, Romania
Posts: 945

Quote:
Originally Posted by alexkerhead
Intels do not suck at games, just benchmarks favor amd a tad more.
Not a big deal, I wish amd people would quite making intel people think that intels are like 1/4 the gaming speed.
The truth is, you need a benchmark to tell the difference, real life, the diff in 55fps and 65fps is unoticable.
In a benchmark I see odd figures mate, but in a 45 to 35 fps change I see a broken keyboard that's what I think matters more.
__________________
Sempron 2800+@2364Mhz-1.85VCore
Ep8RDA6+Pro
1024MB Corsair+Twinmos
WD1200JD(120GB)+Maxtor(40GB)
Asus ATI9250 GE

I'd cry...but I can't stop laughing.
AOA Team fah
Digg this Post!Add Post to del.icio.usBookmark Post in TechnoratiFurl this Post!
Reply With Quote
  #9 (permalink)  
Old 20th December, 2005, 09:08 AM
skool h8r's Avatar
Member
 
Join Date: January 2005
Location: Rotherham, UK
Posts: 3,140
Send a message via MSN to skool h8r

Quote:
Originally Posted by Seperah
But the question is why a specific architecture be it AMD or Intel isnt exploited to its fullest potential... Not "AMD pwnz Intel"
Perhaps there is something going on with compilers and developers and AMD. If you notice, on many of the newer games, it does say something like 'works great on AMD64'. And yes, looking for a reason why optimistaions are done in a particular way would be very time consuming, it's all been worked out as 'what is the best/quickest way a CPU can process binary without errors?'. If you could actually look at the binary of an exe that is optimised and one that isn't optimised, you would see that the optimised one is less organised for viewing by a human but runs better when it is read by a CPU. Still, i do think that many game developers are leaning towards AMD now, mainly because of how quickly they are progressing as opposed to intel progressing. In the past few years, AMD have made many technological advances such as 64-bit CPU's, dual cores amongst other things. It seems that intel are starting to try and follow what technologies AMD are 'creating' as it were, and then creating what they think is better. The arguement continues.
__________________

Wolfdale E8400 @ 4.0Ghz @ 1.400v
Dual-Channel 4Gb Corsair Dominator PC2-8500C5 @ 1069Mhz @ 5-5-5-15-2T (Cooled by Dominator Fan)
PNY 8800GT 512MB @ Stock (64.0GB/s Bandwidth, 11.2 GPixel, 39.2GTexel /sec)
Asus P5K-E Wifi @ 445 FSB (1780 QDR) (1.55V N/B)
CPU cooled by IFX-14 and Antec Tricool 120mm.
Antec PowerMax 850W

________________
1920x1200 Gamer (24" Widescreen)
13221 3DMark06
22935 3DMark05
42097 3DMark03

Digg this Post!Add Post to del.icio.usBookmark Post in TechnoratiFurl this Post!
Reply With Quote
  #10 (permalink)  
Old 20th December, 2005, 12:32 PM
AOA's Resident Clown
 
Join Date: January 2005
Location: Brighton
Posts: 4,851

CPC Benchmarks.

Very interesting.

FPS Results at 1600x1200 4xAA 8xAF with an Athlon 3000 and an Athlon FX-57 hooked up to Twin 7800GTXs
64 3000
BF2 65FPS
Doom 3 85FPS
FEAR 41FPS
Far Cry 60FPS
Quake 4 54FPS

FX-57
BF2 65FPS
Doom 3 97FPS
FEAR 41FPS
Far Cry 80FPS
Quake 4 549PS

It clearly shows that the extra £500 you spent on that FX57 gave you no increase in gaming performance.
Which in turns means, spend less on CPU, more on GFX.

Intel Vs AMd Benchmarks
Rome Total War GeForce 6800GT 1280x1024 2XAA 2xAF

FX57 19
64 4000 18
X2 4800 17
Intel P4 670 3.8GhZ 15
Intel P4 3.7GhZ Extreme Editon 15
Intel 2.26GhZ Pentium M 15
Athlon 64 3000 14
Athlon 64 X2 3800 14
Sempron 3400 13
Intel Pentium D 840 12
Intel Extreme Edition 840 12
Intel 630 3GhZ 11
Intel 1.7GhZ Pentium M 11
Sempron 2600 10
Intel 2.8GhZ D820 10
Intel 2.6GhZ Celeron 331 7

All scores in FPS using FRAPS.
We can conclude that bringing into account cost, AMDs CPUs outperform Intels for gaming.
We can also conclude that X2 Athlons are slower than single core Athlons in gaming.
__________________


Quote:
Originally Posted by Wolf2000me
Skinny people are not petite in every aspect of the body, let me tell you that
Quote:
Originally Posted by dsio
I was searching for a synonym for testicles that rhymed with hats



E6400 - 2GB Geil Dragon Quad-Channel - X1950Pro

Exclusive Haddaway - What Is Love? Remix

Digg this Post!Add Post to del.icio.usBookmark Post in TechnoratiFurl this Post!
Reply With Quote
  #11 (permalink)  
Old 20th December, 2005, 12:38 PM
AOA's Resident Clown
 
Join Date: January 2005
Location: Brighton
Posts: 4,851

Sorry to double post.
But I'd like to put this bit in.
From wha those results tell me, I think I can build up a PC for £1000 that is a true gaming monster.

Abit AN8 Sli £120
1024MB Corsair Ram £130
2x7800GTs £450
AMD Athlon 3500 Venice £130
Seasonic 600W PSU £85
Add on your extras like drives and you get to about £1K.

Previously, I'd have thouht this was better.
Abit AN8 SLI
1024MB Corsair Ram
Sapphire Radeon X800GTO2/Connect 3D Radeon GTO
AMD Athlon X2 4800
__________________


Quote:
Originally Posted by Wolf2000me
Skinny people are not petite in every aspect of the body, let me tell you that
Quote:
Originally Posted by dsio
I was searching for a synonym for testicles that rhymed with hats



E6400 - 2GB Geil Dragon Quad-Channel - X1950Pro

Exclusive Haddaway - What Is Love? Remix

Digg this Post!Add Post to del.icio.usBookmark Post in TechnoratiFurl this Post!
Reply With Quote
  #12 (permalink)  
Old 20th December, 2005, 01:38 PM
Áedán's Avatar
Chief Systems Administrator
 
Join Date: September 2001
Location: Europe
Posts: 11,799

Quote:
Originally Posted by skool h8r
Perhaps there is something going on with compilers and developers and AMD. If you notice, on many of the newer games, it does say something like 'works great on AMD64'. <snip> If you could actually look at the binary of an exe that is optimised and one that isn't optimised, you would see that the optimised one is less organised for viewing by a human but runs better when it is read by a CPU.
Having done some reverse engineering, I can tell you that binaries are not optimised for viewing by humans at all. It takes a huge amount of effort to turn binary code into something understandable by humans even without any optimisations.

From what I've seen (which isn't really that much), most games are optimised for 386/486 processors. This means that subsequent processors won't be able to get the most performance out of the code, but at least it'll run across all modern processors. If you compile code specifically for one processor (both at the CPU and architecture level), then the chances are very good that the code will not run correctly on a different processor.

Again, from a developer point of view, this is a huge headache. It means maintaining several seperate versions of code, for each of the target architectures. That multiplies the amount of work necessary to debug the code, as seperate versions of the code may well have specific bugs due to interactions between compiler flags and processors.

The net result is that the "runs best on" or "works great on" is nothing more than marketing. The likelihood is that the code was never optimised for one specific manufacturer at all.

Interestingly enough, Intel's compiler does a very good job optimising code. However, running that code on an AMD processor also results in a performance boost...

(As far as I'm aware, AMD doesn't have their own compiler?)
__________________
Digg this Post!Add Post to del.icio.usBookmark Post in TechnoratiFurl this Post!
Reply With Quote
  #13 (permalink)  
Old 31st December, 2005, 09:32 AM
keithwalton's Avatar
Member/Contributor
 
Join Date: May 2003
Location: Southampton, UK
Posts: 2,257
Send a message via ICQ to keithwalton Send a message via MSN to keithwalton Send a message via Yahoo to keithwalton

intel have not allways sucked at games, if you look back to the quake 3 engine based games (most notably quake 3 arena itself) intel had a decisive upper hand with the P3. At the time it would take an amd athlon chip running a good 100-150mhz faster than an intel chip just to bench the same.
A friend of mine had a P3-666 (440bx) and at max settings at the time it took an athlon 800 to narrowly beat it.
Alas times have indeed changed
__________________
ASUS P5W DH (i975X) - Core 2 Quad Q6600 (2.40GHz) Currently 3GHz under water hit 3.3GHz so far - 2x 1GB OCZ PC6400's - 2x Seagate 7200.10 320GB's - Sapphire Radeon x1900xt now water cooled
AOA Team fah
Digg this Post!Add Post to del.icio.usBookmark Post in TechnoratiFurl this Post!
Reply With Quote
Reply


Currently Active Users Viewing This Thread: 1 (0 members and 1 guests)
 
Thread Tools
Rate This Thread
Rate This Thread:

Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

vB code is On
Smilies are On
[IMG] code is Off
HTML code is Off
Trackbacks are On
Pingbacks are On
Refbacks are On

Similar Threads
Thread Thread Starter Forum Replies Last Post
Intel orders rival to stop making CPUs Gizmo General Hardware Discussion 6 24th November, 2006 06:45 PM
AMD to counter Intel QX6700 with three new Athlon 64 FX CPUs in mid-November Gizmo AMD Motherboards & CPUs 8 27th September, 2006 07:28 AM
AMD CPUs SteveI AMD Motherboards & CPUs 5 24th December, 2003 01:39 AM
I know nothign about intel mobos/cpus Saigon Intel Motherboards & CPUs 6 25th April, 2003 11:53 AM
Shipping companies stink Pinky Online Deals, and Steals 4 23rd April, 2002 11:58 PM


All times are GMT -6. The time now is 01:33 AM.


Copyright ©2001 - 2007, AOA Forums

Search Engine Friendly URLs by vBSEO 3.2.0