Jump to content
NotebookTalk

The Damnedest Thing - 20 - 25 fps Boost / Windows 10 Disk Device Write Cache Policy Enabled (w/Primocache)


Trevayne10
 Share

Recommended Posts

Per the topic:

 

System =  OP-LP2 laptop, i7-8750H  CPU, (6C/12T), 32 GB DDR4-2666, nVidia GTX-1060 6GB GPU, Samsung Evo 970 Pro 500GB NVMe SSD (PCIe 3.0 x 4)  144 Hz IPS 15" Panel.

 

Over the past few months I noticed my laptop's gaming performance was really dragging (especially in Second Life, 1920x1080), 16 to 32 fps, max.

 

Did some random research, found out that the Samsung Evo 970 Pro NVMe SSD really loves to have the Windows Device Write Cache policy to be enabled.  I discovered that it wasn't. So I enabled it, rebooted, and I'm now getting a 20 to 25 FPS increase in virtually all of my game titles. Some of the games actually have a "shimmer" and a sparkle to them, almost like watching 60 fps video (wasn't like that before).  Not only gaming, but all around system performance, web browsing, scrolling, smooth as silk (was pretty choppy before).  YouTube vid buffering GONE. I can scroll forward and back many minutes in videos, and it just jumps right to it (very slow and choppy before).  I. Don't. Get. It., but I'll take it.

I also run Romexsoftware's excellent Primocache 4.1, 2GB R/W cache.  Please note:  I am not a shill for Romexsoftware, but I've been using it for many years now.

 

WHY would enabling Windows Disk Device Write cache policy cause such a massive jump in all-around system performance, especially gaming / video?  Again, I don't get it.

Anyone have an explanation, I would be most appreciative.

 

- Trev
 

Link to comment
Share on other sites

My guess as to why is maybe that the computer puts more temp data, caches it if you will, on the disk while in use so there's less i/o lag and more performance? It takes space from the disk though. I'll have to try it on one of my externals if you get that amount of perf bump since a lot of my externals are for games only.

 

I think this has to do with quick removal functionality so you can just unplug it at will without the risk of errors/no need to use safely remove hardware, whereas if it's set to write cached if you remove it without going through the safely remove hardware interface you can get those "there's a problem with this disk" when you plug it back in and have to check for errors etc Internal disks should be set to the write cached obviously since they won't be removed much. Externals are better to not set it to write cached for quick removal or as the pic shows it's related to corruption in case of sudden power loss.

writecached etc.png

Link to comment
Share on other sites

I'm guessing now that one reason for my laptop's massive gaming FPS & all around system perf. boost might have something to do with the "nVidia Container" process (which apparently does a lot of disk I/O) is now being fully write-cached, where it wasn't before.

Just a crazy guess.

- Trev

Link to comment
Share on other sites

Yeah my stuff on my internal nvme drive is always snappier no doubt but it's pretty small size so I can only put a limited amount of games on there. That is kind of weird that a primarily internal drive would default to quick removal though it should be picking write cached maybe a bug either with your system or the drives firmware etc Some people use those in external enclosures so maybe it was setup that way if you got it second hand or refurb idk Congrats on the find though.

Link to comment
Share on other sites

13 minutes ago, Hertzian56 said:

Yeah my stuff on my internal nvme drive is always snappier no doubt but it's pretty small size so I can only put a limited amount of games on there. That is kind of weird that a primarily internal drive would default to quick removal though it should be picking write cached maybe a bug either with your system or the drives firmware etc Some people use those in external enclosures so maybe it was setup that way if you got it second hand or refurb idk Congrats on the find though.


Just an FYI -

My internal NVMe SSD does not have a "Quick Removal" device option.  I suspect that's fairly typical for most internal PCIe disks under Win7/8/10/11.

Thanks again, Hertzian

 

 

-  Trev

Link to comment
Share on other sites

29 minutes ago, Hertzian56 said:

yeah when I checked my internal nvme it just had a turn off write buffer caching so not the same as quick removal, sounds like just different wording to me though.

 

 

Well, to be honest, I'd say they have different wording because they have vastly different meanings. They're both critically important to disk device I/O, however.

If you suddenly unplug an external USB SSD disk that has "Enable Write Caching" policy enabled on it (as opposed to "Quick Removal" policy - either/or, can't have both policies), doing so can cause massive file system corruption.

Likewise, in the case of a desktop PC with internal PCIe NVMe or SATA disks, with "Enable Write Caching" checked (and with no UPS battery backup protection), a sudden power outage (or just rudely unplugging it) can also cause massive file system corruption.

Quick takeaway:

1.) The "Quick Removal" policy applies only to External USB disks. But you can also change the policy to "Enable Write Caching", with possibly substantial risks.

2.) Internal PCIe or SATA (or even now ancient PATA/IDE drives) are capable of the "Enable Write Caching" option, also with substantial risk (except in the case of laptops, which typically have their own built-in battery backup, or in the case of desktop PCs that are on UPS battery backup).  But typically internal disks on laptops and desktop PCs do not have the "Quick Removal" option.

If you think about it, there's really no practical way to "quickly remove" an internal disk installed inside a laptop or desktop PC case anyway.

- Trev

Link to comment
Share on other sites

But anyway, back to the original question:

 

Why would checking the "Enable Write Caching" policy on my Evo 970 NVMe SSD in Windows 10 result in a 100 - 200 % improvement in gaming frame rates (aka, "FPS")?  Because in my case, it has.  It can't possibly be something as trivial and ridiculous as the "nVidia Container" being completely write cached, can it?

 

I am completely baffled.

 

- Trev

Link to comment
Share on other sites

On that original topic... the only thing that comes to mind to explain it is that you have a lot of IO going on, and waiting for the SSD is causing other tasks to become delayed.

 

If enough background tasks are hammering it, foreground tasks can become delayed.  Kind of like a traffic jam - your task might not be the cause of it, but it still gets stuck where the bottleneck is.

 

When there isn't an obvious cause for it a major slowdown, I use the "IO reads", "IO writes", "IO other", and the corresponding "bytes" sections (e.g. "IO read bytes") in the Details tab of Task Manager to help figure out what's causing so much disk activity.  I don't know what the "nVIDIA container" is exactly, but it could be that, or something else.  Once I found that it was the Epic Games client that was consuming a ton of resources (although that one might have been CPU?); it no longer is allowed to start with Windows.

 

I just checked, and the Write Cache and Best Performance are checked for my internal hard drives, and if they get super swamped they still slow down... so I could believe that only kind-of swamped could be noticeable without those settings.

 

I'll be curious if there is a culprit identified.  I didn't think Second Life was super graphically demanding, 16-32 FPS sounds lower than I would have thought normal (and even more so if that's 32 FPS max in any game).

Desktop: Core i5 2500k "Sandy Bridge" | RX 480 8 GB | 32 GB DDR3 | 850 Evo + HDDs | Seasonic Prime Titanium 650W | 8.1 Pro

Laptop: MSI Alpha 15 | Ryzen 5800H | Radeon 6600M | 16 GB DDR4 | 512 GB SSD | 10 Home

Laptop history: MSI GL63 (2018) | HP EliteBook 8740w (acq. 2014) | Dell Inspiron 1520 (2007)

Link to comment
Share on other sites

49 minutes ago, Sandy Bridge said:

On that original topic... the only thing that comes to mind to explain it is that you have a lot of IO going on, and waiting for the SSD is causing other tasks to become delayed.

 

If enough background tasks are hammering it, foreground tasks can become delayed.  Kind of like a traffic jam - your task might not be the cause of it, but it still gets stuck where the bottleneck is.

 

When there isn't an obvious cause for it a major slowdown, I use the "IO reads", "IO writes", "IO other", and the corresponding "bytes" sections (e.g. "IO read bytes") in the Details tab of Task Manager to help figure out what's causing so much disk activity.  I don't know what the "nVIDIA container" is exactly, but it could be that, or something else.  Once I found that it was the Epic Games client that was consuming a ton of resources (although that one might have been CPU?); it no longer is allowed to start with Windows.

 

I just checked, and the Write Cache and Best Performance are checked for my internal hard drives, and if they get super swamped they still slow down... so I could believe that only kind-of swamped could be noticeable without those settings.

 

I'll be curious if there is a culprit identified.  I didn't think Second Life was super graphically demanding, 16-32 FPS sounds lower than I would have thought normal (and even more so if that's 32 FPS max in any game).

 

Thanks, Sandy Bridge -

 

Makes sense.  Gonna drill down further into it, as per your recommendation.

 

 - Trev

 

Link to comment
Share on other sites

On 3/15/2022 at 3:13 PM, Trevayne10 said:

Per the topic:

 

System =  OP-LP2 laptop, i7-8750H  CPU, (6C/12T), 32 GB DDR4-2666, nVidia GTX-1060 6GB GPU, Samsung Evo 970 Pro 500GB NVMe SSD (PCIe 3.0 x 4)  144 Hz IPS 15" Panel.

 

Over the past few months I noticed my laptop's gaming performance was really dragging (especially in Second Life, 1920x1080), 16 to 32 fps, max.

 

Did some random research, found out that the Samsung Evo 970 Pro NVMe SSD really loves to have the Windows Device Write Cache policy to be enabled.  I discovered that it wasn't. So I enabled it, rebooted, and I'm now getting a 20 to 25 FPS increase in virtually all of my game titles. Some of the games actually have a "shimmer" and a sparkle to them, almost like watching 60 fps video (wasn't like that before).  Not only gaming, but all around system performance, web browsing, scrolling, smooth as silk (was pretty choppy before).  YouTube vid buffering GONE. I can scroll forward and back many minutes in videos, and it just jumps right to it (very slow and choppy before).  I. Don't. Get. It., but I'll take it.

I also run Romexsoftware's excellent Primocache 4.1, 2GB R/W cache.  Please note:  I am not a shill for Romexsoftware, but I've been using it for many years now.

 

WHY would enabling Windows Disk Device Write cache policy cause such a massive jump in all-around system performance, especially gaming / video?  Again, I don't get it.

Anyone have an explanation, I would be most appreciative.

 

- Trev
 

 

Because write caching makes writing to the SSD much more efficient, can store it in DRAM cache and write it async which is faster than the NAND. It should always be enabled for an internal SSD. Whether or not you enable it for removable media is up to your tolerances for lost data if you pull it without "Ejecting Safely", which is a friendly term for cached data is committed to the media first.

 

I suppose whatever game that is you're playing is doing a lot of storage writes oddly, that doesn't make a ton of sense for a device with 32GB unless there's a bunch of telemetry written to disk.

  • Like 1

[Draupnir] R5 5600X | EVGA 3080 | Asus B550-I Strix | 2 x 16GB 3600@CL16 | 2 x WD SN750 | NZXT H1 V2 w/ Fan Mods

[Gungnir]  LG Gram 17 | i7-8565U | 16GB | 2 x 512GB SSD

[Munnin]  MacBook Pro 16 | i9-9980HK | Radeon Pro 5300M | 64GB RAM | 1TB

Link to comment
Share on other sites

Could there be a conflict with Primocache and windows, maybe you found a bug or a difference in settings

Alienware M18x R2 i7-3920xm-16GB DDR3-Quadro P4000  Alienware M17x R4 i7-3940XM 16GB DDR3-1866 Quadro P4000

Precision m6700 i7-3840QM - 16.0GB DDR3 - GTX 970M     Alienware M17x R4 i7-3940XM 32GB DDR3-1600 GTX 680M 120hz 3D
Precision m4700 i7-3610QM-8.00GB DDR3 @ 1600MHz-K2000M

GOBOXX SLM  G2721-i7-10875H RTX 3000-32GB ddr4(Gave to my Wife)

 

Link to comment
Share on other sites

1 hour ago, aldarxt said:

Could there be a conflict with Primocache and windows, maybe you found a bug or a difference in settings

Hi aldarxt,

 

Thanks for the reply.

 

If it is indeed a bug, it's a bug that I want to keep around.
 

- Trev

Link to comment
Share on other sites

nah its a problem i had years ago. when your game runs out of vram it uses hdd cache...slowing the game down....when it gets alleviated the frames go up, i think you changed a few settings and just forgot...its all good

Link to comment
Share on other sites

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
 Share

×
×
  • Create New...

Important Information

We have placed cookies on your device to help make this website better. You can adjust your cookie settings, otherwise we'll assume you're okay to continue. Terms of Use