计算机科学与探索 ›› 2017, Vol. 11 ›› Issue (9): 1429-1438.DOI: 10.3778/j.issn.1673-9418.1609034

• 系统软件与软件工程 • 上一篇    下一篇

虚拟环境下硬件事务内存辅助的同步机制

余倩倩+,董明凯,陈海波   

  1. 上海交通大学 并行与分布式系统研究所,上海 200240
  • 出版日期:2017-09-01 发布日期:2017-09-06

Hardware Transactional Memory Assisted Synchronization Mechanism in Virtualized Environment

YU Qianqian+, DONG Mingkai, CHEN Haibo   

  1. Institute of Parallel and Distributed Systems, Shanghai Jiao Tong University, Shanghai 200240, China
  • Online:2017-09-01 Published:2017-09-06

摘要: 在虚拟化系统中,双重调度问题普遍存在。过度负载的现象进一步加剧了双重调度问题,造成了不可忽视的性能下降。如何在保护系统公平性的同时,缓解双重调度问题带来的负面影响,提高系统的整体性能,成为一个重要的课题。通过研究双重调度引发的同步机制效率问题,结合硬件事务内存的特点,为虚拟机内核设计了新的同步机制SPINRTM。一方面,SPINRTM基于硬件事务内存不可被打断的特性,保护了虚拟机内的临界区间,使其不被打断,有效缓解了双重调度问题;另一方面,SPINRTM结合了传统的排队自旋锁,保护了硬件事务内存的运行效率,也维护了系统的公平性。测试证明,在超负载的情况下,SPINRTM能够在保护系统公平性的同时,提高系统的整体性能。

关键词: 虚拟化, 硬件事务内存, 同步机制

Abstract: In a virtualized environment, there is a common existence of double scheduling problem. Moreover, over-commitment exacerbates the problem, and causes a significant performance downgrade. As a result, how to alleviate this problem while protecting the system’s fairness and improve its overall performance has become a critical issue. This paper studies the performance issue of synchronization mechanism caused by double scheduling problem, and proposes a new synchronization mechanism SPINRTM with the help of hardware transactional memory. On the one hand, SPINRTM takes advantage of hardware transactional memory to protect critical sections from being preempted, which effectively alleviates double scheduling problem. On the other hand, it is combined with ticket spinlock to protect the efficiency of hardware transactional memory and guarantee the fairness of the system. Evaluation results show that SPINRTM can protect the system??s fairness and improve its performance at the same time when resources are overcommitted.

Key words: virtualization, hardware transactional memory, synchronization mechanism