Hello, Michael Kelly, le lun. 13 avril 2026 07:02:12 +0100, a ecrit: > I've thought for a while that something significant had to change with the > pageout and this is certainly a significant change. struct vm_page has grown > in size by 2 pointers, I think. That equates to an extra 32M used per 8G of > RAM which doesn't seem that much if the system performance benefits > significantly.
Yes, the reduced RAM availability looked fine enough compared to properly evicting memory. > I had a prototype from a few months ago that did combine all segments into a > single free list. I shelved that "for the future" because I was failing to > come up with a sensible way of finding free pages in specific segments (eg. > for DMA) without adding new list pointers to vm_page. Yes, that's why I kept the existing list, also because we want to be able to balance between segments. > Have you tried it with the heavy build load? I am trying mypy, it's going much better, though 3G memory remains quite low and it's still quite swapping. One thing I notice is that the page cache remains quite large, something like 1.5G over 3G, I would have expected less. Perhaps for some reason a lot of page cache pages get vm_page_can_move() returning false. Samuel
