Evaluation of Speculation in Out-of-Order Execution of Synchronous Dataflow Networks

Evaluation of Speculation in Out-of-Order Execution of Synchronous Dataflow Networks
复制标题

同步数据流网络无序执行中的推测评估

DOI:
10.1007/s10766-013-0277-2
复制
发表时间:
2013
影响因子:
1.5
通讯作者:
Schneider
Schneider
中科院分区:
计算机科学4区
文献类型:
--
作者:
Baudisch;Schneider

文献摘要

参考文献

相似文献

数据流进程网络是实现健壮并发系统的一种方便的形式,过去已成功地用于硬件和软件系统。然而,严格的基于流的执行限制了数据流进程网络的性能,需要仔细平衡整个执行,以避免反压和空闲节点。受处理器体系结构中使用的相关技术的启发,我们已经在前面的工作中介绍了数据流进程网络的乱序执行。在本文中,我们通过推测过程节点的输入值来扩展这一改进,并允许其他空闲进程使用推测的输入值开始计算。显然,在投机被证明是正确的之前,基于投机输入的产出必须被保留,并且在投机是错误的情况下必须被撤回。与相关工作相比,我们的方法完全是在使用标准硬件的软件中实现的,以解决多核处理器的广泛领域。此外,软件实现允许我们根据应用程序的需要动态地调整参数。这允许我们强制执行用户定义的推测命中率,甚至可以关闭推测。在详细描述了此方法并讨论了其实现的可能性之后,我们将使用几个基准测试来展示其可行性。在这些基准测试中,与非投机的乱序执行相比,投机的使用平均加速了1.2。
Dataflow process networks are a convenient formalism for implementing robust concurrent systems that has been successfully used for hardware and software systems in the past. However, the strictly stream-based execution limits the performance of dataflow process networks and requires to carefully balance the entire execution to avoid backpressure and idle nodes. Inspired by related techniques used in processor architectures, we already introduced in our previous work out-of-order execution of dataflow process networks. In this paper, we extend this improvement with speculation of input values for process nodes and allow otherwise idle processes to start computations with speculated input values. Clearly, outputs based on speculated inputs have to be held back until the speculation can be proved right, and have to be withdrawn in case the speculation was wrong. In contrast to related work, our approach has been implemented purely in software using standard hardware to address a broad field of multicore processors. Moreover, a software implementation allows us to dynamically adapt parameters to the needs of the application. This allows us to enforce a user-defined hit ratio of speculation that might even switch speculation off. After a detailed description of this approach and a discussion of possibilities of its implementation, we show its feasibility using a couple of benchmarks. In these benchmarks, the use of speculation achieved an average speedup of 1.2 compared to the non-speculative out-of-order execution.
基于 CAL 规范和硬件/软件代码生成器的硬件/软件协同设计集成环境
DOI: 10.1109/iscas.2009.5117876
发表时间: 2009
期刊: 2009 IEEE International Symposium on Circuits and Systems
影响因子: --
作者:
Ghislain Roquier;Christophe Lucarz;M. Mattavelli;Matthieu Wipliez;M. Raulet;Jörn W. Janneck;Ian D. Miller;D. Parlour
通讯作者: D. Parlour
标准数字信号处理器的系统设计、优化和智能代码生成
DOI: 10.1109/iscas.1989.100415
发表时间: 1989
期刊: IEEE International Symposium on Circuits and Systems,
影响因子: --
作者:
D. Genin;J. De Moortel;D. Desmet;E. Van de Velde
通讯作者: E. Van de Velde
粗粒度线程流水线:共享内存多处理器的推测并行执行模型
DOI: 10.1109/71.954629
发表时间: 2001
期刊: IEEE Trans. Parallel Distributed Syst.
影响因子: --
作者:
I. Kazi;D. Lilja
通讯作者: D. Lilja
数据流多处理器
DOI: 10.1109/tc.1977.5009292
发表时间: 1977
影响因子: 3.7
作者:
J. Rumbaugh
通讯作者: J. Rumbaugh
多速率信号处理算法的数据流描述的循环调度
DOI: 10.1007/bf01383830
发表时间: 1994
影响因子: 0.8
作者:
S. Bhattacharyya;Edward A. Lee
通讯作者: Edward A. Lee