Recently, I asked if anyone had any good values for BDFLUSH. The reason I as is that the default values that come with SuSE appear to be patently absurd for large memories.
release %cache dirty %bdflush async 2.4.7 30 60 2.4.17 40 60 As I understand it, for a 5 GB system under 2.4.17 (We have run in our integration center), 2 to 3 GB (gigabytes) could be dirty before much happens. We've noticed that we often lose disk information if the system crashes or is not shutdown correctly. The best results I've gotten are by setting both values to zero, causing data to written to disk almostly continously at almost disk speed rates. I really don't think that performance would be impacted much if writes are immediate in that bursty periods are vastly reduced when you write out frequently and writes, generally only account for 20% of you requests in most systems and the writes are still asyncrhonous (dirty), but for a much shorter period of time. To me, a more reasonable default for large memory is something far less than 30%.
