Skip to content

zhuyifan2013/pmtlock

 
 

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

23 Commits
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Preemptable Ticket Spinlock (pmtlock)

Jiannan Ouyang [email protected] 06/2013

Introduction

Current stable: pmtlock-v2.0

Preemptable Ticket Spinlock (pmtlock) is a lock algorithm designed for virtual environment proposed by Jiannan Ouyang and John Lange in their VEE 2013 paper, "Preemptable Ticket Spinlocks: Improving Consolidated Performance in the Cloud"

This algorithm tackles the lock preemption problem in virtual environment, more specifically, the lock waiter preemption problem. The intuition is to sacrifice fairness to ensure forward progress upon preemption by allow waiters to acquire locks out of order when an earlier waiter is preempted. It thus prevents later waiters from waiting on an available lock.

For more details, please refer to our paper

Tools

A kernel module is provided to tune timeout parameter online for v2.0 patch.

Updates

01/10/2013

v1.0 was published in the VEE 2013 paper.

v2.0 patch fixes a wrapped-around ticket values bug. It has been tested on 8 core machine running kernel 3.5 and 32 core machines with kernel 3.11.

11/22/2013

Linux kernel 3.12 upstreamed the pv_lock patch, which is not compatible with current pmtlock implementation. Porting work is still under going.

About

preemptable ticket spinlock

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published