首页> 外文会议>Languages and compilers for parallel computing >Minimum Lock Assignment: A Method for Exploiting Concurrency among Critical Sections
【24h】

Minimum Lock Assignment: A Method for Exploiting Concurrency among Critical Sections

机译:最小锁分配:一种用于关键部分之间并发的方法

获取原文
获取原文并翻译 | 示例

摘要

In this paper we propose a lock assignment technique to simplify the mutual exclusion enforcement in multithreaded programs. Programmers are allowed to annotate the regions of code that are expected to be mutually exclusive as critical sections, without using explicit locks. The compiler then automatically infers an assignment of the minimum number of locks to critical sections by solving the Minimum Lock Assignment (MLA) problem so as to enforce mutual exclusion without any loss of concurrency. We show that the MLA problem is NP-hard. We have proposed a heuristic to solve the MLA problem, and tested the optimality of the heuristic with the Integer Linear Programming (ILP) solver. We have also tested the efficiency of the heuristic using scientific applications, from which we obtain up to 30% performance gain with respect to the programs in which all critical sections are controlled by a single lock.
机译:在本文中,我们提出了一种锁分配技术,以简化多线程程序中的互斥实施。允许程序员在不使用显式锁的情况下注释应该互斥为关键部分的代码区域。然后,编译器通过解决最小锁分配(MLA)问题自动推断出对关键节的最小锁分配,以便在不损失任何并发性的情况下实现互斥。我们证明MLA问题是NP难题。我们提出了一种启发式算法来解决MLA问题,并使用整数线性规划(ILP)求解器测试了启发式算法的最优性。我们还使用科学应用程序测试了启发式方法的效率,相对于所有关键部分都由一个锁控制的程序,我们从中获得了高达30%的性能提升。

著录项

相似文献

  • 外文文献
  • 中文文献
  • 专利
获取原文

客服邮箱:kefu@zhangqiaokeyan.com

京公网安备:11010802029741号 ICP备案号:京ICP备15016152号-6 六维联合信息科技 (北京) 有限公司©版权所有
  • 客服微信

  • 服务号