Skip to main content

You are not logged in. Your edit will be placed in a queue until it is peer reviewed.

We welcome edits that make the post easier to understand and more valuable for readers. Because community members review edits, please try to make the post substantially better than how you found it, for example, by fixing grammar or adding additional resources and hyperlinks.

5
  • 5
    Both 32-bit and 64-bit Linux kernels use default dirty_ratio of 20. However, 32-bit kernel has maximum available kernel RAM limit of 1 GB due to limits of 32-bit x86 architecture. As a result, maximum default write cache size on 32-bit system is around 180-200 MB depending on hardware (at least PCI devices with DMA access will reduce usable RAM limit). Commented May 17, 2017 at 7:18
  • 6
    This isn't the complete answer to your original question though. I want to throttle my external slow storage, not my internal fast storage... Commented Apr 9, 2020 at 18:27
  • 3
    Decreasing the write_buffer size below the current utilization may lead to a somewhat unresponsive system, as it appears new writes are blocked until space is available in the cache, which is now overfull. Creating a directory in this state has left me enough time to clean up a kid's toys in the yard, cut a slice of key lime cheesecake and a glass of milk, and finish both while I write this from my phone. Commented Aug 28, 2020 at 1:35
  • 3
    After using low dirty_bytes setting (200 MB) for a longer time, I've noticed that using single global limit is pretty bad because slow device can still fill the buffer and then writes to another fast SSD device suffers as a result. The correct fix is to apply device specific limit but there doesn't seem to be a simple way to do that. I think optimal setting would be 200 MB per device for my case. Commented Aug 18, 2022 at 6:46
  • See also: unix.stackexchange.com/q/714267/20336 Commented Aug 20, 2022 at 10:22