What's the value of `vm.dirty_writeback_centisecs` ?, ie.
$ sysctl vm.dirty_writeback_centisecs
try setting it to 0 to disable it, ie.
`$ sudo sysctl -w vm.dirty_writeback_centisecs=0`
I found that this helps my network transfer not stall/stop at all(for a few seconds when that is =1000 for example) while some kinda of non-async `sync`(command)-like flushing is going on periodically while transferring GiB of data files from sftp to SSD!(via Midnight Commander, on a link limited to 10MiB per second)
vm.dirty_writeback_centisecs is how often the pdflush/flush/kdmflush processes wake up and check to see if work needs to be done.
Coupled with the above I've been using another value:
`vm.dirty_expire_centisecs=1000`
for both cases (when stall and not stall), so this one remained fixed to =1000.
vm.dirty_expire_centisecs is how long something can be in cache before it needs to be written. In this case it's 1 seconds. When the pdflush/flush/kdmflush processes kick in they will check to see how old a dirty page is, and if it's older than this value it'll be written asynchronously to disk. Since holding a dirty page in memory is unsafe this is also a safeguard against data loss.
Well, with the above, at least I'm not experiencing network stalls when copying GiB of data via Midnight Commander's sftp to my SSD until some kernel-caused sync-ing is completed in the background.
What's the value of `vm.dirty_ writeback_ centisecs` ?, ie. writeback_ centisecs
$ sysctl vm.dirty_
try setting it to 0 to disable it, ie. writeback_ centisecs= 0`
`$ sudo sysctl -w vm.dirty_
I found that this helps my network transfer not stall/stop at all(for a few seconds when that is =1000 for example) while some kinda of non-async `sync`( command) -like flushing is going on periodically while transferring GiB of data files from sftp to SSD!(via Midnight Commander, on a link limited to 10MiB per second)
vm.dirty_ writeback_ centisecs is how often the pdflush/ flush/kdmflush processes wake up and check to see if work needs to be done.
Coupled with the above I've been using another value: expire_ centisecs= 1000`
`vm.dirty_
for both cases (when stall and not stall), so this one remained fixed to =1000.
vm.dirty_ expire_ centisecs is how long something can be in cache before it needs to be written. In this case it's 1 seconds. When the pdflush/ flush/kdmflush processes kick in they will check to see how old a dirty page is, and if it's older than this value it'll be written asynchronously to disk. Since holding a dirty page in memory is unsafe this is also a safeguard against data loss.
Well, with the above, at least I'm not experiencing network stalls when copying GiB of data via Midnight Commander's sftp to my SSD until some kernel-caused sync-ing is completed in the background.
I don't know if this will work for others, but if curious about any of my other (sysctl)settings, they should be available for perusing [here](https:/ /github. com/howaboutsyn ergy/q1q/ tree/0a2cd4ba65 8067140d3f0ae89 a0897af54da52a4 /OSes/archlinux /etc/sysctl. d)