What does "Write cache buffer flushing" mean
Hire the world's top talent on demand or became one of them at Toptal: https://topt.al/25cXVn
and get $2,000 discount on your first invoice
--------------------------------------------------
Music by Eric Matyas
https://www.soundimage.org
Track title: Ocean Floor
--
Chapters
00:00 What Does &Quot;Write Cache Buffer Flushing&Quot; Mean
00:21 Accepted Answer Score 12
01:16 Answer 2 Score 2
01:49 Answer 3 Score 0
02:29 Answer 4 Score 1
03:21 Thank you
--
Full question
https://superuser.com/questions/215372/w...
--
Content licensed under CC BY-SA
https://meta.stackexchange.com/help/lice...
--
Tags
#windows7 #harddrive #cache
#avk47
ACCEPTED ANSWER
Score 12
See "more information" section from http://support.microsoft.com/kb/332023:
Many disk devices provide enhanced performance through the use of an onboard cache, which provides read-ahead caching for data that is being read from the disk, and write-behind caching (or delayed writes or "lazy" writes) for data that is being written to disk. In some cases, it is important for data to be written to the physical disk immediately, and not retained in the disk's onboard write cache to be written later during an otherwise idle moment. This prevents loss or corruption of this data if the disk or controller (wherever the write cache is implemented) suddenly loses power
Write caching improves disk performance greatly, so leave it on for internal hard drives.
Windows turns write caching Off for flash drives and other usb hard drives by default, normally you do not have to ever modify these settings, Windows takes care of it for you.
ANSWER 2
Score 2
I always turn write-behind caching off, all the time, every time. It was a bad idea from the start. I explain it this way: If you click "Save" on your word processing document, and the power fails, with write-behind caching off, your document will not be saved (until autosave kicks in). Turning off write-behind caching forces it to actually write your file to the disk when you click save. The same applies to power outages, BSOD's, program crashes, etc.
ANSWER 3
Score 1
Both settings relate to the internal disk cache. The first one enables/disables the write cache. The second one is much more interesting and apparently has a slightly different effect on different ATA/ATAPI controllers. Once upon a time I ran an analyzer to intercept Intel Serial ATA Storage Controller commands with default Windows drivers and SATA HDD. With this option enabled, even when Windows flush caches (FlushFileBuffers, CcFlushCache and others), there were no IRB_FUNCTION_ATA_FLUSH and IRB_FUNCTION_ADAPTER_FLUSH commands in the logs, which tells the disk to clear its internal buffer. When the option was disabled, these commands were sent periodically. AMD SATA with native/non-native drivers behaved a little differently. And there are different registry settings. But the fact is that this setting greatly reduces the number of flushes. Also, with any settings, flushing commands are sent before power change and before shutdown.
ANSWER 4
Score 0
Based on an Old New Thing blog post it sounds like the first one is OS caching and the second one is an override for disk internal caching during flush only.
For normal writes with no flush, the disk internal cache will be used regardless of the second setting. However, for sync/flush events the default behaviour is to ensure that flushing the OS cache actually gets the data onto the media: tell the drive explicitly flush the internal cache too.
It's not clear to me whether turning off the first setting would do this disk flush on every write, or even disable the on-disk cache as well as disabling the OS cache.