课题基金 / 基金详情

CAREER: Practical Language and System Support for Reliable Concurrent Software

CAREER: Practical Language and System Support for Reliable Concurrent Software
职业:可靠并发软件的实用语言和系统支持
批准号:
1253703
负责人:
Michael Bond
金额:
$55.51万
依托单位:
依托单位国家:
美国
项目类别:
Continuing Grant
财政年份:
2013
资助国家:
美国
项目状态:
已结题
起止时间:
2013-03-01 至 2019-02-28

项目摘要

项目成果

Michael Bond的其他基金

相似基金

相关文献

中文摘要
翻译
在过去的几十年里,计算机系统的性能呈指数级增长,使得科学、工程、健康和其他领域的关键问题取得了进展。然而,由于功率、热量和导线长度的限制,微处理器现在每一代都在增加更多的内核,而不是更快的内核。因此,通用软件必须变得更加并发才能获得持续的性能提升。不幸的是,编写和调试共享内存并发软件是出了名的困难。一个关键问题是,大多数共享内存编程语言和软件系统不能很好地支持正确的并发执行。他们缺乏这样的支持,因为所有已知的方法都是不切实际的。该项目旨在为商品系统中的并发正确性提供实际支持。它开发在现有商用硬件上执行的低开销、纯软件方法。这些方法帮助程序员编写和调试更可靠、可伸缩的软件,并通过消除所有类型的错误自动使软件更可靠。这些好处有可能使社会继续依赖软件系统来完成日益复杂、关键的任务。此外,该项目还包括教育和拓展活动,帮助学生学习并行软件系统,增强思想和成果的传播,并扩大计算机科学的参与。该项目开发了实用的、始终在线的动态检查和执行关键并发正确性属性:原子性、顺序一致性和多线程确定性。现有的方法是不切实际的,因为自定义的基于硬件的方法是不切实际的,而基于软件的方法使程序变慢是不可接受的。该项目建立在对高效并发控制机制的初步研究基础之上,该机制消除了非冲突访问(这是绝大多数访问)的昂贵同步。开发新的分析和系统提出了重大的新挑战,既要应用新的并发控制机制,又要使这些分析和系统的其他方面对生产系统足够有效。例如,精确的冲突检测必须跟踪先前的访问,并应对并发控制机制固有的不精确。该项目旨在使分析和系统既实用又灵活,这需要系统地研究如何降低冲突和非冲突访问的成本。预期的贡献包括第一个实用的永远在线的原子性检查器、第一个实用的多线程记录重放系统、第一个实用的顺序一致性检查器和第一个提供多线程系统确定性的实用系统。除了更广泛的影响之外,这些贡献还有可能促成对高效的基于软件的分析和支持并发正确性的系统的新研究。
英文摘要
Over the past several decades, computer system performance has grown exponentially, enabling progress on key problems in science, engineering, health, and other areas. Owing to power, heat, and wire length limitations, however, microprocessors are now adding more, instead of faster, cores with each successive generation. As a result, general-purpose software must become more concurrent to see continued performance gains. Unfortunately, writing and debugging shared-memory concurrent software is notoriously difficult. A key problem is that most shared-memory programming languages and software systems do not provide good support for correct concurrent execution. They lack such support because all known approaches are impractical. This project aims to provide practical support for concurrency correctness in commodity systems. It develops low-overhead, software-only approaches that execute on existing commodity hardware. These approaches help programmers write and debug more reliable, scalable software, and to make software more reliable automatically by eliminating whole classes of errors. These benefits have the potential to enable society to continue to rely on software systems for increasingly complex, critical tasks. Furthermore, the project includes educational and outreach activities that help educate students in concurrent software systems, enhance dissemination of the ideas and outcomes, and broaden participation in computer science.The project develops practical, always-on dynamic checking and enforcement of key concurrency correctness properties: atomicity, sequential consistency, and multithreaded determinism. Existing approaches are impractical because custom hardware-based approaches are unrealistic, and software-based approaches slow programs unacceptably. The project builds on preliminary work on an efficient concurrency control mechanism that elides expensive synchronization from non-conflicting accesses, which are the vast majority of accesses. Developing new analyses and systems presents significant new challenges, both to apply the novel concurrency control mechanism and to make other aspects of these analyses and systems efficient enough for production systems. For example, precise conflict detection must track prior accesses and contend with imprecision inherent to the concurrency control mechanism. The project aims to make the analyses and systems both practical and flexible, which requires systematically investigating how to reduce the costs of conflicting and non-conflicting accesses. Expected contributions are the first practical always-on atomicity checker, the first practical multithreaded record & replay system, the first practical sequential consistency checker, and the first practical system providing multithreaded system determinism. In addition to broader impacts, the contributions have the potential to enable new research on efficient software-based analyses and systems that support concurrency correctness.
期刊论文(0)
专著(0)
科研奖励(0)
会议论文
CNS Core: Small: Rethinking High-Performance Persistent Transactions
  • 批准号:
    2106117
  • 项目类别:
    Standard Grant
  • 资助金额:
    $50.0万
  • 财政年份:
    2021
  • 负责人:
    Michael Bond
  • 依托单位:
XPS: FULL: Collaborative Research: Rethinking Architecture Support for Memory Consistency
  • 批准号:
    1629126
  • 项目类别:
    Standard Grant
  • 资助金额:
    $34.39万
  • 财政年份:
    2016
  • 负责人:
    Michael Bond
  • 依托单位:
SHF: Small: Collaborative Research: Hybrid Static-Dynamic Analyses for Region Serializability
  • 批准号:
    1421612
  • 项目类别:
    Standard Grant
  • 资助金额:
    $36.5万
  • 财政年份:
    2014
  • 负责人:
    Michael Bond
  • 依托单位:
CSR: Small: Making Software Transactional Memory More than a Research Toy
  • 批准号:
    1218695
  • 项目类别:
    Standard Grant
  • 资助金额:
    $40.0万
  • 财政年份:
    2012
  • 负责人:
    Michael Bond
  • 依托单位:
海外基金