Hotspot 偏向锁的评估与改进(二)

118 阅读1分钟

第一章

1.2 问题

1.2.1 动机

相比于普通指令(regular instruments),现在CPU架构缩短了相关原子指令的延迟.而这些延迟正是最初引入偏向锁的主要原因.换句话说,偏向锁带来的好处与原子指令带来的延迟直接成正比,如果延迟降低了,偏向锁的需求也就降低了.偏向锁可行,那延迟一定要能抵消必然增加的代码复杂性,以及风险和昂贵的撤销成本.

Hotspot虚拟机当前实现了偏向锁.偏向锁撤销过程需要一个全局安全点,挂起所有而绝非几个相关的线程.偏向锁新的探索方式建议为锁设置一个学习或抽样阶段,通过减少撤销次数潜在增加整体性能.

1.2.2 论述

现在的硬件还需要偏向锁吗,如果需要,那Hostspot虚拟机中偏向锁的撤销机制和探索方法如何改进呢?

1.2.3 目标

本项目的目的是通过基准测试来评估Hotspot虚拟机相对于其他几种替代方案的实现. 这包含了Hotspot不使用偏向锁以及JRockit中使用的类似懒解锁的设计.

改进偏向锁的算法也已得到研究,改进和发展.基准测试作为基本手段用于判断这种改进是否成功.