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

Performance schema duplicates rarely executed code for mutex operations

Details

    Description

      The PERFORMANCE_SCHEMA wrapper for mutex and rw-lock operations is causing a lot of unlikely code to be inlined in each invocation. The impact of this may have been emphasized in MariaDB 10.6, because InnoDB now uses the common implementation of mutexes and condition variables (MDEV-21452).

      By default, we build with cmake -DPLUGIN_PERFSCHEMA enabled, but at runtime no instrumentation will be enabled. Similar to MDEV-22721, we’d better avoid inlining the rarely executed code in order to reduce the code size and to improve the efficiency of the instruction cache.

      Attachments

        Issue Links

          Activity

            marko Marko Mäkelä created issue -
            marko Marko Mäkelä made changes -
            Field Original Value New Value
            marko Marko Mäkelä made changes -
            marko Marko Mäkelä made changes -
            Status Open [ 1 ] In Progress [ 3 ]

            axel, your test with performance schema disabled at runtime did not show any regression. Can you please repeat the test with performance schema enabled at runtime?

            marko Marko Mäkelä added a comment - axel , your test with performance schema disabled at runtime did not show any regression. Can you please repeat the test with performance schema enabled at runtime?
            marko Marko Mäkelä made changes -
            Assignee Marko Mäkelä [ marko ] Axel Schwenke [ axel ]
            axel Axel Schwenke added a comment -

            commit 522fd37c3e0 vs. da8bc5ee9b0

            axel Axel Schwenke added a comment - commit 522fd37c3e0 vs. da8bc5ee9b0
            marko Marko Mäkelä made changes -
            issue.field.resolutiondate 2021-03-02 12:40:42.0 2021-03-02 12:40:42.329
            marko Marko Mäkelä made changes -
            Fix Version/s 10.6.0 [ 24431 ]
            Fix Version/s 10.6 [ 24028 ]
            Assignee Axel Schwenke [ axel ] Marko Mäkelä [ marko ]
            Resolution Fixed [ 1 ]
            Status In Progress [ 3 ] Closed [ 6 ]
            serg Sergei Golubchik made changes -
            Workflow MariaDB v3 [ 119472 ] MariaDB v4 [ 158954 ]
            marko Marko Mäkelä made changes -

            People

              marko Marko Mäkelä
              marko Marko Mäkelä
              Votes:
              0 Vote for this issue
              Watchers:
              2 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.