A Practical Energy Reduction Technique Exploiting Synchronization Cycles for Multi-core Processors

Loading...
Thumbnail Image

Authors

Singh, Ripudaman

Advisors

License

DOI

Type

Thesis

Journal Title

Journal ISSN

Volume Title

Publisher

Grantor

Abstract

Spinning had been the classical way of implementing synchronization primitives (i.e., barriers, locks and conditions) in pthread library before the recent adoption of fast user space mutex (futex). While improving energy efficiency has been greatly emphasized, no study has compared these two implemen-tations in such a context for multi-core processors. In this paper, we first demonstrate that spinning can provide up to 31% higher performance than futex for 2- to 8-core processors. Since spinning cores do not perform any useful work, prior studies proposed to put processors into low-power states to reducing power consumption. However, such approaches require expensive per-core V/F domain for multi-core processors and/or a special mechanism to predict the duration of each synchronization event, respectively. Second, we exhibit that typical duration of most synchronization events, however, are very short. This potentially limits the benefit of such approaches that are only applicable to synchronization events with relatively long durations due to the performance penalty associated with entering/exiting the low-power states. Finally, we propose an effective but inexpensive technique, scaling only F of spinning cores to a special level (i.e., F/2N). Since such an F change is almost immediate, our tech-nique can exploit even short spin cycles with negligible performance impact. Furthermore, it requires neither expensive per-core V/F domains nor the special prediction mechanism while achieving more than 95% of energy reduction by existing techniques augmented with the perfect predictor that deter-mine the exact duration of every synchronization event.

Description

Keywords

Related Material and Data

Citation

Sponsorship

Endorsement

Review

Supplemented By

Referenced By