• Krunal Bauskar's avatar
    MDEV-26855: Enable spinning for log_sys_mutex and log_flush_order_mutex · f7684f0c
    Krunal Bauskar authored
    As part of MDEV-26779 we first discovered the effect of enabling spinning for
    some critical mutex. MDEV-26779 tried enabling it for lock_sys.wait_mutex and
    observed a good gain in performance.
    
    In yet another discussion, Mark Callaghan pointed a reference to pthread based
    mutex spin using PTHREAD_MUTEX_ADAPTIVE_NP (MDEV-26769 Intel RTM).
    
    Given the strong references, Marko Makela as part of his comment in #1923
    pointed an idea to enable spinning for other mutexes. Based on perf profiling
    we decided to explore spinning for log_sys_mutex and log_flush_order_mutex as
    they are occupying the top slots in the contented mutex list.
    
    The evaluation showed promising results for ARM64 but not for x86.
    So a patch is here-by proposed to enable the spinning of the mutex for
    ARM64-based platform.
    f7684f0c
log0log.cc 37.5 KB