课题基金 / 基金详情

SHF:Small: Data Triggered Threads for Removing Redundant Execution and Increasing Parallelism

SHF:Small: Data Triggered Threads for Removing Redundant Execution and Increasing Parallelism
SHF:Small:数据触发线程,用于消除冗余执行并增加并行性
批准号:
1219059
负责人:
Dean Tullsen
金额:
$50.0万
依托单位国家:
美国
项目类别:
Standard Grant
财政年份:
2012
资助国家:
美国
项目状态:
已结题
起止时间:
2012-06-01 至 2016-05-31

项目摘要

项目成果

Dean Tullsen的其他基金

相似基金

相关文献

中文摘要
翻译
随着高性能通用处理器进一步进入芯片多处理器时代,随着核心数量的不断增加,该行业面临着两大挑战。第一个问题是,当许多可用的软件不容易并行化时,如何有效地使用硬件并行性。第二个挑战是管理这些处理器所消耗的功率和能量。考虑到有限的功率,我们只能通过提高每瓦特的性能来扩展性能。数据触发线程(DTT)是一种新的编程和执行模型,旨在解决这两个问题。任何利用并行性的传统架构都是通过基于控制流启动新的并行计算来实现的?也就是执行(即核心?S程序计数器)到达fork指令或可能是一个pthread创建调用。当内存中的数据发生变化时,DTT会生成一个新线程。程序员指定的函数不附加到一组调用地点(程序中调用函数的地方),而是附加到数据结构类型中的变量甚至字段。当程序修改该变量时,自动生成另一个核心(或多线程上下文)中的线程来执行数据触发的线程,其中包含依赖于更改数据的代码。与描述并行性的传统机制相比,数据触发线程提供了两个关键优势。首先,一旦源数据被修改,相关计算立即可用。第二个问题是,只有在触发数据实际被修改时才需要执行相关计算。在许多情况下并非如此。这项工作利用了一个巨大的新机会来消除冗余计算。在C SPEC基准测试中,78%的负载是冗余的(这意味着相同的负载获取的值与上次访问相同地址时的值相同)。对这些值进行运算的计算通常也是冗余的。计算机体系结构和相关领域的研究人员一直致力于降低每条指令的功耗,并取得了稳步进展。不过,不执行这些指令要好得多。没有任何动力或能量优化能打败它。这项研究正在探索利用这种新的执行模型的许多机会,包括:(1)通过架构支持的数据触发线程,(2)仅软件的数据触发线程,(3)数据触发线程来补充现有的并行应用程序,(4)在编译器中自动生成数据触发线程,(5)使用数据触发线程的编程经验?从头开始编写的DTT代码与为使用DTT而修改的程序有何不同,程序员新手将生成哪种代码,以及这对架构和软件运行时实现有何影响。处理器的一代到一代的性能扩展对国家和世界经济至关重要。不仅仅是硬件供应商,还有每次有人升级他们的系统就销售产品的软件行业。数据触发线程编程和执行模型代表了性能扩展的两个关键障碍的解决方案。它通过给程序员提供一种表达并行性的新方法来解决并行危机。它以最有效的方式解决了电力问题?通过不执行不需要做的计算。
英文摘要
As high-performance general-purpose processors advance further into the chip multiprocessor era, with ever increasing core counts, the industry faces two huge challenges. The first is how to effectively use that hardware parallelism when much of the available software does not parallelize easily. The second challenge is managing the power and energy consumed by these processors. Given constrained power, we can only scale performance if we improve the performance delivered per Watt. Data-triggered threads (DTT) is a new programming and execution model designed to address both of these issues. Any conventional architecture that exploits parallelism does so by initiating new parallel computation based on control flow ? that is, execution (i.e., the core?s program counter) reaches a fork instruction or maybe a pthread create call. DTT instead spawns a new thread when data in memory is changed. The programmer specifies a function that is not attached to a set of call sites (a place in the program where the function is called), but rather is attached to a variable or even a field in a data structure type. When that variable is modified by the program, a thread in another core (or multithreading context) is automatically spawned to execute the data-triggered thread, containing code that depends on the changed data.Data-triggered threads provide two key advantages over traditional mechanisms for describing parallelism. The first is that the dependent computation becomes available immediately, as soon as the source data is modified. The second is that the dependent computation need only be executed if the triggering data is actually modified ? in many cases it is not. This work exploits a huge new opportunity to eliminate redundant computation. In the C SPEC benchmarks, 78% of loads are redundant (meaning the same load fetches the same value as the last time it went to the same address). The computation which operates on those values is often also redundant. Researchers in computer architecture and related areas have been working to reduce the power consumed by each instruction, and have made steady progress. It is far preferable, though, to just not execute those instructions ? no power or energy optimization will beat that.This research is exploring a number of opportunities to exploit this new execution model, including: (1) Data triggered threads via architectural support, (2) software-only data triggered threads, (3) data triggered threads to complement existing parallel applications, (4) automatic generation of data triggered threads in the compiler, and (5) programming experience with data triggered threads ? how does DTT code written from scratch differ from programs modified to use DTT, what kind of code will novice programmers produce, and how does that impact the architectural and software runtime implementations.Generation-to-generation performance scaling of processors is critically important to the national and world economy ? not just to hardware vendors, but also the software industries that sell products every time someone upgrades their system. The data triggered threads programming and execution model represents solutions to the two key barriers to performance scaling. It addresses the parallelism crisis by giving the programmer a new way to express parallelism. It addresses the power problem in the most effective way possible ? by not executing computation that does not need to be done.
期刊论文(0)
专著(0)
科研奖励(0)
会议论文
FoMR: Heterogeneity Under-The-Hood: Leveraging the Decoder for Highly Specialized, Programmer Transparent Microarchitectures
  • 批准号:
    1823444
  • 项目类别:
    Standard Grant
  • 资助金额:
    $1.0万
  • 财政年份:
    2018
  • 负责人:
    Dean Tullsen
  • 依托单位:
Context-Sensitive Decoding: Exploiting Translated ISAs for Security, Safety, Energy, and Performance
  • 批准号:
    1652925
  • 项目类别:
    Standard Grant
  • 资助金额:
    $30.0万
  • 财政年份:
    2016
  • 负责人:
    Dean Tullsen
  • 依托单位:
SHF: Medium: Bridging the Software/Hardware Gap Towards Efficient, Heterogeneous, and Predictable Datacenters
  • 批准号:
    1302682
  • 项目类别:
    Standard Grant
  • 资助金额:
    $75.0万
  • 财政年份:
    2013
  • 负责人:
    Dean Tullsen
  • 依托单位:
SHF: Small: Architectural Support for New Parallel Execution Paradigms Via Agile Threads
  • 批准号:
    1018356
  • 项目类别:
    Standard Grant
  • 资助金额:
    $46.8万
  • 财政年份:
    2010
  • 负责人:
    Dean Tullsen
  • 依托单位:
国内基金
海外基金
昼夜节律性small RNA在血斑形成时间推断中的法医学应用研究
  • 批准号:
  • 项目类别:
    省市级项目
  • 资助金额:
    --
  • 批准年份:
    2024
  • 负责人:
  • 依托单位:
tRNA-derived small RNA上调YBX1/CCL5通路参与硼替佐米诱导慢性疼痛的机制研究
  • 批准号:
  • 项目类别:
    省市级项目
  • 资助金额:
    10.0万元
  • 批准年份:
    2022
  • 负责人:
    张祥忠
  • 依托单位:
Small RNA调控I-F型CRISPR-Cas适应性免疫性的应答及分子机制
Small RNAs调控解淀粉芽胞杆菌FZB42生防功能的机制研究
  • 批准号:
    31972324
  • 项目类别:
    面上项目
  • 资助金额:
    58.0万元
  • 批准年份:
    2019
  • 负责人:
    高学文
  • 依托单位: