New Defer-Write Setting
Posted: Sat May 01, 2021 7:22 pm
I would like to request a new behavior for the Write Mode of 'Buffer' and 'Intelligent', so that they could be switchable to work whether or not the computer is idle. The switch would allow Buffer Mode or Intelligent Mode to either work like they do now, or work according to the requested new behavior.
The new behavior would not be Native Mode plus (Buffer Mode or Intelligent Mode), as it is now. Instead, the new behavior would be (Buffer Mode or Intelligent Mode) minus Native Mode, but still performing 'Buffer' flushing or 'Intelligent' flushing whether the computer is busy or idle. This behavior would be optional, so that a switch would enable either the new behavior or the current behavior as it is now.
Therefore, the new behavior of Buffer Mode / Intelligent Mode would work like this: If the switch is set to the new behavior, then these modes would not start flushing all deferred data to disk each time the specified Latency Time Interval expires. Instead, each time the Latency Interval expires, these modes would continue to do exactly what they do now, except that they would also do it even if the computer is busy. So the new behavior would be somewhat like Native Mode, since Native Mode does not consider whether the computer is busy or idle. But the behavior would also be somewhat like Buffer or Intelligent Mode, since these modes flush only a portion of deferred data to disk and they never attempt to flush all deferred data to disk. This new behavior also would never attempt to flush all deferred data to disk and also would flush only a portion of deferred data to disk in an attempt to keep some percentage of the cache available. The difference is that they would not be paired with Native Mode flushing all deferred data to disk on each Latency Interval. Instead, at each Latency Interval they would simply flush the specified percentage of deferred data to disk if the deferred data threshold amount of cache size was reached, no matter whether the computer was busy or idle.
I think this behavior would make Buffer Mode and Intelligent Mode much more useful to customers where the computer has different workloads at different times, such as sometimes it is quite often idle but other times it is rarely or never idle for 6 or 8 or 10 or 12 hours at a time. This is valuable because it would cause Buffer Mode and Intelligent Mode to automatically scale with the workload. In other words, Native Mode would not perform unnecessary writes when workload is light, but Buffer and Intelligent Modes would continue to work as designed even when workload is heavy.
Thank you for considering my request!
Tom
The new behavior would not be Native Mode plus (Buffer Mode or Intelligent Mode), as it is now. Instead, the new behavior would be (Buffer Mode or Intelligent Mode) minus Native Mode, but still performing 'Buffer' flushing or 'Intelligent' flushing whether the computer is busy or idle. This behavior would be optional, so that a switch would enable either the new behavior or the current behavior as it is now.
Therefore, the new behavior of Buffer Mode / Intelligent Mode would work like this: If the switch is set to the new behavior, then these modes would not start flushing all deferred data to disk each time the specified Latency Time Interval expires. Instead, each time the Latency Interval expires, these modes would continue to do exactly what they do now, except that they would also do it even if the computer is busy. So the new behavior would be somewhat like Native Mode, since Native Mode does not consider whether the computer is busy or idle. But the behavior would also be somewhat like Buffer or Intelligent Mode, since these modes flush only a portion of deferred data to disk and they never attempt to flush all deferred data to disk. This new behavior also would never attempt to flush all deferred data to disk and also would flush only a portion of deferred data to disk in an attempt to keep some percentage of the cache available. The difference is that they would not be paired with Native Mode flushing all deferred data to disk on each Latency Interval. Instead, at each Latency Interval they would simply flush the specified percentage of deferred data to disk if the deferred data threshold amount of cache size was reached, no matter whether the computer was busy or idle.
I think this behavior would make Buffer Mode and Intelligent Mode much more useful to customers where the computer has different workloads at different times, such as sometimes it is quite often idle but other times it is rarely or never idle for 6 or 8 or 10 or 12 hours at a time. This is valuable because it would cause Buffer Mode and Intelligent Mode to automatically scale with the workload. In other words, Native Mode would not perform unnecessary writes when workload is light, but Buffer and Intelligent Modes would continue to work as designed even when workload is heavy.
Thank you for considering my request!
Tom