Bad Company 2 Beta Benchmark

Page 2 - Seeking answers? Join the AnandTech community: where nearly half-a-million members share solutions and discuss the latest tech.

Phil1977

Senior member
Dec 8, 2009
228
0
0
Well it looks like your understand of threads differs to what I was taught during my IT degree. I am not in the field of programming, but we did cover the subject.

If you want your application to benefit from more cores, you need to code with that in mind. And trust me developing for more cores is not easy at all. And some sequential code simply can't run on more than one thread.

The OS can move the whole thread from core to core and can load balance applications, but it can't split up a single thread.

I sell computers for a living and I saw the move from single to dual and now quad. And there where many applications that ran slower on the dual cores vs. faster clocked single and there are many applications that run slower on the quads vs faster clocked dual.

Intels Turbo mode is a testament for that. It specifically caters for all these old business packages out there...
 

dguy6789

Diamond Member
Dec 9, 2002
8,558
3
76
So what you are saying if the game runs on all your cores it's multithreaded? :rolleyes:

If the game maxes out one core and still puts some non zero load on another core, that is multi-threading. On a dual core processor, if one game pushes your CPU usage above 50%, that is a multi-threaded game. On a quad core processor, if a game pushes your CPU usage above 25%, that's a multi-threaded game.
 

AzN

Banned
Nov 26, 2001
4,112
2
0
If the game maxes out one core and still puts some non zero load on another core, that is multi-threading. On a dual core processor, if one game pushes your CPU usage above 50%, that is a multi-threaded game. On a quad core processor, if a game pushes your CPU usage above 25%, that's a multi-threaded game.

Oh really? Is original BF2 multithreaded just because it spread between the cores with vista and window7? Last time I checked BF2 is single threaded game and it spread between all cores by the operating system. In windows xp it only spread to 1 cores.
 

Phil1977

Senior member
Dec 8, 2009
228
0
0
So what you are saying if the game runs on all your cores it's multithreaded? :rolleyes:

Not that simple...

If you take the load put on individual cores, add them up, and get a figure of over 100%, then you know it is multi threaded.

E.g. BF BC2 used 70% on both cores. Add it up you get 140. Thats a multi threaded application.

If you get a total of less than 100% it could mean several things and basically it's inconclusive. It could be the OS moving the tread around. Under XP if you run SuperPI it will move the thread from one core to the other. Its quite weird to watch. Or it could mean that you have a bottleneck somehwere else or the game is really old and no sweat for your fast CPU.

But if all 4 cores use let's say 40% each, then you are absolutely dealing with a multi threaded application.

EDIT: Moving threads around <> spreading.

A moving thread is easy to spot. The chart on 1 core is basically a inverted chart of the other one.
 
Last edited:

dguy6789

Diamond Member
Dec 9, 2002
8,558
3
76
Oh really? Is original BF2 multithreaded just because it spread between the cores with vista and window7? Last time I checked BF2 is single threaded game and it spread between all cores by the operating system. In windows xp it only spread to 1 cores.

You're mistaken about multi-core, multi-threading, and how the OS handles threads.

This is how it works. A dual core processor has two cores, a quad core has four obviously. A single threaded application can never ever use more than 50&#37; total CPU time on a dual core processor. It can spread that single thread across both cores, but the combined total will never exceed 50%. For a quad core, it would be 25%. A single thread can be spread across four cores but the total use will not exceed 25%. If a game uses more than 50% of the CPU on a dual core and more than 25% of the CPU on a quad core, it has to be written in two threads at the least, there is no other way it can happen.
 

AzN

Banned
Nov 26, 2001
4,112
2
0
Not that simple...

If you take the load put on individual cores, add them up, and get a figure of over 100%, then you know it is multi threaded.

E.g. BF BC2 used 70% on both cores. Add it up you get 140. Thats a multi threaded application.

If you get a total of less than 100% it could mean several things. It could be the OS moving the tread around. Under XP if you run SuperPI it will move the thread from one core to the other. Its quite weird to watch.

Or it could mean that you have a bottleneck somehwere else...

But if all 4 cores use let's say 40% each, then you are absolutely dealing with a multi threaded application.

EDIT: Moving threads around <> spreading.

A moving thread is easy to spot. The chart on 1 core is basically a inverted chart of the other one.

If what you say above is true then BC2 isn't quad optimized as it's only 50% or even lower between the cores on a quad but your link with the benchmark says otherwise. Whether your link from an individual user is true I have no idea.

My BF2 game is single optimized but at times there would be many instances where it adds up to 100+% more spreading between the cores. So is BF2 multithreaded?

Then there's cache differences on a core 2 quad that makes dual core optimized games faster on a quad with 20% or so performance gains. Now are these games quad optimized? What if the dual core had same amount of cache as the quad?
 

AzN

Banned
Nov 26, 2001
4,112
2
0
You're mistaken about multi-core, multi-threading, and how the OS handles threads.

This is how it works. A dual core processor has two cores, a quad core has four obviously. A single threaded application can never ever use more than 50&#37; total CPU time on a dual core processor. It can spread that single thread across both cores, but the combined total will never exceed 50%. For a quad core, it would be 25%. A single thread can be spread across four cores but the total use will not exceed 25%. If a game uses more than 50% of the CPU on a dual core and more than 25% of the CPU on a quad core, it has to be written in two threads at the least, there is no other way it can happen.

Read the post above after your reply. You imply that I don't know these things but I do.

So if what you say is true then BC2 must be dual core optimized at the most.
 
Last edited:

v8envy

Platinum Member
Sep 7, 2002
2,720
0
0
If a game uses more than 50% of the CPU on a dual core and more than 25% of the CPU on a quad core, it has to be written in two threads at the least, there is no other way it can happen.

Correct, however an app is making system and library calls, and *those* could be multi-threaded under the covers. So a single threaded app could be using up more than 100% of a single cpu by becoming multithreaded through system libraries through no effort (or knowledge) of the original programmer.
 

Phil1977

Senior member
Dec 8, 2009
228
0
0

The benchmarks my mate did really only show that you get more FPS when run on a quadcore and less FPS on a dual core.

He hasn't done any CPU load tests for quads. The ones I did where on a dual.

You can call Dice and ask the developers how they wrote their engine. They allready mentioned that their engine is multi threaded. But you brush that off with "Oh they just say whatever...".

Yes it's a Beta at this stage and that's all we have to work with. But at this stage, the game runs better on a quad than a dual.

You can draw your own conclusions from that :)
 

dguy6789

Diamond Member
Dec 9, 2002
8,558
3
76
I took a screenshot to show what single threaded CPU usage looks like on a quad core processor.

http://pfxfqa.bay.livefilestore.com...RkMP3RgNvTGFrC6Q7PDGWnoxumJ74xa/onethread.png

If the thread regularly exceeds 25&#37; then the application is running more than one thread.

@AzN: It's entirely possible BC2 is dual core optimized at most. Multi-threading just means more than one thread, it doesn't necessarily mean at least 3 or 4. It also doesn't mean that the second thread has to be utilized much at all. If BF2 exceeds 50% usage on a dual core processor regularly, then it is a multi-threaded game. It may not make effective or even noticeable use of it to improve performance however.

A game could be faster on a quad than a dual even if the program only runs two threads especially in the Core 2 series because a Q9XXX processor has 12MB of L2 cache and a dual has 6MB at most. It is split down the middle on both processors, but one thread could use 6MB on one of the cores and the other could use 6MB on the other core on a Quad core processor. It would be 3 and 3 on the highest end Core 2 Duo.

There's also the fact that with a quad core processor running a dual threaded game, you still have two completely free cores to handle random things that might come up that the OS needs processed. A dual core would have to put game processing on hold to make those calls which could hurt performance. Depending on how isolated and clean the benchmark machine is when it comes to background applications, this could make a significant difference in average fps.
 
Last edited:

AzN

Banned
Nov 26, 2001
4,112
2
0
The benchmarks my mate did really only show that you get more FPS when run on a quadcore and less FPS on a dual core.

He hasn't done any CPU load tests for quads. The ones I did where on a dual.

You can call Dice and ask the developers how they wrote their engine. They allready mentioned that their engine is multi threaded. But you brush that off with "Oh they just say whatever...".

Yes it's a Beta at this stage and that's all we have to work with. But at this stage, the game runs better on a quad than a dual.

You can draw your own conclusions from that :)

Understood but you implied if you get 50% or less load or so on CPU usage on a quad it's dual core optimized even if it spread between the cores. Which BC2 does from what I've gathered around the web. When I looked at your friend's benchmark the performance doubled with quad over dual core. Does that make sense?
 

AzN

Banned
Nov 26, 2001
4,112
2
0
@AzN: It's entirely possible BC2 is dual core optimized at most. Multi-threading just means more than one thread, it doesn't necessarily mean at least 3 or 4. It also doesn't mean that the second thread has to be utilized much at all. If BF2 exceeds 50&#37; usage on a dual core processor regularly, then it is a multi-threaded game. It may not make effective or even noticeable use of it to improve performance however.

That's what I figured but when we look at Phil's link with CPU benchmark it's saying other wise which kind of baffles me.
 

Phil1977

Senior member
Dec 8, 2009
228
0
0
You will have difficulties testing a dual threaded application on a quad. You really will have to compare a single core with a dual core machine for this.

At this stage the Beta version of this game clearly performs better on a quad. The final version could be totally different. Nobody knows.

But the Beta is all we got to play with. And it clearly benefits from gaining 2 more cores.
 
Last edited:

Udgnim

Diamond Member
Apr 16, 2008
3,681
124
106
the game needs better CPU optimization.

dfddbfg.jpg


CPU: E8500 @ 4.1 Ghz
Video Card: 4870 512 @ stock, Cat 10.1
RAM: 4 GB
OS: Windows XP

Res: 1680*1050
AA: 1X, DX 9
AF: 16AF
Textures: High
Level of Detail: High
Effects: Low
Shadows: Low
HBAO: Off
 

Phil1977

Senior member
Dec 8, 2009
228
0
0
Yea it's a weird Game on dual cores...

Looking at the CPU loads, you would think your GPU limited. But then you look at the GPU load and you would think you are CPU limited :D

Conclusion: It's Beta! Let's wait for the final version and hope it performs better.
 

AzN

Banned
Nov 26, 2001
4,112
2
0
It's definitely screwed up when we look at Phil's benchmark between quad and dual. I've heard quad users get about 50&#37; or so load and this dual core is getting about 50% load. I think dual core users got shafted on dual core optimized game at the most. Something is definitely not right with the engine.
 

schneiderguy

Lifer
Jun 26, 2006
10,801
91
91
So what you are saying if the game runs on all your cores it's multithreaded? :rolleyes:

You don't know what you're talking about. I see other people already addressed that.

It's definitely screwed up when we look at Phil's benchmark between quad and dual. I've heard quad users get about 50% or so load and this dual core is getting about 50% load. I think dual core users got shafted on dual core optimized game at the most. Something is definitely not right with the engine.
Does the term beta mean anything to you? :hmm:
 
Last edited by a moderator:

TheRickRoller

Member
Dec 2, 2009
164
0
0
Where do you guys think my Geforce 6600 would fit on dem purdy charts? :awe:

One thats underclocked most of the time 'cause she can't handle it anymore, poor girl...
 

zerocool84

Lifer
Nov 11, 2004
36,041
472
126
I've been playing this game for 2 days and play it at highest everything 8xAA HBAO and runs good. Only get slight slowdowns during the huge action times.
 

SunnyD

Belgian Waffler
Jan 2, 2001
32,675
146
106
www.neftastic.com
This thread is seriously lulz @ all the people thinking they know what multithreaded means, especially AzN thinking that Vista or 7 can magically turn a single-threaded application into something that uses multiple cores. Here's a clue: The Vista and Win7 scheduler routinely bounces threads from core to core - doesn't mean it's multithreaded.

Personally, if the developers at Dice say they're using multiple threads, it'd be kind of stupid to debate that because you're looking at task manager and not seeing 100&#37; CPU load.
 

ScorcherDarkly

Senior member
Aug 7, 2009
450
0
0
I've been playing on the rig in my sig, and haven't once had a stutter. 1920x1080, everything maxed except 4xAA and no HBAO. The fact that graphics cards choke on high AA levels is not news.
 

AzN

Banned
Nov 26, 2001
4,112
2
0
especially AzN thinking that Vista or 7 can magically turn a single-threaded application into something that uses multiple cores. Here's a clue: The Vista and Win7 scheduler routinely bounces threads from core to core - doesn't mean it's multithreaded.

You seriously have comprehension problems. Get some clue. I simply asked questions to people like schneiderguy and Phil who think single threaded application becomes dual core optimized because it spread between cores. Tell me what is so different between what I said and what you said other than you having comprehensions problems?

Your operating system is spreading the cores not the game.



Personally, if the developers at Dice say they're using multiple threads, it'd be kind of stupid to debate that because you're looking at task manager and not seeing 100&#37; CPU load.

So is Crysis quad optimized or not? Crytek says it is.
 
Last edited:

scooterlibby

Senior member
Feb 28, 2009
752
0
0
As stated before, the devs have acknowledged issues with dual cores that they said they were attempting to fix. I do hope this is true.
 

SunnyD

Belgian Waffler
Jan 2, 2001
32,675
146
106
www.neftastic.com
You seriously have comprehension problems. Get some clue. I simply asked questions to people like schneiderguy and Phil who think single threaded application becomes dual core optimized because it spread between cores. Tell me what is so different between what I said and what you said other than you having comprehensions problems?

Okay, I "get some clue"...

Vista and Windows 7 "does" split up a single thread game across more cores. Just because it's being spread between the cores does not mean faster performance on a single thread application.
Vista and Windows 7 does absolutely not "split up a single thread" across more cores. It simply isn't possible. It does bounce an entire thread of execution, in its entirety, from core to core as the scheduler sees fit. My comprehension is fine. Your English skills on the other hand are not.

However, in response to the conjecture that people are thinking threads that get bounced constitutes multithreading - yes, there could be some misunderstanding, especially given than any core at any given time could be executing any arbitrary thread that is currently scheduled on the system - not from any particular application. Hell, it could even look like Microsoft Word is multithreaded given the right scenario of machine load. So yes, I understand the confusion there. As I said, simply looking at the pretty graphs in Task Manager tells you absolutely nothing.

So is Crysis quad optimized or not? Crytek says it is.
I wouldn't know, I'm not Crytek. However if they state they have optimized Crysis to be multithreaded, then I would tend to believe them.
 
Last edited: