[Mid to High-End PC] Performance Tweaks: List that improved overall FPS & gave more visual clarity

I want to share all my findings that improved my FPS in Path of Exile 2.

Edit/Update:
This is mostly focussed on midrange to high-end PC configurations.
I hope that it is somewhat readable and not too overwhelming.

0.3c contained some changes to dynamic culling, but i still suspect this feature is mainly meant for consoles or the steam deck.


Here we go:

-- System Settings - Graphics --

Press Windows-Key + R to open the Run Dialog

copy paste ms-settings:display-advancedgraphics and hit enter

(Enable Hardware Acceleration)

Under "Graphics performance preference" click Browse

-> Locate the Path of Exile 2.exe and add it

Click "Options" on the new entry for PoE. then select "High Performance", which will most likely also include the name of your GPU

-- Power Options --

Press Windows-Key + R to open the Run Dialog

copy paste powercfg.cpl and hit enter

Select "High Performance"

ONLY IF your CPU happens to get extremely hot afterwards, it has been suggested to change the maximum processor state from 100% to 99%

-> Change plan Settings
-> Click "Change advanced power settings"

in the new window expand "Processor power management"

Change Maximum processor state from 100% -> 99%

*note* if you set your power profile to always be on "high performance" your PC might draw a bit more power. There are also tools to automate changing profiles.




-- Activate Resizeable BAR [only for newer PCs (2020+)] --

Intel 10th gen and above as well as AMD Zen 3 (5000) should support Resizeable BAR.

GPU Nvidia RTX 3000-series and above, AMD 6000 and above

You may need to go into your bios and activate the feature.

Bios
"
Make sure that Above 4G memory/Crypto Currency mining option in BIOS is also enabled. That helped in my case.


AMD: Open the AMD Software, click "Performance" -> "Tuning" -> Enable "Resizeable BAR" [in the Pro-version its called "AMD Smart Access Memory"]

Nvidia: Needs to use the Nvidia Inspector - please use at your own risk, it is not an official Nvidia tool, but widely used. This is the repo of the maintainer: https://github.com/Orbmu2k/nvidiaProfileInspector

Open Nvidia Inspector - scroll down to "5 - Common"

set rBAR - Feature to enabled

set rBAR - Options to 0x00000001

ser rBAR - Size Limit to 0x0000000040000000

If you enabled Resizeable BAR in your bios and it is not shown in nvidia inspector (although you have an RTX3000-series/above card, you might have to scroll down to "unknown" where you can find the options.

[here you can also set your Shadercache - Cachesize to 100gb like players have been recommending on the forum, this also allows to set maximum pre-rendered frames]


-- Launch option - Exclusive Fullscreen --


Steam:

Rightclick Path of Exile 2 in your Steam Library -> Properties... -> copy+paste it under General-> Launch Options

-window-mode exclusive -screen-fullscreen

For Standalone:

Right-click PathOfExile_x64.exe ->Click "Create Shortcut".

Right-click the shortcut -> "Properties".

In the "Target"-field, add the launch option after the path

like this:
"C:\Program Files (x86)\Grinding Gear Games\Path of Exile\PathOfExile_x64.exe" -window-mode exclusive -screen-fullscreen

This even seems to work with “Windowed Fullscreen” -> My CPU latency improved a lot.

With this launch option, you ensure the game runs in exclusive fullscreen – this can especially help if you have hardware‑accelerated apps open on a second monitor.


-- Logs --

PoE 2 tracks every single chat message in a single text file. This can get unnecessarily large, which could cause issues depending on the kind of drive you are using. Especially older HDD drives could struggle - Drive latency is shown in the Perfrormance Graph (F1) but should generally not cause any issues on an SSD.

The workaround that has been shared involves joining "unpopular chats", for instance:

/join global 12345

/join trade 54321

Launch PoE2, enter with your chatacter

join unpopular chats with /join global [5-digit-number] and /join trade [5-digit-number]

type /clear

exit game

[Maximum seems to be 64000, so stay below]

Next we need to either delete or rename the "logs" folder. (I name mine logs.old1, logs.old2... on every big update)

steamapps\common\Path of Exile 2\steamapps\common\Path of Exile 2\logs
(rightclick PoE2 -> manage -> browse local files)

standalone => wherever you installed it

-- Shader Cache - Currently automatically clears on every launch -
"

Now we delete the shader cache. [This folder (like the logs) can grow too large over time. Cleaning it up keeps things smoother and avoids unnecessary bloat. Keep in mind: when you delete them, the shaders have to be rebuilt on the next launch. That means the very first start and first map load afterwards can feel a bit stuttery until everything is recompiled.]

Press Windows-Key + R to open the Run Dialog, then type %appdata% and hit enter. This will open your explorer with "C:\Users\YOUR-USERNAME\AppData\Roaming\", then locate the Path of Exile 2 folder and delete it.

Win+R

type %appdata%

scroll to Path of Exile 2 -> rightclick -> delete


-- Linux --

From the PoE forum by "Sadaukar":

For Linux users add one of the following environmental variables to wine or steam:

Unlimited Shader Cache Size:

__GL_SHADER_DISK_CACHE_SKIP_CLEANUP=1

Specific Shader Cache Size:

__GL_SHADER_DISK_CACHE_SIZE

(u need to specify the size aswell, like 10737418240 for 10GB)

-- More NVIDIA-specific section --

Control Panel -> Manage 3D Settings -> Shader Cache Size -> set 10–100 GB instead of "default"

Additonal Driver Setting

Make sure that "Pre Rendered Frames" in the Nvidia Control Panel is set to either be controlled by the application, or select the Path of Exile executeable and set "Pre Rendered Frames" to 3.

Setting it to 3 would basically be tripple buffering, ensured by the driver. If you do not like it, try 2, but i dont think anyone can notice the difference - also this is an ARPG and not a competitive shooter.

I suspect that some shooter-players have it set to 1, which is quite common to reduce input delay, but since that usually overrides the application setting - it could hurt overall performance in this case. At least take a look at it.

I do not own an Nvidia GPU so i cannot test this. But i have seen some people playing around with Nvidia Inspector - their profile for Path of Exile was always showing "Maximum Pre Rendered Frames: 1" This is basically the driver overriding the applications Tripple Buffering. We do not want that, tripple buffering is very useful for frame stability.

If it is set to 1 and you experience stutters, consider changing it to 3.

-- AMD - Section --

Disable Radeon Anti-Lag
(Amd Software -> "Gaming" -> Toggle "Radeon Anti-Lag" off)
This is basically the AMD-equivalent of having pre-rendered frames set to 1.

I cannot stress enough how important it is to get rid of this, if you have set it in the past.

If i activate "anti-lag" for fun, i lose around 20 FPS.

Again, this is basically the same as setting pre-rendered frames to 1 in the nvidia driver


For AMD additional settings can be accessed via the registry.

HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Class\{4d36e968-e325-11ce-bfc1-08002be10318}\0000\UMD

most entries are 30 = off, 31 = AMD Optimized, 32 = On






- Last thing, only try if nothing else worked - test In-Game settings first! -

> This is more for problems like flickering <
Find the Path of exile .exe, rightclick -> Properties -> Select "Compability" Tab -> select "disable full screen optimization" -> apply



-- In-Game --
- Sound Settings -

In PoE2, open Options -> Sound
Change Channel count from High to Medium/Low

-- Graphic Settings: --

"Dynamic Culling"-Setting seems to be toggled on by default. This is an experimental feature (you can mouse-over and read the description). I personally leave it disabled, since there is no difference in having it on vs off on my PC. There have been changes made to it in 0.3c, maybe it does help in some cases.

I personally think this feature has been born in the depths of console-optimization and simply does no good on a half-decent computer.

Enable Tripple-Buffering

Enable Engine-Multithreading

*a note on Tripple-Buffering*
Enabling Tripple-Buffering wont improve anything if your driver is overriding it. (For example: Nvidia "pre rendered frames"[possibly also Reflex] and for AMD "Radeon Anti-Lag" - you gotta get rid of all that.)


How to decide between Vulkan and DX12?

Press F1 to enable the performance metrics.

Then compare your CPU latency between Vulkan and DX. Choose the one that gives you the lowest and most consistent numbers. (DX11 is likely outdated, mainly compare between Vulkan and DX12)

Now you have to compare the numbers if you want to optimize for your Setup. I will give some examples in the end, but here is how you can manually tweek:

What Upscale Mode should I use? What Setting is best for Image Quality?

To see if you are CPU or GPU limited, look at the latency in on the Performance Graph (F1 by default)
If the number for CPU is constantly higher than for the GPU => CPU-bound
If the number for GPU is constantly higher than for the CPU => GPU-bound

What to do when CPU-bound?
Sadly there are not many settings that influence CPU-load. But we kind of want to be CPU-bound anyways, so no worries here [as long as you are on a midrange CPU from the last 4-6 years].

What to do when GPU-bound?
If your GPU is the limiting factor, then Upscaling (FSR/DLSS/XeSS(/NIS)) will take some load off your GPU, allowing for overall higher FPS. It is effectively the same as reducing render resolution, but looks less muddy. Dynamic Resolution is enabled by default. That means the game already tries to balance the GPU load when there is a lot going on, but this setting is what often causes the game look "muddy".

If your GPU latency is constantly lower than your CPU Latency on the performance graph, then you likely do not need to upscale at all! The game looks much better without upscaling. This might be the case if you have an older CPU paired with a fairly new GPU (example: older intel i5 or i7 paired with an rtx 5070 or 9700xt)

The different upscale methods produce very differet results - FSR/XeSS/DLSS produce different image quality on their settings. Imo FSR Quality looks quite crisp - I cannot compare it to XeSS or DLSS at the moment since I am on an AMD card.

In order to "min-max" your FPS, you want to find a Setting that constantly produces slightly lower latency for the GPU than the CPU.

Example:
> After using the steam launch option my CPU latency is around 6-10 ms [Vulkan, 3440x1440]

> Without upscaling, my GPU latency is around 8-10 ms [FSR-no Upscale]

> In order to optimize the overall fluidity and FPS, i now want to get my GPU latency to be slightly lower than the CPU latency

> Using FSR with "quality" is enough to reduce load for a GPU latency of 6-8ms

>> this translates to around 130-140 FPS "idle" in hideout with 70-90 during combat

>>> Since I am already using FSR Quality to reduce load, i can get by without selecting "dynamic resolution". Selecting only one variant to reduce load on the GPU seems to produce a better picture. It is a lot less blurry compared to leaving it on. (On my Setup FSR Quality by itself is enough to "keep up" with the CPU)

Keep in mind that using "Dynamic Resolution" by itself already dynamically lowers the resolution in order to prevent the framerate from dipping too much when there is lots of action on the screen.

I think most people with a RTX 4070 or above can get by with using either FSR/DLSS or Dynamic Resolution. Both together often tend to make the game look blurry.

TL;DR What are "Good Settings"?

[DIsplay]

Renderer: Depends on your Setup, you have to manually compare the numbers for Vulkan/DX

Mode: Both Windowed Fullscreen and Fullscreen seem to work the same with using the launch option above.

VSync: Off, unless you experience tearing

Dynamic Resolution: Check [warning: this is what makes the game look muddy, but it "balances" GPU-load when there is a lot going on]

Upscale Mode & Image Quality: see above

[Detail Settings]

Stick to Default

[Advanced Settings]

NVidia Reflex: Off

Tripple Buffering: On

Dynamic Culling: Off

Engine Multitreading: On
- not under Graphic: Limit Sound Channel to low/medium

Examples of CPU+GPU+Resolution with Upscale mode:

Spoiler
Intel i5 12600k + RX 7900 GRE. Screen: 3440x1440 - Vulkan - FSR Quality - Dynamic Resolution OFF

Intel i7 7700k + RTX 4070, Screen: 1080p - DX12 - No Upscale - Dynamic Resolution OFF

Ryzen 7 9800X3D + RTX 5090, Screen 3440x1440 - Vulkan - Native Resolution - Dynamic Resolution Off

Ryzen 5 5600X + RX 9800XT, Screen: 2560x1440 - Vulkan - No Upscale - Dynamic Resolution Off

Ryzen 7 7800X3D + RX 9700XT, Screen 3440x1440 - Vulkan - FSR Balanced - Dynamic resolution Off
As you can see, I am really not a fan of Dynamic Resolution - but that is personal preference. Generally i think that either upscaling or dynamic resolution is enough.

Combining them, however... maybe if you are on a RTX 4050.



Process Priority might help in some cases.

[I strongly advise everyone to NOT to play with their registry, especially if they do not know what they are doing]

Spoiler
Rightclick empty folder -> New -> Txt

Copy this (with the "Windows Registry.. line):

Windows Registry Editor Version 5.00

[HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Image File Execution Options\PathOfExileSteam.exe\PerfOptions]"CpuPriorityClass"=dword:00000003

[HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Image File Execution Options\PathOfExile.exe\PerfOptions]"CpuPriorityClass"=dword:00000003

[HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Image File Execution Options\PathOfExile_x64Steam.exe\PerfOptions]"CpuPriorityClass"=dword:00000003

[HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Image File Execution Options\PathOfExile_x64.exe\PerfOptions]"CpuPriorityClass"=dword:00000003

save, change file ending to .reg and double click.

This will create these entries in your registry. Every executeable you define with "CpuPriorityClass"=dword:00000003" will always launch with the process priority set to "high"

[Do not blindly import things to your registry, if you cannot make sense of this: please do not do it]

You can add pretty much every game you want. To get rid of it: open your registry, navigate to the specified location and delete the entries you made.




For Nvidia Users the Shader Cache size seems to do a lot.
Also deleting logs and joining the "unpopular chats" produced some results.

Its hard to tell what actually helped - I think the launch option did a lot for me, but I have changed so many settings recently that i just wrote down everything.

Gl, happy looting!
Last edited by noxxxus#0380 on Sep 14, 2025, 7:36:09 AM
Last bumped on Sep 14, 2025, 4:31:39 PM
Good job. Thank you. Make sure that Above 4G memory/Crypto Currency mining option in BIOS is also enabled. That helped in my case.
Last edited by LukaszKesicki#0515 on Sep 12, 2025, 12:15:44 PM
Imagine having to do all this garabge just to run the game.
"
Dalael#2281 wrote:
Imagine having to do all this garabge just to run the game.


I kind of agree, but since there are thousands of different system configurations and user-error is also a thing, we cant blame the developers for everything.

For instance, one of the issues seems to be that the nvidia driver does not allow pre-caching all necessary shaders when the shader cache size is set to default. No idea how the nvidia driver decides what "default" should be, probably depends on the size of your drive and some other voodoo. Whos fault is that, Windows, Nvidia, GGG, user's? I dont know and i really dont care because we got the option to manually tell the driver how large it is allowed to be - and that seems to do the trick.

Power profile generally allows the CPU to consume more power and clock higher.
Its kind of outside GGG's reach to change your power profile and allow your hardware to actually pull juice. Just a reminder: its mostly people with midrange to high-end PC's who notice that something is off, cause they know that their hardware should be able to produce more fps.

Setting the screen mode to exclusive is also just a helpful thing when you run more applications on a second screen.

If you want to read more:
https://devblogs.microsoft.com/directx/demystifying-full-screen-optimizations/
I personally do not fully understand why "-window-mode exclusive -screen-fullscreen" even gave me a lot better results while still using borderless window. I used to get fps drops whenever i was watching a video on a second screen, this launch option just fixed it and made my frametimes more stable. I would assume that "-window-mode exclusive" just tells DWM that it is an important window, thus it gets more resources.


I remember from playing FPS-games that setting "pre-rendered frames" was among the most frequent tips and tricks to reduce input latency - but if someone has set it in the global profile instead of a specific game profile, where they want to achieve low latency, it overrides all application settings. This could hurt the frame stability a lot, since usually the the game renders 2-3 frames ahead [double-buffering / tripple-buffering]
Last edited by noxxxus#0380 on Sep 12, 2025, 9:50:14 PM
Seems like currently the game clears the shader cache on every launch:

"
[ENGINE] Running Engine version 2.5.0
[ENGINE] Wiping cache Minimap at C:\Users\username\AppData\Roaming\Path of Exile 2\Minimap.tmp
[ENGINE] Wiping cache DailyDealCache at C:\Users\username\AppData\Roaming\Path of Exile 2\DailyDealCache.tmp
[ENGINE] Wiping cache MOTDCache at C:\Users\username\AppData\Roaming\Path of Exile 2\MOTDCache.tmp
[ENGINE] Wiping cache Countdown at C:\Users\username\AppData\Roaming\Path of Exile 2\Countdown.tmp
[ENGINE] Wiping cache ShopImages at C:\Users\username\AppData\Roaming\Path of Exile 2\ShopImages.tmp
[ENGINE] Wiping cache PaymentPackage at C:\Users\username\AppData\Roaming\Path of Exile 2\PaymentPackage.tmp
[ENGINE] Wiping cache SupporterPackSet at C:\Users\username\AppData\Roaming\Path of Exile 2\SupporterPackSet.tmp
[ENGINE] Wiping cache VideoCache at C:\Users\username\AppData\Roaming\Path of Exile 2\VideoCache.tmp
[ENGINE] Wiping cache ShaderCacheNull at C:\Users\username\AppData\Roaming\Path of Exile 2\ShaderCacheNull.tmp
[ENGINE] Wiping cache ShaderCacheD3D11 at C:\Users\username\AppData\Roaming\Path of Exile 2\ShaderCacheD3D11.tmp
[ENGINE] Wiping cache ShaderCacheD3D12 at C:\Users\username\AppData\Roaming\Path of Exile 2\ShaderCacheD3D12.tmp
[ENGINE] Wiping cache ShaderCacheD3D12_X at C:\Users\username\AppData\Roaming\Path of Exile 2\ShaderCacheD3D12_X.tmp
[ENGINE] Wiping cache ShaderCacheD3D12_XS at C:\Users\username\AppData\Roaming\Path of Exile 2\ShaderCacheD3D12_XS.tmp
[ENGINE] Wiping cache ShaderCacheGMNX at C:\Users\username\AppData\Roaming\Path of Exile 2\ShaderCacheGMNX.tmp
[ENGINE] Wiping cache ShaderCacheAGC at C:\Users\username\AppData\Roaming\Path of Exile 2\ShaderCacheAGC.tmp
[ENGINE] Wiping cache ShaderCacheVulkan at C:\Users\username\AppData\Roaming\Path of Exile 2\ShaderCacheVulkan.tmp

So i think i can remove it from the post, i guess?
Last edited by noxxxus#0380 on Sep 13, 2025, 12:37:34 AM
"
What to do when CPU-bound?
Sadly there are not many settings that influence CPU-load. But we kind of want to be CPU-bound anyways, so no worries here.

You mean, "no worries", as long you're on a recent / mid-range desktop ?

But if you're on a weaker/older desktop, or a thermally limited laptop, you're kind of screwed, with no way to trade visuals for performance ?
https://www.pathofexile.com/forum/view-thread/3789238/page/4#p26198517
"
"
P.P.S:
"
or change settings that impact CPU performance

And what settings would that be ?
I tried to find any in PoE2, there were none (except for Engine Multithreading, which of course significantly lowered performance when disabled).


I'm not 100% sure. GGG doesn't tell us in-game.

You could try Vulkan renderer, as that's a bit easier on the CPU. Enable Triple Buffering. Reduce channel count in audio settings to Medium or Low, or disable sound effects altogether in the config file.

Those are the ones that I know off the top of my head. For the record, PoE 2 is even heavier on the CPU. Like, significantly so:



This is from a while back, when I still had a 7600X3D.

Edit: Just checked your CPU performance. Yeah, that thing is kinda ancient. The i5-12400 is a 6C/12T CPU that costs around €130 and is more than 3x as fast in Multi-Core, and more than 2x as fast in Single Core. I'd say you need an upgrade, mate.

(For me Act2 town isn't even the worst offender, since you're not fighting in the town − the worst offenders would be Act 3 The Drowned City and Utzaal, which, for some reason, are for me CPU-limited to 30-40 FPS even after shader calculations, and with spikes lower than 30 FPS once enemies show up.
Compare with Diablo 4, fluid for me (even at max settings), or even (mostly) PoE1.)

A shame, compared to how PoE1 was supposedly designed to run (at release) on « an everyday [2012] laptop ».

(I need to try PoE1/2 on the Steam Deck, especially these areas, since PoE2 supposedly « runs smoothly at 40 FPS » on it.)
Last edited by BlueTemplar85#0647 on Sep 13, 2025, 7:21:15 AM
Yeah you're screwed if you have a weak CPU, the game is more CPU bound than GPU bound...meaning you need a good CPU first.
Tech guy
"

You mean, "no worries", as long you're on a recent / mid-range desktop ?

But if you're on a weaker/older desktop, or a thermally limited laptop, you're kind of screwed, with no way to trade visuals for performance ?



You got me there, yep - that is "kind of" the case. Especially the thermally limited laptop would be a tough one.

I'd say its most impotant to prevent it from thermal throtteling. In some cases - depending on age of the device - changing thermal paste could help, but that is not alwas easy on a laptop.

When i tried it on my steam deck, the performance wasnt too great. Campaign was possible[it ran, playing however..], but that was on patch 0.1

This might sound like shit advice, but in that case i would just use 'geforce now' and stream the game...


I didnt realy get what CPU was used in the screenshot. intel 12400?
Last edited by noxxxus#0380 on Sep 13, 2025, 7:45:56 AM
They say
"
This is from a while back, when I still had a 7600X3D.


----

"
Warrax#2850 wrote:
Yeah you're screwed if you have a weak CPU, the game is more CPU bound than GPU bound...meaning you need a good CPU first.


I might understand if I was complaining about ridiculous endgame situations with literally thousands of enemies tracked by the game, like in Spring-Recoil games...
but in Utzaal with no enemies on screen yet, there should be hardly anything for the CPU to even do !

EDIT : my own screenshot :
Last edited by BlueTemplar85#0647 on Sep 13, 2025, 7:56:18 AM
"


EDIT : my own screenshot :


here is my Utzaal (i5-12600k @4,4GHz currently ~155€ but should perform the same as a 12400f with OC)



What is your CPU temperature?

I think it could be thermal throtteling. Does it have decent air flow? Did you clean the vents recently?
Last edited by noxxxus#0380 on Sep 13, 2025, 8:20:47 AM

Report Forum Post

Report Account:

Report Type

Additional Info