PDA

View Full Version : Half-Life 2 performance


ZoinKs!
21-Aug-2003, 23:29
Storm: We know the minimum suggested speed is 700 mhz, What are the recommended system requirements?

Gabe Newell: If you want everything turned on, running 32-bit 1280x1024? Hmm. I'd think you would run about 40 FPS with a 9700 Pro and a P-IV 2 GHz.

Given the scalability of many different parts of the system, you have to add a quality dimension and target frame rate. Source (http://www.city-17.net/index.php?view=267&section=interview&PHPSESSID=d9d70e71ffcb6f26a7610def2ce8bf24)

I figured some folks would be interested in seeing this. It's too bad he doesn't specify whether aa or af is used. The vids from e3 were from p4 2.8 ghz {see edit} with 9800pro-128, running at ~1300x700 no aa or af with 60fps. This gives us some hints of what to expect, but I'm hoping to soon see a demo and/or benchmark utility.

edit: changed cpu speed from 2.53 ghz to 2.8 ghz. See my big fat post further down for more up to date info.

tEd
22-Aug-2003, 01:43
no AA , noAF

Malo
22-Aug-2003, 16:31
wow that's good to hear. just ordered at 2.8ghz and 9800pro which means I'll be able to enjoy all the goodness with this game, maybe even with some FSAA.

since this is not really a twitch shooter, I'll be happy pulling 40fps...

991060
22-Aug-2003, 22:49
the performance should have been improved a lot comparing to the E3 demo. anyone knows exactly about the AA issue of HL2? can we have it now? both of nvidia and ati cards or just one of them?

Malo
22-Aug-2003, 23:20
apparently it's been solved for both parties. we'll see how performance pans out though as both have needed to make certain adjustments and restrictions

http://www.beyond3d.com/forum/viewtopic.php?t=7026

edit: spelling

ZoinKs!
23-Aug-2003, 00:37
I've heard aa on r3x0 won't be any more of a hit than the old aa system. The chips can be programmed to use different sample patterns, which is how the issue was fixed. Just using a different sample pattern shouldn't change aa performance. But since we don't know how the old aa system performed, this doesn't tell us what to expect w/ the new one.

I don't know how the fx aa issues were fixed. There was talk of using shaders to fix the issue.


edit: I should of followed Kalbaz's link, it's already discussed there...

Blade
23-Aug-2003, 14:26
Kind of vague there, Gabe. Nevertheless, I doubt that I'll have much trouble with HL2 once I upgrade this December. I'm looking to the next-gen cards, past the R9800-9900.. probably something from ATi considering how they've been doing.

parhelia
24-Aug-2003, 12:10
You won't get something past the 9900 if you decide to stick with ATI in December, unless you decide to open yourself and consider alternatives from other competitors

MistaPi
24-Aug-2003, 21:28
That's Doom3 performance with R9700Pro. :shock: Did not Valve state that the game would pull ~70FPS with a GF4Ti?
Since Half-Life 2 is probably quite fillrate limited MSAA should be fairly performance free?

ZoinKs!
25-Aug-2003, 01:37
It seems framerate depends a great deal on detail settings used. The fps Gabe mentioned is for full details. You'll probably be able to get 70fps on a 4ti if you lower details and resolution enough.

Also, Dave Baumann seems to think hl 2 will be shader limited, not fillrate limited. I'm guessing this might also depend on what detail settings are used.


You won't get something past the 9900 if you decide to stick with ATI in December, unless you decide to open yourself and consider alternatives from other competitors Hmmmmm... to what "other competitors" are you referring? :P

keegdsb
25-Aug-2003, 01:43
Hmmmmm... to what "other competitors" are you referring? :P
Maybe S3? DeltaChrome is scheduled for this winter, and of course there are others to consider as well. (PVR, XGI...)

BRiT
25-Aug-2003, 05:35
I so wish to own a new PVR card by X-Mas... 8)

parhelia
25-Aug-2003, 10:41
Hmmmmm... to what "other competitors" are you referring?

:wink:
I was thinking XGI primarily.
Though many will also say that one shouldn't forget NV either.

Maybe S3? DeltaChrome is scheduled for this winter

According to S3 themselves, DeltaChrome would compete with GeforceFX 5200 and at best the 5600...

I so wish to own a new PVR card by X-Mas

Sorry, it won't be available in stores this year.

I wouldn't hold my breath on Matrox either : according to my high ranked Matrox sources, the Parhelia 2 due in November is primarily an original Parhelia revamped, with minor corrections done to it, but nothing much.

MistaPi
25-Aug-2003, 11:47
Also, Dave Baumann seems to think hl 2 will be shader limited, not fillrate limited.

Is not that basically the same thing?

ZoinKs!
28-Aug-2003, 06:57
No, "shader limited" refers to how fast the gpu can run pixel and vertex shader programs. Fillrate refers more to how fast it can apply textures to the scene.

ZoinKs!
28-Aug-2003, 09:34
There's a huge thread (http://halflife2.homelan.com/forums/showthread.php?s=355738e5c18ee472fd137b22aae722ba&threadid=1298&perpage=15&pagenumber=1) at Halflife2.net (http://halflife2.homelan.com/) where people email valve with questions. I'm curious enough about hl2 to dig through it for info. I figured I may as well pluck out some q & a regarding performance and the engine and post it here.


*********UPDATED 9/2/2003 ***********

Q: Can you play the game in fullscreen or is the letterbox view not removable?

A: 4:3 or widescreen are aspect ratios you can select. I personally play in widescreen because my monitor is physically a widescreen monitor (1600 x 1024). Most people at Valve play with 4:3 aspect ratio because they have traditional CRT monitors with 4:3 as their physical aspect ratio. You could play normal on a widescreen monitor and vice versa - it will just look funny. On top of that you have whatever monitor scaling you are using if you have an LCD or plasma display.
I run hl2.exe -width 1600 -height 1024 with anisotropic filtering and 2X AA with a Radeon 9800 128 MB and a 3 Ghz P-IV with no monitor scaling. High rez, aa + af... :!:

Q: I took your advice and coaxed my parents into getting me an All In Wonder Radeon 9800 Pro for my B-Day... my current CPU (Athlon XP 1700+), isn't exactly in league with the rest of the pack...
I only ask this because of all the reviews I've read on the Radeon 9800 cards, the consensus ... is ... the performance is pretty CPU and system-bound...
Is this true for Half-Life 2 as well? I'd like to think I can play the game in all its glory with a decent fps without having to get a new motherboard and processor.

A: The 9800 Pro is a great card for DX9. You should be able to run just fine. Apparently it's worthwhile to put a r350 into a 1700+

Q: Two quick questions about the HL2 Benchmark
1. Will it be an accurate gauge as to how well the game will run on a given system?
2. Will the resolution be adjustable, or will it be fixed?

A: Yes, Yes.

***************End of update********


Q: Is a ATi 9800pro card really alot better for HL2 then Nvidia's FX5900? Or is the difference not that big (quality & fps wise)?
Articles like this worry me:
http://www.beyond3d.com/misc/traod_dx9perf/index.php?p=1

A: I have been a long-time NVIDIA card user. Currently I have ATI 9800 Pro's in both my work and home machines.

The DX9 performance described by the Beyond3D article is consistent with what we've been seeing.

Q: I have a P4 2.0 with 512 MB RAM and Radeon 9600 Pro... Is there any point of upgrading for HL-2 ? Will I have playable (30-40) framerates in 1024*768 max detail on that rig ?

A: Your system will be fine at 30-40 FPS at 1024x768. edit: added more of the question to clarify that that his 9600pro could run max detail at 10x7

Q: Will i get minimum 30fps, with a 512 ddr ram, amd athlon
xp2700+,GeForceFX5600

A: You should be right around 30 FPS if you run with fairly high detail levels.
To get 30 FPS with a 5600 you'll probably have to turn off high dynamic range lighting and character bump mapping (this will be done for you automatically or you can tweak it).

Q: I'm on an AMD XP 2000+ processor, Geforce 3 gfx card, 512 DDR RAM and WinXP...

A: Your machine will have a good framerate, but won't have DX9-specific visual features.

Q: I am torn between the two newest cards, the 9800 Pro and the FX 5900. So if you were me, which card would you go with, and if you want to elaborate on your answer that would be great!

A: 9800 Pro. It's faster and has better image quality.

Q: A lot of people seem to be arguing over what system the game was run on at E3...

A: Dell XPS, 2.8 GHz P-IV, ATI Radeon 9800 128 MB RAM. Anti-aliasing off, anisotropic filtering off. 60 FPS.

Q: The settings are at the max in Bink Videos, yes? I mean this is how it'll look with all the settings to the max?

A: There are a few more visual effects added after E3.

Q: What difference will I see on screen between DX8/8.1, and 9 systems?

A: DX9 will be faster as you can do more in a single pass. There will be a number (which increases over time) of DX9 features like high dynamic range lighting which only work on DX9 cards. The list is fairly plastic, as we will be adding new DX9 features, and as we figure out how to do something in DX8 that we initially didn't think we could get to work. Emphasis added in above quote. Add this to the next quote, and we see hl2 will be updated for a while...

"The way Source is designed, hardware manufacturers can update materials to take advantage of new hardware as it comes out by shipping updates (probably via Steam). So if they come out with a 512 MB card or double the number of instructions possible in a pixel or vertex shader, then customers who have that card can be updated to take advantage of that."


"i asked if half-life 2 would use front-to-back rendering, so polygon occlusion/HyperZ III on radeon cards would work to their fullest, as opposed to engines like morrowind which draw back-to-front, so there are oodles of overdraw. half-life 2 will be front-to-back, thankfully."

Q: Will the Source engine support view distorts such as fisheye lense and pinchusioning?

A: Yes, on dx8 and above cards, you will be able to do these effects as a mod author.

Q: We've all been hearing that Valve has been promoting the ATI Radeon 9800 card over Nvidia cards. I was curious if there was a reason behind this, like maybe ATI cards have some sort of advantage over Nvidia cards? Will HL2 even support Nvidia cards? If so, will Nvidia cards run slower with HL2 because the game is more optimized for ATI cards? We're all kind of wondering what these comments mean and what graphics cards will run the game effectively.


A: We work with all the graphics card manufacturers. ATI and NVIDIA have made the biggest investments in time and engineering to make sure Half-Life 2 and their hardware work well together. We are not trying to give an advantage to one company over another, as the people who play our games certainly wouldn't want us to do that.

With that said, Half-Life 2 appears to be the first game to really be pushing the capabilities of DX9-level hardware. At E3, we ran on ATI hardware because ATI's hardware did the best job. Since then both ATI and NVIDIA have worked diligently to improve performance and quality, not just because they think Half-Life 2 will be a title that will help sell DX9 hardware, but also because it is a good test case that will aid them in understanding the behavior of their hardware for future games.

As we get closer to shipping we will release Source based benchmarking tools that will let people analyze this themselves.

"Just got this reply from Brian Jacobson clearing up the issue of 128mb vs 256mb graphics cards:

The game will run fine on a 128 MB card. Most of the benefits of the 256 MB cards you'll see we expect will be more long-term, received via updates over Steam:

1) Something which happens immediately, we're able to store more data on the card instead of in AGP memory, which you might think would be a perf win, but so far, we're not finding ourselves to be AGP bus-bandwidth limited.

2) We expect to release a local-specular solution, perhaps at ship, perhaps over Steam at some point, which is a major texture memory consumer. In addition, we've made it easy for major HW vendors to write new shaders for us to take advantage of the extra memory.

3) A *lot* of memory is consumed by normal maps, since they can't be compressed well. We may ship uncompressed normal maps for the 256 MB cards if it turns out to be a big enough visual improvement. Future updates (not to mention mods) will contain high-end content that use ever-larger amounts of normal maps.

Q: My laptop is fairly high end as far as laptops go (2.0Ghz, 512 Ram) but it has a Mobility Radeon 9000 64MB vid card. Now this (in my opinion is a great video card especially for a laptop. Will the game run nicely on the system or will i have to suffer because i have a laptop?

A: A bunch of us have laptops we play on when we travel (or when we need to demo), so HL-2 will be laptop friendly.

Q: I'll have to ask if the water effects are DX9, ultra-next-gen (FX, Radeon 9800) card-only?

A: Water effects actually scale back reasonably well.

Q: Will Half-Life 2 have any special optimizations for 64-bit processors?

A: I would expect we would run about 30% faster clock for clock comparing an Athlon running 32-bit code and an Athlon 64 running 64-bit code. Release of the 64-bit client will be gated on MS releasing 64-bit Windows.

Q: Will Half-Life 2 support Hyper-Threaded CPU's?
In theory shouldn't it take alot of load of the system? Example, the first processor does all the physics, while the second does some other tasks, like AI, 3d Sound etc


A: Hyperthreaded CPUs attempt to extract thread-level parallelism, as opposed to traditional pipelined architectures which attempt to take advantage of instruction level parallelism. Hyperthreading can be somewhat unpredictable in terms of the performance impact, as you can, in some cases, run slower.

Implementing and maintaining a "deeply" multi-threaded version of Source would be a pain (i.e. multi-threading the renderer). Implementing a hacky version (e.g. having a discreet physics thread or running the client and server in different threads) is something we may do depending upon how much bandwidth we have before we ship. Right now we don't get nearly as much bang for the buck working on hyperthreading as we do on other optimizations. That may change as we run out of things to optimize.

64-bits, in contrast, is a one-time cost and is fairly simple to take advantage of. It's a huge win for tools as it not only gets more work done per instruction, but it also gets us past the current memory limitations, which are a problem for us today on tools.

Distributed computing is harder than hyperthreading but it has the potential to increase performance by a huge amount (8X on our tools) as opposed to hyperthreading (30%). All of our tools are going to a distributed approach.

So the taxonomy looks like this:

- general algorithmic optimization (general good thing to do)
- DX9 optimization (big gains, long term direction)
- 64-bits (not that hard, solves memory problem as well as performance gains)
- hyperthreading (hard initial cost, on-going code maintainence cost, limited unpredictable performance gains, benefits in multiprocessor environments as well)
- distributed computing (hardest to do, biggest potential gains, great for tools, may be great for servers, not sure how it works with clients) edit: Sounds like a win for Athlon64, assuming MS ships 64 bit Windows relatively soon.


Q: I am kinda involved in a short discussion about wether Half-Life² does or does not support dynamic shadows like DooM³.

A: Yes, we have dynamic shadows. We use a different approach than Doom3. edit: Apparently dynamic day/night effects are also possible, but not used in HL 2.

This last one isn't performance related but I'll toss it in anyways... Q: At the moment are you done with the major content of the game and just making some last minute finishing touches or is there still some way to go?

A: Finishing up. They're still on track for Sept. 30. :D



edits: formatting, moved a quote or two, additions where noted

Novdid
28-Aug-2003, 12:15
Looks very good indeed!!! My rig will run this game perfectly.

I'm very excited.

Luminescent
28-Aug-2003, 12:57
How do we know they're still on track for Sept. 30th. when do you believe the benchmark will be ready (early September, perhaps)?

ZoinKs!
28-Aug-2003, 13:02
"It'll be tight, but Half-Life 2 is still on for a September 30th ship."
Source (http://www.eurogamer.net/article.php?article_id=53027)

I don't know when the bench will be out. But I want it now :!:

MistaPi
28-Aug-2003, 19:39
No, "shader limited" refers to how fast the gpu can run pixel and vertex shader programs. Fillrate refers more to how fast it can apply textures to the scene.

Ok, but does not fillrate play a big role regarding pixel shading?

Here's a quote from DaveBaumann:
Actually, shader limited (in terms of pixel shaders) does actually mean fill-rate limited.

Good work digging up the interesting info from Halflife.net BTW.

jvd
28-Aug-2003, 22:05
well now . IT seems to me that futuremark was a good indicator of future dx 9 tittles.

Joe DeFuria
28-Aug-2003, 22:09
well now . IT seems to me that futuremark was a good indicator of future dx 9 tittles.

Key being was. :(

Luminescent
28-Aug-2003, 23:03
Just imagine how those servers will get hit when the benchmark comes out :shock:.

ZoinKs!
28-Aug-2003, 23:04
Ok, but does not fillrate play a big role regarding pixel shading?

Here's a quote from DaveBaumann:
Actually, shader limited (in terms of pixel shaders) does actually mean fill-rate limited. Hmmmm.... perhaps I'm wrong then. Wouldn't be the first time. :lol:
Hopefully, when the benchmark comes out, Beyond3d will give us a full analysis. (hint, hint :wink: )

Dave Baumann
28-Aug-2003, 23:23
You'll probably find that a number of sites will be able to give quite some analysis on this sooner or later...

gkar1
29-Aug-2003, 01:02
Just imagine how those servers will get hit when the benchmark comes out :shock:.

Bit torrent to the rescue :)

ZoinKs!
29-Aug-2003, 02:41
You'll probably find that a number of sites will be able to give quite some analysis on this sooner or later... If you can, could please you tell us how long before this happens? :?:

Dave H
30-Aug-2003, 07:17
Ok, but does not fillrate play a big role regarding pixel shading?

Here's a quote from DaveBaumann:
Actually, shader limited (in terms of pixel shaders) does actually mean fill-rate limited. Hmmmm.... perhaps I'm wrong then. Wouldn't be the first time. :lol:
Hopefully, when the benchmark comes out, Beyond3d will give us a full analysis. (hint, hint :wink: )

It's all a matter of semantics.

Generally when we say rendering is fillrate limited, we mean the limiting factor is the speed of per-pixel calculation on the GPU. Performance characteristics of being completely fillrate limited are that framerate is inversely proportional to resolution, and directly proportional to core clock. And generally, the other major options for the rendering bottleneck are to be platform (i.e. CPU/main memory) limited, AGP bus limited, geometry limited or (on-card) bandwidth limited.

When pixel shaders are the limiting factor, they match all those aspects of "fillrate limited" in the previous paragraph. (Well, if the pixel shader does a lot of texture reads you could be bandwidth limited, but the longer a shader gets, the more it tends to stress execution resources over bandwidth. Plus, anytime you're increasing the number of cycles per fragment you cut down on bandwidth per clock spent on z read/writes and color writes, so even a shader that's all texture samples might still leave you less bandwidth limited than with simple fixed-function rendering. In general, PS 2.0 shaders that are primarily about texture sampling are likely to be doable in DX8 or even DX7, and only using PS 2.0 because it offers better performance due to avoiding the need to multipass; DoomIII is a perfect (although OpenGL) example.)

Now, in the past "fillrate limited" definitely referred to fixed-function rendering...but then again in the past everything referred to fixed-function rendering. To determine whether we ought to distinguish between "fillrate limited" and "pixel shader limited", we have to determine how useful the distinction is in practice. In one very big sense I've noted above, there's no distinction at all: namely, that, just like traditional fillrate, pixel shader performance varies inversely with resolution and directly with core clocks. On the other hand, it won't do to say that e.g. the NV30/35 are lacking in "fillrate"--when it comes to traditional fillrate, and multitexturing texel fillrate in particular, they're absolute monsters.

Of course I've just hinted at a solution: we differentiate between different types of fillrate, just as we already differentiate between pixel and texel fillrate. Indeed, this was the general gist behind demalion's suggestion that we talk about "proxel" fillrate (for programmable element; a pixel shaded fragment). The problem with discussing such a measure is that, unlike fixed-function pixels and texels, "proxels" don't show uniform performance characteristics at all. Even if you take "proxel fillrate" to mean PS instruction throughput (as opposed to complete fragment throughput), you still have a big problem, because different architectures will handle different PS instructions and instruction mixes at different levels of performance.

Probably the best we can do is to just list the pipeline organizations of the various chips and be done with it. E.g. R3x0 has 8 pipes; each can do a texture sample, a texture coordinate calculation, and (for most math instructions) either two scalar calculations, one scalar and one vec3, or one vec4 calculation in a single clock cycle, assuming all the instructions are independent. RV350 is the same but with 4 pipes. Nv30/35 has 4 pipes; each can do either two texture coordinate calcs and texture samples or (for most math instructions) one FP32 or FP16 scalar, vec3 or vec4 calculation plus (on NV30) two FX12 register combiner operations (essentially PS <= 1.3) per clock or (on NV35)...um, something like NV30's register combiners except somehow they do at least some PS 2.0 instructions in at least FP16, probably. To my knowledge, no one has publicly figured out exactly how NV31 and NV34 are organized, except that NV31 has 4 pipes with 1 texture sampler apiece, and NV34 is similar except that 2 of the 4 pipes aren't capable of loopback and thus in any interesting situation it behaves as if it has 2 pipes with 2 texture samplers apiece. Oh, and BTW all NV3x have huge pixel shader performance issues once you start to keep more than 2 FP32 or 4 FP16 temp variables in registers at any given time.

Um, so as you can see, the strategy of describing the actual pixel processing resources of each chip can get complicated rather quickly (and is only likely to become much more so in the future). The end result is that it's probably most useful to term the state where the pixel shaders are the bottleneck as "fillrate limited"; but unlike with fixed-function pixel/texel fillrates, it's pretty useless to start putting numbers on a GPU's theoretical fillrate when running pixel shaders, unless you're happy having a completely different number for each shader.

embargiel
30-Aug-2003, 18:02
Hope this helps:

http://www.planetdescent.com/lyris/hl2_mpc.html

This article shows how each generation of GPU being supported by Half Life 2 (DX6 - DX9) fares on running it. It seems that the difference between the DX8 and the DX9 built of it is quite subtle or is it?.

digitalwanderer
30-Aug-2003, 18:51
Hope this helps:

http://www.planetdescent.com/lyris/hl2_mpc.html

This article shows how each generation of GPU being supported by Half Life 2 (DX6 - DX9) fares on running it. It seems that the difference between the DX8 and the DX9 built of it is quite subtle or is it?.
Good link, thank you!

Bjorn
01-Sep-2003, 06:30
Hope this helps:

http://www.planetdescent.com/lyris/hl2_mpc.html

This article shows how each generation of GPU being supported by Half Life 2 (DX6 - DX9) fares on running it. It seems that the difference between the DX8 and the DX9 built of it is quite subtle or is it?.

I think they need to change Radeon 9x00 to Radeon 9500+ for the DX9 cards (Ati's naming scheme in action).

Pete
02-Sep-2003, 00:17
No, they paraphrased a bit too much. The actual MaxPC article (which this page is a copy of) lists the FX 5200, 5600, 5800, & 5900 and R9500, 9600, 9700, & 9800 as DX9 cards.

ZoinKs!
02-Sep-2003, 10:41
Just a bump to let people know I added a few more questions to the big phat post on page 1. Most interesting tidbit is about running 2x aa + af at 1600x1024 with 9800pro-128 and p4 3 ghz.

This'll probably be the last update from the hl2.net thread. The mods at hl2.net said they'd be deleting any posts about performance w/ specific systems. They figure there's enough info already available. :?

Oh well, hopefully the benchmark will be out soon.