Announcement

Collapse
No announcement yet.

Memory Folios Updated A 14th Time For Improving Linux Memory Management

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

  • Memory Folios Updated A 14th Time For Improving Linux Memory Management

    Phoronix: Memory Folios Updated A 14th Time For Improving Linux Memory Management

    Matthew Wilcox of Oracle has sent out his 14th revision to the memory "folios" patch-set for this new struct that aims to improve Linux's memory management code and ultimately better performance...

    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
    Pf, 4k pages are so previous century. Sheer peasantry, peasantry I say.

    Comment


    • #3
      I'm really looking forward to this patchset getting mainlined. Michael any chance for benchmarks yet to get a glimps of potential performance uplifts (or regressions in particular cases)?

      Edit: Michael is already firing up benchmarks - I have somehow missed that sentence - thx@ermo for pointing it out
      Last edited by CochainComplex; 15 July 2021, 09:55 AM.

      Comment


      • #4
        Originally posted by CochainComplex View Post
        I'm really looking forward to this patchset getting mainlined. Michael any chance for benchmarks yet to get a glimps of potential performance uplifts (or regressions in particular cases)?
        In case you missed it:

        Originally posted by Michael in the last sentence of the article
        (...)
        Given the possible performance wins, I'll also be firing up some kernel benchmarks with memory folios shortly.

        Comment


        • #5
          Oh damn THX yes i have obviously missed it
          Last edited by CochainComplex; 15 July 2021, 10:22 AM.

          Comment


          • #6
            Originally posted by CochainComplex View Post
            I'm really looking forward to this patchset getting mainlined. Michael any chance for benchmarks yet to get a glimps of potential performance uplifts (or regressions in particular cases)?

            Edit: Michael is already firing up benchmarks - I have somehow missed that sentence - thx@ermo for pointing it out
            Yes have benchmarks running on the Folio-enabled kernel at this very moment.
            Michael Larabel
            https://www.michaellarabel.com/

            Comment


            • #7
              Originally posted by Michael View Post

              Yes have benchmarks running on the Folio-enabled kernel at this very moment.
              Can't wait for the results

              Comment


              • #8
                The real head-scratcher is why this wasn't fixed sooner.

                It's usually painfully obvious when an API gets the abstraction level wrong. Sounds like that was the case here, too.

                Comment


                • #9
                  Originally posted by coder View Post
                  The real head-scratcher is why this wasn't fixed sooner.
                  I can't speak for all the (apparently pretty poor) "defensive" code in there, but you you only need a handful of places that assume pages are 4K (or any other specific size) to run into all kinds of weird/broken/whatever behavior, all of which will always be blamed on the patchset rather than the defective code. Tracking that sort of thing down is a lot more work than writing a new allocator is.

                  The kernel "shouldn't" have much of that, but half the gnu utils still think a disk sector is 512 bytes, so...

                  Comment


                  • #10
                    Originally posted by arQon View Post

                    I can't speak for all the (apparently pretty poor) "defensive" code in there, but you you only need a handful of places that assume pages are 4K (or any other specific size) to run into all kinds of weird/broken/whatever behavior, all of which will always be blamed on the patchset rather than the defective code. Tracking that sort of thing down is a lot more work than writing a new allocator is.

                    The kernel "shouldn't" have much of that, but half the gnu utils still think a disk sector is 512 bytes, so...
                    Hopefully anyone using pages also uses PAGE_SIZE / PAGE_ORDER for memory size calculations, so cleaning up the code and moving it to folios API will be easy.
                    That said, just checked my own (proprietary) tree, and a lot of stuff hangs on having 4096 byte pages.

                    Oh, well, guess I'll call it job security
                    oVirt-HV1: Intel S2600C0, 2xE5-2658V2, 128GB, 8x2TB, 4x480GB SSD, GTX1080 (to-VM), Dell U3219Q, U2415, U2412M.
                    oVirt-HV2: Intel S2400GP2, 2xE5-2448L, 120GB, 8x2TB, 4x480GB SSD, GTX730 (to-VM).
                    oVirt-HV3: Gigabyte B85M-HD3, E3-1245V3, 32GB, 4x1TB, 2x480GB SSD, GTX980 (to-VM).
                    Devel-2: Asus H110M-K, i5-6500, 16GB, 3x1TB + 128GB-SSD, F33.

                    Comment

                    Working...
                    X