Configuring Thread Concurrency for InnoDB Table 15.4 Core File Configuration Scenarios core_file  variable innodb_buffer_pool_in_core_file variable madvise() MADV_DONTDUMP Support Outcome OFF (default) Not relevant to outcome Not relevant to outcome Core file is not generated ON ON (default) Not relevant to outcome Core file is generated with buffer pool pages ON OFF Yes Core file is generated without buffer pool pages ON OFF No Core file is not generated,  core_file is disabled, and a warning is written to the server error log innodb_page_size  Setting Buffer Pool Pages Included ( innodb_buffer_pool_in_core_file=ON ) Buffer Pool Pages Excluded ( 4KB 2.1GB 0.9GB 64KB 1.7GB 0.7GB The reduction in core file size achieved by disabling the  innodb_buffer_pool_in_core_file  variable depends on the size of the buffer pool, but it is also affected by the  InnoDB  page size. A smaller page size means more pages are required for the same amount of data, and more pages means more page metadata. The following table provides size reduction examples that you might see for a 1GB buffer pool with different pages sizes. Table 15.5 Core File Size with Buffer Pool Pages Included and Excluded 15.8.4 Configuring Thread Concurrency for InnoDB InnoDB  uses operating system threads to process requests from user transactions. (Transactions may issue many requests to  InnoDB  before they commit or roll back.) On modern operating systems and servers with multi-core processors, where context switching is efficient, most workloads run well without any limit on the number of concurrent threads. In situations where it is helpful to minimize context switching between threads,  InnoDB  can use a number of techniques to limit the number of concurrently executing operating system threads (and thus the number of requests that are processed at any one time). When  InnoDB  receives a new request from a user session, if the number of threads concurrently executing is at a pre-defined limit, the new request sleeps for a short time before it tries again. A request that cannot be rescheduled after the sleep is put in a first- in/first-out queue and eventually is processed. Threads waiting for locks are not counted in the number of concurrently executing threads. You can limit the number of concurrent threads by setting the configuration parameter innodb_thread_concurrency . Once the number of executing threads reaches this limit, additional threads sleep for a number of microseconds, set by the configuration parameter innodb_thread_sleep_delay , before being placed into the queue. You can set the configuration option  innodb_adaptive_max_sleep_delay  to the highest value you would allow for  innodb_thread_sleep_delay , and  InnoDB  automatically adjusts innodb_thread_sleep_delay  up or down depending on the current thread-scheduling activity. This dynamic adjustment helps the thread scheduling mechanism to work smoothly during times when the system is lightly loaded and when it is operating near full capacity. 3124