On Mon, 20 Jul 2020 at 05:04, Kevin Kofler <kevin.kofler@xxxxxxxxx> wrote: > > John M. Harris Jr wrote: > > Userspace isn't dead when a system is thrashing. Your software is still > > running. If it gets killed, you're most likely going to lose your data. > > The thing is, there are various levels of thrashing. In some cases, the > system is so busy that you have no chance to bring it back to responsiveness > for many minutes, up to hours. (Other than hitting the Reset or Power > button, of course.) I have had cases where not even sshd would respond. (The > fact that login has been blocking on D-Bus since the introduction of > systemd-logind does not help either. Login timeouts are something that was > just never happening in the past, now they are common under heavy load.) > > That said, I do not see how the EarlyOOM heuristic, which allows, depending > on the exact settings, something like 80-90% of swap to be used IN ADDITION > to 90+% RAM (and will only start doing anything if BOTH RAM and swap are > full) can prevent thrashing in any reliable way. My thrashing scenarios have > had much less swap than that used. (I have twice as much swap than RAM, so > when the EarlyOOM heuristics trigger, my programs are already trying to use > almost 3 times as much RAM as is actually available!) > I think the problem is that you are using way too much swap for modern systems. The reasons for swap being 2x to 4x real memory was a 1980's solution when big RAM systems had 64 MB of ram but a server might need 128MB for certain tasks. This was 'reasonable' because the processors were slow but could still walk through 128 MB of space 'pretty' fast. As RAM got larger this 2x became 'cargo-culted' in various documentation and was still reasonable while processor speed went up. You could still have a system with 512MB of ram and walk through 1024 to 2048 GB of swap in similar times as the 128 MB. As processor speeds increased while disk speeds did not, there was a tipping point where going into larger swap would be catastrophic. By the early 2000's systems with 4x swap would go catatonic in thrashing by the time you got even 1/2 of it full. Things seemed to have gotten worse with multicore processors and threaded programs. This means that larger numbers of tools are all trying to get access to 'live' RAM all the time and if you go off to disks, you are sunk. These days, I think that if you are needing more than 0.5 RAM in swap.. you are probably going to go into thrashing hell pretty regularly... the speed difference between memory and disks is too large and there are too many processes all wanting some CPU time all the time. -- Stephen J Smoogen. _______________________________________________ devel mailing list -- devel@xxxxxxxxxxxxxxxxxxxxxxx To unsubscribe send an email to devel-leave@xxxxxxxxxxxxxxxxxxxxxxx Fedora Code of Conduct: https://docs.fedoraproject.org/en-US/project/code-of-conduct/ List Guidelines: https://fedoraproject.org/wiki/Mailing_list_guidelines List Archives: https://lists.fedoraproject.org/archives/list/devel@xxxxxxxxxxxxxxxxxxxxxxx