
Alvin Starr via talk wrote on 2025-02-03 12:22:
https://www.kernel.org/doc/gorman/html/understand/understand007.html looks to describe the overall memory management of Linux.
I couldn't make heads nor tails of that, it's over my head.
A way to check this would be to load a single python interpreter and look at the memory used. Then load multiple copies of the same program and see if the memory usage is N*mem_used and not something less than N*mem_used.
I don't have anywhere to test that which won't have too many confounding variables. I'll still try it if I get a chance. But I did have a thought -- if MM3 is doing basically the same tasks as MM2 but taking up so much more memory, I kinda wonder if the extra Python3 instances with their separate PIDs makes more sense than workload / data, considering "same basic functionality". In other news, I did hear back from the MM3 author (Mark Sapiro) on how to disable NNTP on MM2, so I've added that to GTALUG's config (but have *not* restarted it). It did remove one Python from my MM2 server: Freshly restarted MM2 without NNTP: Tasks: 8 (limit: 2256) Memory: 83.7M With NNTP: Tasks: 9 (limit: 2256) Memory: 93.9M Hmmm - a 10MB difference for one process - NNTP gateway. That cannot just be the Python script, it's gotta include 3.5MB Python2.7 (IMHO).