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

MySQL Bug#72718 - CACHE_LINE_SIZE in innodb should be 128 on POWER

Details

    Description

      The following patch is suggested by Stewart Smith:

      Define CACHE_LINE_SIZE in ut0counter.h to 128 on POWER
       
      Index: mysql-5.6.17/storage/innobase/include/ut0counter.h
      ===================================================================
      --- mysql-5.6.17.orig/storage/innobase/include/ut0counter.h
      +++ mysql-5.6.17/storage/innobase/include/ut0counter.h
      @@ -32,7 +32,11 @@ Created 2012/04/12 by Sunny Bains
       #include "os0thread.h"
       
       /** CPU cache line size */
      +#ifdef __powerpc__
      +#define CACHE_LINE_SIZE                128
      +#else
       #define CACHE_LINE_SIZE                64
      +#endif
       
       /** Default number of slots to use in ib_counter_t */
       #define IB_N_SLOTS             64

      Attachments

        Issue Links

          Activity

            We need to double check proper way of determining CPU cache line size. Plus XtraDB had one more source file with CACHE_LINE_SIZE definition/

            svoj Sergey Vojtovich added a comment - We need to double check proper way of determining CPU cache line size. Plus XtraDB had one more source file with CACHE_LINE_SIZE definition/

            ok to push for now
            Just add to the comment that the change was suggested by stewart smith.

            monty Michael Widenius added a comment - ok to push for now Just add to the comment that the change was suggested by stewart smith.

            ok to push after comment change

            monty Michael Widenius added a comment - ok to push after comment change

            Adjusting cache line size is the right thing in theory. But in practice we didn't see any noteworthy throughput increase with this patch. We'll get back to this patch when we have proof that smaller cache line size negatively affects performance.

            svoj Sergey Vojtovich added a comment - Adjusting cache line size is the right thing in theory. But in practice we didn't see any noteworthy throughput increase with this patch. We'll get back to this patch when we have proof that smaller cache line size negatively affects performance.

            Axel reported that this patch gives ~5% throughput increase @ 20cores.

            svoj Sergey Vojtovich added a comment - Axel reported that this patch gives ~5% throughput increase @ 20cores.

            revno: 4427
            revision-id: svoj@mariadb.org-20141003133846-h7cjr7mbk653q450
            parent: bar@mnogosearch.org-20141002114820-2jqqgtje33dx4679
            committer: Sergey Vojtovich <svoj@mariadb.org>
            branch nick: 10.0-mdev6533
            timestamp: Fri 2014-10-03 17:38:46 +0400
            message:
              MDEV-6533 - MySQL Bug#72718 - CACHE_LINE_SIZE in innodb should be 128 on POWER
             
              This patch is suggested by Stewart Smith.
              Define CACHE_LINE_SIZE to 128 on POWER.

            svoj Sergey Vojtovich added a comment - revno: 4427 revision-id: svoj@mariadb.org-20141003133846-h7cjr7mbk653q450 parent: bar@mnogosearch.org-20141002114820-2jqqgtje33dx4679 committer: Sergey Vojtovich <svoj@mariadb.org> branch nick: 10.0-mdev6533 timestamp: Fri 2014-10-03 17:38:46 +0400 message: MDEV-6533 - MySQL Bug#72718 - CACHE_LINE_SIZE in innodb should be 128 on POWER   This patch is suggested by Stewart Smith. Define CACHE_LINE_SIZE to 128 on POWER.
            danblack Daniel Black added a comment - similar: https://github.com/mysql/mysql-server/pull/37 for aarch64 too

            People

              svoj Sergey Vojtovich
              svoj Sergey Vojtovich
              Votes:
              0 Vote for this issue
              Watchers:
              4 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.