Title
Catnap: A Backoff Scheme For Kernel Spinlocks In Many-Core Systems
Abstract
As the number of cores equipped in a system grows, the impact of the spinlock waiting inside the operating system (OS) kernel on the performance and energy efficiency of a system worsens. In particular, it deteriorates the effectiveness of simultaneous multithreading (SMT). Because spinlocks are indispensable in OS kernels, it is necessary to suppress the spin wait overhead in the many-core systems. To address this issue, we propose the catnap spinlock that exploits the ACPI-C state, which is named as the catnap state and is induced by the <monospace>MONITOR</monospace>/<monospace>MWAIT</monospace> instruction pair. The catnap state releases the processor resources while deceiving the kernel that the thread is iterating a busy-waiting loop. Because entering and exiting from the C-state require considerable time, we applied the catnap loop only to the non-head waiters not to delay the lock handover operation. Furthermore, we selectively applied the catnap spinlock to the lock instances for sufficiently long critical sections based on the observation made in profiling runs. The proposed scheme was implemented in the Linux kernel and evaluated in a many-core processor system with a few workloads from the <italic>PARSEC</italic> and <italic>Re-aim</italic> benchmark suites. Our evaluation showed that the proposed scheme improved the performance by up to 33.59 & x0025; and reduced energy consumption by 39.11 & x0025;.
Year
DOI
Venue
2020
10.1109/ACCESS.2020.2970998
IEEE ACCESS
Keywords
DocType
Volume
Spinlocks, symmetric multithreading, energy efficiency, synchronization, many-core
Journal
8
ISSN
Citations 
PageRank 
2169-3536
0
0.34
References 
Authors
0
4
Name
Order
Citations
PageRank
Youngjoo Woo100.34
Sunghun Kim200.34
Cheolgi Kim37513.38
Euiseong Seo435424.20