The Hidden I/O Bottleneck Lurking in Your Linux System


The Hidden I/O Bottleneck Lurking in Your Linux System

Have you ever tuned vm.dirty_ratio? If not, your Linux system might be quietly throttling your disk performance without you noticing. 😬

I took a look at a small RHEL 10 VM and found this:

[root@iamsonukushwaha]# cat /proc/sys/vm/dirty_ratio 30 [root@iamsonukushwaha]# cat /proc/sys/vm/dirty_background_ratio 10

What does this mean?

  • ✅ When dirty pages reach 10% of RAM, Linux starts flushing data to disk in the background.

  • 🚨 At 30%, the kernel blocks new writes until it flushes dirty data to avoid overloading the system.

On this VM with 951MiB RAM, that translates to:

  • Background flush kicks in at about 95MiB of dirty data.

  • A hard stop happens at around 285MiB.

If you’re running a logging-heavy app or working with slow storage, expect those sudden latency spikes. ⚡


Quick tip to smooth out I/O spikes:

  • Set dirty_ratio to 15

  • Set dirty_background_ratio to 5

This simple adjustment can prevent unexpected stalls, especially on memory-limited or I/O-sensitive systems.


Remember — better performance isn’t always about more RAM or faster CPUs. Sometimes it’s about mastering how your system manages data flow behind the scenes.


Popular posts from this blog

Tarana - Music Player