Joined: 21 Mar 2015
|Posted: Thu Apr 20, 2017 4:42 am Post subject: Game performance - sharing some info
I found something about the game, maybe someone might find if useful so I decided to write a post about it.
I'm using Tuurngait's "complete patch" and this is my computer:
AMD APU A8-6600k
AMD HD 7750 gfx card
I was getting around 80 FPS when driving alone and around 65 when there was a lot of opponents around me (measured with fraps). I remember running the game (as a kid) at playable FPS (low resolution, though) on a Celeron 300 mhz, 256mb pc66 and ATI 3D rage pro with 8mb of vram, so 80 FPS on a computer XX times more powerful than that sounds a bit low, indeed, but since it's still high enough not to cause issues I didn't worry too much about it. Not until I accidentally discovered something.
If I understand things correctly, windows normally uses a combination of system timers - TSC and some other ACPI derived timer, or TSC and HPET (if HPET is enabled in bios).
If you force HPET only, you will get a large FPS increase in NFS PU. Now I'm getting around 280-320 FPS. My monitor only goes to 75 Hz (60hz stock refresh rate) so there is not really a visual benefit for me but reduced input lag is always a good thing to have.
How to force HPET only? First you have to enable it in BIOS (if it wasn't enabled already) and then use the following command in command prompt (run as admin):
bcdedit /set useplatformclock true
Then you must restart the computer.
You can use WinTimerTester (small free program) before and after to see if the change applied, it should report QueryPerformanceFrequency of 3.xx or 4.xx MHz before the change (depending on which combination of timers your system was using) and 14.xx MHz after forcing HPET-only.
If you want to revert everything back to how it was, change the HPET setting in BIOS back to disabled (if it was disabled, that is. If it wasn't, then leave it as it is) and run the following command in cmd:
bcdedit /deletevalue useplatformclock
Again, restart computer for the change to take effect.
After forcing HPET only, the game started crashing to desktop on those notorious spots - Alps and Zone ind. BKW (not every time and only with some cars). Normandy near the start is also one of known problematic spots but I didn't have problems with it.
I knew about those crash-prone spots but didn't have problems with them prior to forcing HPET.
I solved the problem by doing the fix i found posted by [SK]FR2 on some other forum. It consists of replacing the sky of those tracks with those of crash-free tracks. I used pyrenees skybox for alps and Monaco for Zone ind. (path: GameData/Track/Sky - replace bin, fsh and txt files by copying and renaming them, save originals in a backup folder)
No problems afterwards.
(prior to replacing skyboxes I tried forcing "heavier" graphics in game's profile in AMD control panel [more AA] to reduce FPS to see if it will make a difference, it didn't).
Forcing HPET didn't make a difference in newer games (though I only tried 2 other games since then to be honest), nor is any other program behaving differently. Benchmarks give the same results, too (except for Cinebench 11.5 - in OpenGL test I was getting 60FPS, after forcing HPET I get 56. Cough, cough...)
TL;DR: if you have a powerful computer but are only getting two-digit FPS in NFS-PU (and it bugs you), you can force HPET-only to get 300+ FPS (what will you use them for is up to you, though) but it might require some troubleshooting (described above).
One another thing about the game (completely unrelated to above) I found but never saw mentioned anywhere is that for 911 930 (both 3.0 and 3.3) high performance exhaust gives 0 HP - the part has an error. Use medium performance exhaust instead, you will go faster. I discovered it while tweaking parts in CarPartsEditor (I have 2 installations of the game, one normal and one for funny editing)
After that I went through other parts to see if there are more bugs of this type but this seems to be the only one.