Sign in to follow this  
kakusso

How to improve frame-rates without changing your settings

Recommended Posts

PD3 and FSX put a heavy load on the first logical core assigned to the sim, most often the first core reaches 100% utilization creating a bottleneck that affects frame-rates, even though the CPU as a whole might be running at less than 50%. 

You can improve your frame-rates by reassigning any addons that run outside P3D from logical core one.

 

On JFK airport I gained 10FPS.

 

Below is a batch file that will remove Active Sky Next and Ultimate traffic 2 from core 1.

For it to work you have to first remove the UT2Services.exe from the exe.xml. (Important).

Assuming that P3D and ASN are on the D drive, the contents of the batch file are the following:

 

cmd.exe /c start "ASNext" /affinity 28 "D:\Program Files (x86)\HiFi\ASNext_P3D\ASNext.exe"
D:
cd\Program Files (x86)\Lockheed Martin\Prepar3D v3\
start Prepar3D.exe
cmd.exe /c start "UT2Services" /affinity 28 "D:\Program Files (x86)\Lockheed Martin\Prepar3D v3\Flight One Software\Ultimate Traffic 2\UT2Services.exe"
 

 

Save it in a notepad with the .bat extension.

Run it as administrator otherwise the affinity will not be set.

To run it as administrator by default, you can create a shortcut. Right click the shortcut, select properties, on the shortcut tab select advanced and click run as administrator.

 

You can also check the affinity of the addons in the task manager to verify that they are not on the first core.

Your sim will run as light as if you had no addons.

Share this post


Link to post
Help AVSIM continue to serve you!
Please donate today!

 

 


You can also check the affinity of the addons in the task manager to verify that they are not on the first core.

Your sim will run as light as if you had no addons.

 

Affinity 28 would be for the "HT On" people only, right?

Any reason you chose 28 in particular?

 

gb.

Share this post


Link to post

Affinity 28 would be for the "HT On" people only, right?

Any reason you chose 28 in particular?

 

gb.

Yes 28 is for HT on.

just use any number that doesn't use core one or the first core you have assigned with a custom Affinity Mask. 

Use the windows calculator in programming mode ad check the binary associated with the number you test. Remember that the first core is on the right in the binary representation. It has to be red from the right to the left.

Share this post


Link to post

Yes 28 is for HT on.

just use any number that doesn't use core one or the first core you have assigned with a custom Affinity Mask. 

Use the windows calculator in programming mode ad check the binary associated with the number you test. Remember that the first core is on the right in the binary representation. It has to be red from the right to the left.

 

Thanks.

Have you read through this very long thread?

http://www.avsim.com/topic/477057-a-frame-time-analysis-of-p3d-v3-effects-of-cpu-affinity-frame-lock-and-ht/

Near the end there is a fair bit of discussion about affinity and add-ons.

 

gb.

Share this post


Link to post

I don't know if it is just my 6700K but I also see that P3D uses core 0 at almost 100% after starting up. To resolve this, I go into task manager and set P3D to use just cores 2 and 3 for about 5 or 10 seconds and switch back to all cores and from there on out all my CPU cores are well balanced, no more hogging of core 0.

 

Bruce

Share this post


Link to post

I don't know if it is just my 6700K but I also see that P3D uses core 0 at almost 100% after starting up. To resolve this, I go into task manager and set P3D to use just cores 2 and 3 for about 5 or 10 seconds and switch back to all cores and from there on out all my CPU cores are well balanced, no more hogging of core 0.

 

Bruce

 

And is there any improvement in performance or smoothness after doing that?

 

gb.

Share this post


Link to post

You can improve your frame-rates by reassigning any addons that run outside P3D from logical core one.

 

You can achieve the same by using SimStarter, that's what I do for UT2 etc. It allows to set core usage for any addon started in parallel with Prepar3d. Of course you have to remove it from the exe.xml as well,as you write.

 

You have to run SimStarter as Administrator to use this function.

 

Kind regards, Michael

Share this post


Link to post

So a question if i were to use the above batch file.

Im running 4 cores. So do i put the Affinity Mask 14 in my config file?

And what would i set the number to for AS and UT in the batch file?

 

Regards

Mike

Share this post


Link to post

You can achieve the same by using SimStarter, that's what I do for UT2 etc. It allows to set core usage for any addon started in parallel with Prepar3d. Of course you have to remove it from the exe.xml as well,as you write.

 

You have to run SimStarter as Administrator to use this function.

 

Kind regards, Michael

Yes but Simstarter is too intrusive to P3D. If you start P3D as a stand alone it will no longuer go to the scenario screen but will load the last used flight in Simstarter.

 

So a question if i were to use the above batch file.

Im running 4 cores. So do i put the Affinity Mask 14 in my config file?

And what would i set the number to for AS and UT in the batch file?

 

Regards

Mike

You use the file to start P3D and your addons.

You need to put an Affinity mask for each addon it has to be different than the affinity mask you are using for P3D.

14 is ok if you have HT off and P3D is running on the first core.

Share this post


Link to post

SimStarter NG gives you an option to go to the scenario screen or not (under Main Settings/Simulator Welcome Screen) for any Profile. Besides, you can of course choose the settings you would select via the scenario screen using SimStarter NG in advance.

 

Kind regards, Michael

Share this post


Link to post

you can also user powershell commands in the batch file to assign cores to processes after they have started.

 

eg, for my hex core: Powershell "$Process = Get - Process ezca; $Process-Affinity=62"

 

I move many processes off core 0 this way as part of the load up process for P3D. This was also the only way I could get AS16 to change affinity - the start affinity command didn't work for me there.

Share this post


Link to post

Thank you so much for that suggestion.

 

I suggest, the following batch for a 4core i5 processor should be ok?
 

cmd.exe /c start "AS16" /affinity 14 "C:\Program Files (x86)\HiFi\AS16_P3D\AS16.exe"
C:
cd\Prepar3D\
start Prepar3D.exe
cmd.exe /c start "EZCA" /affinity 14 "C:\Program Files (x86)\EZCA\EZCA.exe"
cmd.exe /c start "couatl" /affinity 14 "C:\Prepar3D\fsdreamteam\couatl\couatl.exe"
cmd.exe /c start "TrackIR" /affinity 14 "C:\Program Files (x86)\NaturalPoint\TrackIR5\TrackIR5.exe"

Share this post


Link to post

you can also user powershell commands in the batch file to assign cores to processes after they have started.

 

eg, for my hex core: Powershell "$Process = Get - Process ezca; $Process-Affinity=62"

 

I move many processes off core 0 this way as part of the load up process for P3D. This was also the only way I could get AS16 to change affinity - the start affinity command didn't work for me there.

For AS16 or any program that asks for administrator privileges the start affinity has to bee running in administrator mode or it will not work.

Share this post


Link to post

I use Process Lasso and had removed all addons (and some Windows processes) from core 0.  I ready this weekend a post from SteveW stating that you should go further and remove these processes from Cores 0 and 1 which I have now done and I think I am getting pretty good results.  Need some more testing.

Share this post


Link to post

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
Sign in to follow this