Did some more arsing about here, but on a couple of slower systems this time (which should be a bit more relevant to this thread):
First system, a 2005'ish CPU/mobo/memory combination:
Code: Select all
System Information
------------------
Operating System: Microsoft(R) Windows(R) XP Professional x64 Edition (5.2.3790)
Architecture: 64-bit
Language: English (United Kingdom)
Motherboard: Abit AN8 SLI Series NF-CK804
Processor: AMD Athlon 64 X2 4400+ Dual Core Processor @ 2.20GHz
Memory: 4.00 GB
DIMM Modules: DIMM0: 1.00 GB @ 333 MHz
DIMM1: 1.00 GB @ 333 MHz
DIMM2: 1.00 GB @ 333 MHz
DIMM3: 1.00 GB @ 333 MHz
Page File: -260100096.00 B
.NET Framework: 4.0
Display Information
-------------------
Display Device(s): Dell P1110 on NVIDIA GeForce 7800 GT
Display Mode(s): 1280 x 1024 (32 bit) @ 85 Hz
Driver Version: 6.14.13.0623 (306.23)
Display Memory: 256.00 MB
Multisampling: 2, 4
DPI: 96 (100%)
Audio Information
-----------------
Primary Playback: (none)
Second system, a 2008'ish CPU/mobo/memory combo:
Code: Select all
System Information
------------------
Operating System: Microsoft(R) Windows(R) XP Professional x64 Edition (5.2.3790)
Language: English (United Kingdom)
Motherboard: BIOSTAR Group GF7050V-M7
Processor: Intel(R) Core(TM)2 Quad CPU Q8200 @ 2.33GHz (Physical: 4, Logical: 4)
Memory: 4.00 GB
DIMM Modules: A0: 2.00 GB @ 800 MHz
A2: 2.00 GB @ 800 MHz
Page File: -261062656.00 B
.NET Framework: 4.0
Display Information
-------------------
Display Device(s): Dell P1110 on NVIDIA GeForce 7800 GT
Display Mode(s): 1280 x 1024 (32 bit) @ 85 Hz
Driver Version: 6.14.13.0623 (306.23)
Display Memory: 256.00 MB
Multisampling: 2, 4
DPI: 96 (100%)
Audio Information
-----------------
Primary Playback: (none)
Both systems had audio disabled, ran without virtual memory configured, shared the same HDD hosting the same PR 0981/1036 content files, and had fresh installs of XP SP3 64-bit installed and configured.
First up, I wanted to test load times. I was sure that, since the PR v1.0 release, load times were much longer than previously. I've since wanted to confirm this to be sure by comparing against PR 0981:
//--- Initial Load Times (offline profile) ...
Code: Select all
sys pr load notes
4400+ 0981 0:30
4400+ 0981 0:30
4400+ 0981 0:30
4400+ 0981 0:31
4400+ 0981 0:30
4400+ 1036 1:26
4400+ 1036 1:27
4400+ 1036 1:26
4400+ 1036 1:28
4400+ 1036 1:31
First, results from the AMD X2 4400+ machine. Note that I used offline accounts during these tests, which disables file data verification and gamespy login stages that would otherwise occur if using an online account, slowing the process a little more. I don't think 0981 does file verification at start up (though I didn't check closely), so this should help to balance the difference between versions in that respect.
What's clear to see is that 0981 gets in there way faster than 1036 - 3x faster, in fact.
...
Code: Select all
sys pr load notes
Q8200 0981 0:25
Q8200 0981 ?
Q8200 0981 ?
Q8200 0981 ?
Q8200 1036 0:50
Q8200 1036 0:51
Q8200 1036 0:51
Q8200 1036 0:51
Q8200 1036 0:52 zero-compression zips
Q8200 1036 0:51 zero-compression zips
Same tests, but with the Intel Core 2 Quad Q8200 system. Similarly longer load times for PR 1036, though not so significant now, with 1036 being only twice as slow here. Seems I forgot to run more than one 0981 load time test here, or didn't log them down, so there's only a single 0981 showing. It should be representative though, likely repeatable...
So, given that these systems are running on the same HDD, same PR data files, same OS, same GPU/driver, why the difference in scaling between the two? It seems as though this is occurring as a consequence of differences in system processing power. But then, what's being calculated here, or more specifically, what's being calculated here that differs between the PR versions? There's a very significant difference in load times that seems to magnify as available processing power reduces - the 2005 system is like 3:1 difference, 2008 system around 2:1, and my 2012 system (not shown here) around 1.5:1 or less.
Included in those Q8200 results are a couple of "zero-compression zips" tests there for PR 1036. I'll get into this more later on, but they are load time tests after having decompressed the PR 1036 main game content zips before re-packing them as zips, but with zero compression. This was done to see if the longer PR 1036 load times were being caused by some issue with decompressing game content, possibly reliant on CPU processing power. However, as can be seen here, there was no apparent difference to the PR 1036 load time after doing this, so I think that that theory can be ruled out.
...
Load time/FPS tests...
First up, 'all-high' tests, where graphics settings are cranked up to full. The //---*,*,*,*... numbers shown represent the respective value configured in the profile folder "Video.con" files for each setting. They represent, in order:
Code: Select all
TerrainQuality
GeometryQuality
LightingQuality
DynamicLightingQuality
DynamicShadowsQuality
EffectsQuality
TextureQuality
TextureFilteringQuality
Resolution
Antialiasing
ViewDistanceScale
Key for the column header: sys = system on test; ver = map version; pr = pr version; load = time taken for the map load progress indicator to move from 0% to 100%; "corner x1" = location of test + number of graphics cards in use; gpu = gpu load as measured in gpu-z/nvidia inspector application.
First, Fallujah West map, same test location as used in some earlier posts here:
//--- 3,3,3,3,3,3,3,3,1280x1024,4,1.00 ...
Code: Select all
sys map ver pr load corner x1 gpu notes
4400+ fallujah_west 0981 0981 2:24 25 52
4400+ fallujah_west 0981 1036 3:38 23 47
4400+ fallujah_west 1036 1036 3:31 22 49
Q8200 fallujah_west 0981 0981 1:48 38 73
Q8200 fallujah_west 0981 1036 2:23 30 60
Q8200 fallujah_west 1036 1036 2:24 31 58
Q8200 fallujah_west 1036 1036 2:33 30 58 zero-compression zips
For the 4400+ system, we see map load time was significantly higher in PR 1036 - over a minute longer - though with only relatively minor differences in in-game frame rates between the two versions - 3 fps in all.
Similar results for the Q8200 system, though load time difference has been reduced to around 35 seconds. In-game frame rates are showing a fair difference here though, with PR 1036 producing around 8 fps less, even when running the same 0981 version map. One could attribute this to higher graphical demands in PR 1036, though the GPU utilisation numbers don't really show that as they show a decrease, not increase, so it seems more like PR 1036 having a higher CPU demand in general here instead causing frame rates to drop.
...
Next up: Ramiel map. Also used in earlier tests here, is a pretty heavy location in the city with a bunch of of black smoke clouds in view (
screenshot):
//--- 3,3,3,3,3,3,3,3,1280x1024,4,1.00 ...
Code: Select all
sys map ver pr load hescowire gpu notes
4400+ ramiel 0981 0981 2:17 26 58
4400+ ramiel 0981 1036 4:34 19 99 gpu limited
Q8200 ramiel 0981 0981 1:48 36 76
Q8200 ramiel 0981 1036 2:52 21 99 gpu limited
Big load time differences between versions as usual. Significant differences in frame rates showing, especially on the Q8200 system, but we're running into problems here as the 1036 tests are pegging the GPU @ 99%, so we're not getting true readings. No doubt it's the black smoke clouds causing that, aside from the fact the 7800GT card is laughably weak by today's standards, so we're going to have to reduce load on it by bringing graphics settings down to eliminate the bottleneck...
...
Knocking anti-aliasing off here to reduce the GPU load:
//--- 3,3,3,3,3,3,3,3,1280x1024,Off,1.00 ...
Code: Select all
sys map ver pr load hescowire gpu notes
4400+ ramiel 0981 0981 2:18 28 46
4400+ ramiel 0981 1036 4:36 21 99 gpu limited
Q8200 ramiel 0981 0981 1:48 44 69
Q8200 ramiel 0981 1036 2:47 23 99 gpu limited
Frame rates are climbing, but not by much, and still hitting the GPU limit here, so... more load reduction needed... :/
...
Dropping to 800x600 resolution...
//--- 3,3,3,3,3,3,3,3,800x600,Off,1.00 ...
Code: Select all
sys map ver pr load hescowire gpu notes
4400+ ramiel 0981 0981 2:15 28 41
4400+ ramiel 0981 1036 4:14 23 58
Q8200 ramiel 0981 0981 1:44 44 62
Q8200 ramiel 0981 1036 2:47 34 82
OK, now we got it. So, having overcome the GPU limitation, we see fps differences in a truer light; 5 fps difference for the old 2005 system, 10 fps on the newer 2008 system. The black smoke clouds in PR 1036 seem to be GPU heavy more than anything, if not all GPU load. I guess anyone running into nasty fps drops when in the vicinity of these clouds would do well to check their GPU load to make sure it's not rammed, as if it is, then you should know where the bottleneck lies. Dropping anti-aliasing, effects quality, resolution, would be the things to change to reduce this.
But still, significant differences in fps between versions, though GPU utilisation is now below maximum capability. It still feels like there's an increase in CPU load in 1036. Maybe the smoke clouds place an increased load on the CPU, too? We can disable them completely later to test for that.
...
Time to run some all "Low" graphics profile tests, which should hopefully help iron out some of the differences between the PR versions:
//--- 2,2,2,1,1,1,1,1,1280x1024,Off,1.00 ...
Code: Select all
sys map ver pr load hescowire gpu notes
4400+ ramiel 0981 0981 2:01 33 42
4400+ ramiel 0981 1036 3:47 27 40
Q8200 ramiel 0981 0981 1:28 54 65
Q8200 ramiel 0981 1036 2:34 39 66
Still big load time differences. Frame rate differences are still significant, too, especially on the Q8200 system. Interestingly though, GPU utilisation looks around the same for both systems, and both PR versions here, though with apparent differences in FPS.
...
Above settings are equivalent to setting the "Low" profile option in PRLauncher. The following settings are equivalent to going further than that by manually setting DynamicLightingQuality and DynamicShadowsQuality to "Off" - the lowest graphics settings possible:
//--- 2,2,2,0,0,1,1,1,1280x1024,Off,1.00 ...
Code: Select all
sys map ver pr load hescowire gpu notes
4400+ ramiel 0981 0981 1:55 31 35
4400+ ramiel 0981 1036 3:47 27 40
Q8200 ramiel 0981 0981 1:24 57 65
Q8200 ramiel 0981 1036 2:29 42 62
Pretty odd results really. The 4400+ system actually shows less fps for the PR 0981 test, and exactly equal for PR 1036, compared to having shadows/lighting enabled, though 0981 load time reduced. Not sure why...
Only relativly minor increases in fps for the Q8200 system, with a slight reduction in GPU load.
...
OK, reducing things down to minimal now, time to test with fire/smoke disabled. Eliminating it - along with the lowest possible graphics settings - should hopefully bring the version differences a lot closer.
//--- 2,2,2,0,0,1,1,1,1280x1024,Off,1.00, fire/smoke removed ...
Code: Select all
sys map ver pr load hescowire gpu notes
4400+ ramiel 0981 0981 1:55 39 45
4400+ ramiel 0981 1036 3:38 35 39
4400+ ramiel 0981 1036 3:38 35 40 "prbf2.exe" added to driver profile
So, not a massive difference in fps between the versions there, at only 4 fps, but still, there's that extra load somewhere in PR 1036, possibly CPU, bringing things down.
For the third test I specifically added "PRBF2.exe" to the Nvidia driver profile for the "BF2" game to test for whether the driver software is effecting changes in PR 0981 due it detecting a "BF2.exe" file and consequently applying special optimisations to it, which won't occur automatically for PR 1036 with its main game executable now being named "PRBF2.exe". As can be seen though, no practical difference was noted. On an SLI system, on the other hand, doing this could make a big difference (as mentioned here in earlier posts re: AFR2 config).
Q8200 system...
Code: Select all
sys map ver pr load hescowire gpu notes
Q8200 ramiel 0981 0981 1:25 62 68
Q8200 ramiel 0981 1036 2:25 49 55
Q8200 ramiel 0981 1036 2:28 49 53 "prbf2.exe" added to driver profile
Frame rate differences getting more pronounced again with the stronger setup. Again, it acts as though general CPU load is higher in 1036 causing an overall fps/gpu drop, with "PRBF2.exe" added to driver profile again making no practical difference.
Some additional tests...
Code: Select all
sys map ver pr load hescowire gpu notes
Q8200 ramiel 0981 1036 2:28 50 53 no prl
Q8200 ramiel 0981 1036 2:37 50 54 zero-compression zips
Q8200 ramiel 0981 1036 2:36 50 54 zero-compression zips
For the first test I ran PR with PRLauncher out of the loop. Results show there was virtually no difference with it disabled, maybe a 1 fps increase at best, with equal loading times, so I think PRLauncher being a cause of apparent performance differences here can be ruled out.
The next two, "zero-compression zips" tests, were two simultaneous runs for testing for differences in load times after having decompressed the main game content zip files, then repacked to zip without compression. Funny thing is, load times actually increased after doing this, even after having fully defragged the HDD. One thought is that the system bottleneck at loading time could be more HDD/controller limited, than CPU-decompression-speed limited, so bigger data (uncompressed) take longer to load in than compressed data + decompression time. Who knows...
...
Enough of this misery...