Help us improve Answers HQ! Take Survey No, Thanks

Who Me Too'd this topic

Accepted Solution
Max CPU threads tweak for Core i7 and AMD FX's CPU's - Testing & Results.
[ Edited ]
★★★★★ Novice

Edit: Thanks for the people who tested, go to solution if you want technical details. To increase your max CPU threads and measure performance, follow this post below. There will likely be a sweet spot for most people, not too high or not too low thread count. your results are highly dependant on GPU being bottlenecked or not. NPC crowded areas in particular are most demanding on CPU and should show the most improvement. Note: this won't do anything for 4-core CPU's without HT or 4-core AMD's since both will use 3 threads by default and be unable to increase past that.

 

Original post (Edited slightly):

 

I found a way to increase the number of  "Job threads" the game will use. A friend of mine reported that it improved his performance a lot in NPC crowded areas. 

 

Instructions:

1. Create a file in the DA:I install directory named "user.cfg" (same folder dragonageinquisition.exe is located)

2. Add the following lines:

Render.DrawScreenInfo 1

Thread.MaxProcessorCount 6

3. Save file and start the game, you should see something similar to this https://i.imgur.com/KFnvAA4.png (taken pre-patch, reports 3 for me now post-patch)

4. Raise the Thread.MaxProcessorCount as high as you can before the game stops increasing job threads. You might want to lower to whatever sweet spot you find though after you're done. You can remove the Render.DrawScreenInfo line to remove the top information overlay after you've obtained necessary information. (Edit: max threads should be 7 for Intel 4-core with HT, and also 7 for AMD 8 "core" FX's, but 6 may be more optimal)

 

I have a 4-core i5 without HT so I can't seem to get the number to go past 3, but a friend of mine with a 6-core i7 with HT managed to get it up to a maximum of 10 Job threads. So, I'm thinking:

A: game will always leave one "physical" core free (in his case, this reserved 2 of his 12 CPU's)

or

B: game is limited to 10 max threads, while also attempting to leave at least one CPU free.

 

I'm particularly interested in people with 4-core i7's with HT (8 CPU's) because I'm thinking of upgrading, but it would also be interesting to see how high an 8-core (16 with HT) could go (or AMD 8+ core CPU's).

 

Also interesitng to note is the patch raised the default job threads (at least for me, from 2 to 3) which could explain why some people are reporting worse performance somehow, but in my experience this has increased performance.

 

Another tweak you can try if you want is adding this line to that file:

gametime.maxvariablefps 60

 

This tells the game to not render (or pre-render) past 60fps,  which seemed to reduce stutter a lot and even increase fps without even moving camera (this is not the 60fps cutscene hack, CS's will still be 30). I came to the conclusion that the game is issuing too many draw calls ahead of time, or pre-rendered frames, which causes CPU spikes and frame dips. "Perfoverlay.DrawGraph 1"  will add a CPU/GPU usage graph which I was using to investigate the poor performance. This also explains why some people report setting max pre-rendered frames to 1 improved their performance, unfortunately SLi users can't control this value. I have a feeling both the game and GPU drivers are pre-rendering frames or something which causes a bottleneck.

 

To show your current FPS, add this line:

perfoverlay.drawfps 1 

 

Please post results. To revert changes, delete/rename the user.cfg file.

 

Thanks.

 

(8,263 Views)
Who Me Too'd this topic