【24h】

An Introduction to DF-Threads and their Execution Model

机译:DF线程及其执行模型简介

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

摘要

Current computing systems are mostly focused on achieving performance, programmability, energy efficiency, resiliency by essentially trying to replicate the uni-core execution model n-times in parallel on a multi/many-core system. This choice has heavily conditioned the way both software and hardware are designed nowadays. However, as old as computer architecture is the concept of dataflow, that is "initiating an activity in presence of the data it needs to perform its function" [J. Dennis]. Dataflow had been historically initially explored at instruction level and has led to the major result of the realization of current superscalar processors, which implement a form of "restricted dataflow" at instruction level. In this paper, we illustrate the idea of using the dataflow concept to define novel thread types that we call Data-Flow-Threads or DF-Threads. The advantages we are aiming at regard several aspects, not fully explored yet: i) isolating the computations so that communication patterns can be more efficiently managed by a not-so-complex architecture, ii) possibility to repeat the execution of a thread in case of detected faults affecting the thread resources, iii) providing a minimalistic low-level API for allowing compilers and programmers to map their parallel codes and architects to implement more efficient and scalable systems. The semantics of DF-Threads is also tightly connected to their execution model, hereby illustrated. Several other efforts have been done with similar purposes since the introduction of macro-dataflow through the more recent DF-Codelets and the OCR project. In our case, we aim at a more complete model with the above advantages and in particular including the way of managing the mutable shared state by relying on the transactional memory semantics. Our initial experiments show how to map some simple kernel and the scalability potential on a futuristic 1k-core many-core.
机译:当前的计算系统主要通过实质上尝试在多/多核系统上并行复制n次单核执行模型来集中精力实现性能,可编程性,能效,弹性。这种选择在很大程度上制约了当今软件和硬件的设计方式。但是,数据流的概念与计算机体系结构一样古老,它是“在存在数据时启动它需要执行其功能的活动” [J.丹尼斯]。数据流在历史上最初是在指令级别进行探索的,并导致了实现当前超标量处理器的主要结果,这些超标量处理器在指令级别实现了“受限数据流”的形式。在本文中,我们说明了使用数据流概念来定义新颖的线程类型(称为数据流线程或DF线程)的想法。我们针对几个方面的优势尚未充分探究:i)隔离计算,以便通过不太复杂的体系结构可以更有效地管理通信模式,ii)在有可能的情况下重复执行线程检测到的影响线程资源的故障; iii)提供了一个最低限度的低级API,以允许编译器和程序员映射其并行代码,并允许架构师实现更高效和可扩展的系统。 DF-Threads的语义也紧密联系到它们的执行模型,在此进行说明。自从通过较新的DF代码集和OCR项目引入宏数据流以来,为达到类似目的还做了其他一些努力。在我们的案例中,我们针对具有上述优点的更完整的模型,特别是包括通过依赖事务性内存语义来管理可变共享状态的方法。我们的初始实验显示了如何在未来的1k核多核上映射一些简单的内核和可扩展性潜力。

著录项

相似文献

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

客服邮箱:kefu@zhangqiaokeyan.com

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

  • 服务号