发明名称 一种降低多线程程序功耗的方法及系统
摘要 本发明涉及一种降低多线程程序功耗的方法及系统,在锁预测表中记录执行线程第一次访问锁的锁信息。对已经记录的锁和临界区进行访问时,执行线程一进入临界区就开始计时,而其他需要访问的线程先后进入锁队列。根据锁持有时间预测表中记录的锁持有时间,同时考虑线程的优先级,控制未进入临界区的线程相应处理器核进入合适的低功耗模式。当接近锁持有时间预测表中的记录时,及时恢复将要进入临界区的优先级最高线程相应处理器核的功耗模式,使得该线程在临界区正常执行。当执行线程离开临界区时,更新锁持有时间预测表中相应的锁持有时间。当被选中的线程进入临界区时,调节锁队列中优先级最高的线程相应处理器核的功耗模式。
申请公布号 CN103324269A 申请公布日期 2013.09.25
申请号 CN201310233401.7 申请日期 2013.06.13
申请人 中国科学院计算技术研究所 发明人 尹一笑;陈云霁;胡伟武
分类号 G06F1/32(2006.01)I 主分类号 G06F1/32(2006.01)I
代理机构 北京律诚同业知识产权代理有限公司 11006 代理人 祁建国;梁挥
主权项 一种降低多线程程序功耗的方法,其特征在于,包括多线程抢锁步骤:(1)在锁预测表中记录执行线程第一次访问锁的锁信息,包括锁地址、临界区起始指令的PC值、线程号和锁持有时间;(2)当多线程对已经记录的相同锁和临界区进行访问时,执行线程一进入临界区就开始计时;(3)被阻塞线程先后进入锁队列,根据锁持有时间预测表中记录的锁持有时间,同时考虑线程的优先级,控制被阻塞线程相应处理器核分别进入合适的低功耗模式。
地址 100190 北京市海淀区中关村科学院南路6号