Uploaded image for project: 'Percona Server for MySQL'
  1. Percona Server for MySQL
  2. PS-5596

Make memory allocation with NUMA enabled multi-threaded

    Details

    • Type: Bug
    • Status: Open
    • Priority: Low
    • Resolution: Unresolved
    • Affects Version/s: 5.6.43-84.3, 5.7.25-28, 8.0.x
    • Fix Version/s: None
    • Component/s: None
    • Labels:

      Description

      Currently, memory allocation is done on a single thread.

      err = buf_pool_init(srv_buf_pool_size, static_cast<bool>(srv_numa_interleave),
                          srv_buf_pool_instances);
      
      
      buf_pool_init(
      /*==========*/
          ulint    total_size,    /*!< in: size of the total pool in bytes */
          bool    populate,    /*!< in: virtual page preallocation */
          ulint    n_instances)    /*!< in: number of instances */
      {
      

      The suggestion is to create threads for memory allocation based on the number of NUMA sockets to improve performance.

        Smart Checklist

          Attachments

            Issue Links

              Activity

                People

                • Assignee:
                  marcelo.altmann Marcelo Altmann
                  Reporter:
                  vinicius.grippa Vinicius Grippa
                • Votes:
                  3 Vote for this issue
                  Watchers:
                  7 Start watching this issue

                  Dates

                  • Created:
                    Updated:

                    Time Tracking

                    Estimated:
                    Original Estimate - Not Specified
                    Not Specified
                    Remaining:
                    Remaining Estimate - Not Specified
                    Not Specified
                    Logged:
                    Time Spent - 1 hour, 30 minutes
                    1h 30m