Uploaded image for project: 'MariaDB Server'
  1. MariaDB Server
  2. MDEV-31953

madvise(frame, srv_page_size, MADV_FREE) is causing a performance regression

    XMLWordPrintable

Details

    Description

      In MDEV-25341 (MariaDB Server 10.11.0), some calls to madvise() with MADV_FREE were added.

      If the call in buf_LRU_block_free_non_file_page() is committed out, the throughput in an I/O bound HammerDB benchmark would improve by 6% to 18%, depending on the CPU microarchitecture.

      It could be best to revert this code for now. A better solution might be doable as part of a larger refactoring (MDEV-25340, MDEV-29445). Instead of invoking madvise(MADV_FREE) on individual buffer pages, we might invoke it on larger chunks at a time. There could also be an explicit SQL statement for defragmenting or freeing the buffer pool.

      Attachments

        Issue Links

          Activity

            People

              danblack Daniel Black
              marko Marko Mäkelä
              Votes:
              1 Vote for this issue
              Watchers:
              6 Start watching this issue

              Dates

                Created:
                Updated:
                Resolved:

                Git Integration

                  Error rendering 'com.xiplink.jira.git.jira_git_plugin:git-issue-webpanel'. Please contact your Jira administrators.