Announcement

Collapse
No announcement yet.

MGLRU v15 Published For Last Minute Testing Of This Major Linux Improvement

Collapse
X
 
  • Filter
  • Time
  • Show
Clear All
new posts

  • MGLRU v15 Published For Last Minute Testing Of This Major Linux Improvement

    Phoronix: MGLRU v15 Published For Last Minute Testing Of This Major Linux Improvement

    Google engineer Yu Zhao this morning published MGLRU v15, the latest revision to this patch series dealing with improving the Linux kernel's page reclamation code. Multi-Gen LRU "MGLRU" has proven to offer performance benefits and particularly improve the Linux experience when dealing with low-memory situations...

    Phoronix, Linux Hardware Reviews, Linux hardware benchmarks, Linux server benchmarks, Linux benchmarking, Desktop Linux, Linux performance, Open Source graphics, Linux How To, Ubuntu benchmarks, Ubuntu hardware, Phoronix Test Suite

  • #2
    3 years later:
    MGLRU v162 Published For Last Minute Testing Of This Major Linux Improvement

    Comment


    • #3
      I think the Xanmod kernel should have it too:

      To avoid confusion, the terms "promotion" and "demotion" will be applied to the multi-gen LRU, as a new convention; the terms "activation" and "deactivation"...

      Even though I'm not sure how complete that is.
      Hopefully this will be mainlined into the Linux kernel without any further delays!
      I think it's very much needed, especially on laptops with not so much RAM.

      Comment


      • #4
        I'm so hyped for Linux 7.0 when MGLRU finally gets upstreamed!

        Comment


        • #5
          I think with MGLRU, the ZSTD algorithm becomes a better choice than ever before for ZRAM. From my understanding, MGLRU makes far better swapping choices and with it, we should be doing swapping less often overall. So with this added confidence, choose ZSTD, so we get better ratios, leaving more room and therefore requiring even less data to swap and leaving more space for more evictions as needed.

          I've been doing this with great success with MGLRU + ZSTD on a 64 GB desktop and ZRAM Limit of 32 GB. Earlier today, it turned 21 GB into 3.1 GB and I had zero OOM events when overcommitted by 10-15 GB. Things felt great all the same.
          Last edited by Mitch; 19 September 2022, 02:30 AM.

          Comment


          • #6
            MGLRU v15 adds details about OpenWrt already picking up the patches in addition to its use already by Chrome OS, Liquorix, Armbian, Android, Arch Linux Zen, and other downstream kernel flavors.
            Is Linus' ass feeling warm yet?​

            Comment


            • #7
              Originally posted by Mitch View Post
              I think with MGLRU, the ZSTD algorithm becomes a better choice than ever before for ZRAM. From my understanding, MGLRU makes far better swapping choices and with it, we should be doing swapping less often overall. So with this added confidence, choose ZSTD, so we get better ratios, leaving more room and therefore requiring even less data to swap and leaving more space for more evictions as needed.

              I've been doing this with great success with MGLRU + ZSTD on a 64 GB desktop and ZRAM Limit of 32 GB. Earlier today, it turned 21 GB into 3.1 GB and I had zero OOM events when overcommitted by 10-15 GB. Things felt great all the same.
              Another tweak you might want to apply is setting the sysctl vm.page-cluster=0. That disables readahead for swap-in, compared to the default value of 3, which swaps in 8 pages at a time. Since DRAM is way better at random access than disk, the throughout gains from large block sizes are much less. Plus, smaller decompression blocks reduce latency, particularly with a (relatively) slower algorithm like zstd. And you avoid swapping in stuff that doesn't actually get used.

              Comment

              Working...
              X