I have the same setup as you. What do you set your worker threads at?
Nah, I’m not using the experimental portion. And yes I did use the full screen optimization.
I had to mess around with the “rtxgi_scale” for the textures to stop flickering, turns out you can’t have it too low.
I’m still having a chuckle at this https://www.amd.com/en/resources/support-articles/release-notes/RN-RAD-WIN-22-11-2.html seems they never got around to fixing it.
Nah, all I had to do was look around for stuff to flicker, “rtxgi_scale” being too low was the culprit. Not ultrawide, and no super fov.
These changes along with the lua heap changes in another thread basically fix all my issues with the game.
Under experimental changes I changed the buffer sizes to 2 instead of 1 (down from 4), seemed like a better middleground.
Spent a little time asking ChatGPT for explanations on some of these settings in AutoDesk Stingray. Here are some of the summary tables for values. gonna mess around with this a bit when i get home. I had copied your initial settings here with great affect on my FPS but I think it could definitely be tweaked some more to bring it inline with AMD architecture
mesh_streamer_settings = {
disable = false
eviction_timeout = 5
frame_time_budget = 1
io_buffer_budget = 10240
limit = 768
streaming_buffer_size = 128
streaming_max_open_streams = 64
streaming_texture_pool_size = 2048
surface_properties = “application_settings/global”
texture_streamer_settings = {
streaming_buffer_size = 128
streaming_texture_pool_size = 1024
streaming_buffer_size
Value Use Case
64 KB Conservative size, used on memory-constrained platforms.
128–256 KB Balanced setting, works well for most assets.
512 KB – 1 MB Aggressive for streaming large assets faster on high-spec hardware.
streaming_max_open_streams
Value Use Case
4 Very low-spec systems or platforms with tight file handle limits.
8 Default for some mobile or embedded builds.
16 Common default for desktop or console.
32 More aggressive streaming; faster loads if IO can keep up.
64+ Rare; only for high-end systems with fast SSDs and high throughput needs.
streaming_texture_pool_size
Value (in MB) Use Case
64–128 Mobile devices or extremely low-memory systems
256 Mid-range PCs or older consoles
512–1024 Standard for modern PCs and newer consoles
2048+ High-end GPUs, cinematic scenes, or ultra HD textures
frame_time_budget
Platform Recommended Frame Time Budget Notes
Mobile 8–16ms Mobile hardware can be more sensitive to delays, so keep the budget low.
Consoles 16–32ms For current-gen consoles, 16ms is a good balance. Older platforms may need up to 32ms.
High-End PC 8–16ms With fast SSDs and GPUs, 8ms–16ms is ideal for maintaining 60 FPS+ in complex scenes.
Edit
Spent some time feeding my specs into chatgpt and these settings have been wonderful for me
How to Utilize More VRAM (and Boost Performance at 180 FPS)
You want to keep more textures, meshes, and streamed data resident in VRAM to reduce loading, reduce pop-in, and maintain higher visual fidelity without stalling the frame.
Updated Recommended Settings (Now that we’re not VRAM-limited)
lua
CopyEdit
streaming_texture_pool_size = 1024 -- Reserve 1 GB of VRAM for textures
streaming_max_open_streams = 24 -- Increase parallelism
eviction_timeout = 12 -- Keep assets loaded longer
streaming_buffer_size = 16 -- Pull in more data per stream
triangles_per_job = 128 -- Good for CPU balance @ 180fps
frame_time_budget = 5 -- Tight, fast frame window
io_buffer_budget = 128 -- Plenty of DDR5 to buffer asset streams
Optional Tweaks for Open Worlds / High Detail:
lua
CopyEdit
streaming_texture_pool_size = 2048 -- 2 GB reserved for streaming
eviction_timeout = 16 -- Avoid thrashing during exploration
streaming_buffer_size = 32 -- Fewer I/O calls, larger asset chunks
Just make sure your actual scene can use it — otherwise you’re allocating memory that won’t be touched.
How to Confirm VRAM Is Actually Being Used
Use your GPU tool of choice (e.g.:
- AMD Radeon Overlay
- GPU-Z
- Afterburner + RTSS
- RenderDoc or PIX for deep dives)
Look at:
- Dedicated VRAM usage
- Streaming pool size (if exposed)
- Residency percentage (how many textures are fully loaded vs. partially)
Bottom Line
You’ve got the VRAM, now let’s use it:
Setting | Default | Better for 16 GB VRAM |
---|---|---|
streaming_texture_pool_size |
256–384 | 1024–2048 |
eviction_timeout |
6–8 | 12–16 |
max_open_streams |
8–16 | 20–24 |
streaming_buffer_size |
8 | 16–32 |
This will significantly reduce texture pop-in, improve visual stability, and help keep that silky 180 FPS.
Let me know what kind of assets you’re using (4K textures? big landscapes? tons of props?) — I can help you push even further.
Looks interesting.
Hoping it’s well founded and not some something ChatGPT dreamed up.
its working really well for me so far. first time my 9070xt has pulled 330w and the smoothest its ever been. I also did his trick to enable fullscreen optimizations and am using process lasso
If you have nothing better to do on your Saturday…
Try reverting everything back to default, and tweak one at a time. See if you can figure out which setting(s) are actually giving you the performance boost.
Why are you setting the streaming_buffer_size
so low? Based on the text you pasted, seems like that should be much higher.
It appears that there are different values depending on what part of the file you are looking at.
Type | Field | Good Value | Why |
---|---|---|---|
Global | streaming_buffer_size | 32–64 | Allows more general asset streaming jobs in parallel without being excessive |
Texture streamer | texture_streamer_settings.streaming_buffer_size | 512–1024 | Larger buffer means faster texture resolution recovery, especially in large scenes |
Feedback streamer | feedback_streamer_settings.staging_buffer_size | 8–16 | Controls staging per-frame; higher helps with sharper texture feedback on fast motion |
I’ve got my game running almost 180fps locked with no microstutters but i’ve absolutely crushed the textures. Super smooth, super playable. Will update tonight when i tweak it a bit more to get the sharper textures back
Can you share your final changes that works the best for you? There were many keys and values mentioned, but tracking them from comment to comment is not that obvious. Did you also use changes proposed by the OP?