Commit 88d9fbb4 authored by Marko Mäkelä's avatar Marko Mäkelä

Disable adaptive spinning on buf_pool.mutex

During the testing of MDEV-14425, buf_pool.mutex and log_sys.mutex
were identified as the main bottlenecks for write workloads.
Let us disable spinning also for buf_pool.mutex, except on ARMv8
where spinning was enabled for log_sys.mutex
in commit f7684f0c (MDEV-26855).
This was tested on AMD64 and recommended by Axel Schwenke.

According to Krunal Bauskar, removing the spinloops did not improve
performance in his tests on ARMv8.
parent 5d54fd61
......@@ -1176,7 +1176,11 @@ bool buf_pool_t::create()
while (++chunk < chunks + n_chunks);
ut_ad(is_initialised());
#if defined(__aarch64__)
mysql_mutex_init(buf_pool_mutex_key, &mutex, MY_MUTEX_INIT_FAST);
#else
mysql_mutex_init(buf_pool_mutex_key, &mutex, nullptr);
#endif
UT_LIST_INIT(LRU, &buf_page_t::LRU);
UT_LIST_INIT(withdraw, &buf_page_t::list);
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment