TFlux: A Portable Platform for Data-Driven Multithreading on Commodity Multicore Systems

Kyriakos Stavrou, Marios Nikolaides, Demos Pavlou, Samer Arandi, P. Evripidou, P. Trancoso
{"title":"TFlux: A Portable Platform for Data-Driven Multithreading on Commodity Multicore Systems","authors":"Kyriakos Stavrou, Marios Nikolaides, Demos Pavlou, Samer Arandi, P. Evripidou, P. Trancoso","doi":"10.1109/ICPP.2008.74","DOIUrl":null,"url":null,"abstract":"In this paper we present thread flux (TFlux), a complete system that supports the data-driven multithreading (DDM) model of execution. TFlux virtualizes any details of the underlying system therefore offering the same programming model independently of the architecture. To achieve this goal, TFlux has a runtime support that is built on top of a commodity operating system. Scheduling of threads is performed by the thread synchronization unit (TSU), which can be implemented either as a hardware or a software module. In addition, TFlux includes a preprocessor that, along with a set of simple compiler directives, allows the user to easily develop DDM programs. The preprocessor then automatically produces the TFlux code, which can be compiled using any commodity C compiler, therefore automatically producing code to any ISA. TFlux has been validated on three platforms. A Simics-based multicore system with a TSU hardware module (TFluxHard), a commodity 8-core Intel Core2 QuadCore-based system with a software TSU module (TFluxSoft), and a Cell/BE system with a software TSU module (TFluxCell). The experimental results show that the performance achieved is close to linear speedup, on average 21x for the 27 nodes TFluxHard, and 4.4x on a 6 nodes TFluxSoft and TFluxCell. Most importantly, the observed speedup is stable across the different platforms thus allowing the benefits of DDM to be exploited on different commodity systems.","PeriodicalId":388408,"journal":{"name":"2008 37th International Conference on Parallel Processing","volume":"56 1","pages":"0"},"PeriodicalIF":0.0000,"publicationDate":"2008-09-09","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":"45","resultStr":null,"platform":"Semanticscholar","paperid":null,"PeriodicalName":"2008 37th International Conference on Parallel Processing","FirstCategoryId":"1085","ListUrlMain":"https://doi.org/10.1109/ICPP.2008.74","RegionNum":0,"RegionCategory":null,"ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":null,"EPubDate":"","PubModel":"","JCR":"","JCRName":"","Score":null,"Total":0}
引用次数: 45

Abstract

In this paper we present thread flux (TFlux), a complete system that supports the data-driven multithreading (DDM) model of execution. TFlux virtualizes any details of the underlying system therefore offering the same programming model independently of the architecture. To achieve this goal, TFlux has a runtime support that is built on top of a commodity operating system. Scheduling of threads is performed by the thread synchronization unit (TSU), which can be implemented either as a hardware or a software module. In addition, TFlux includes a preprocessor that, along with a set of simple compiler directives, allows the user to easily develop DDM programs. The preprocessor then automatically produces the TFlux code, which can be compiled using any commodity C compiler, therefore automatically producing code to any ISA. TFlux has been validated on three platforms. A Simics-based multicore system with a TSU hardware module (TFluxHard), a commodity 8-core Intel Core2 QuadCore-based system with a software TSU module (TFluxSoft), and a Cell/BE system with a software TSU module (TFluxCell). The experimental results show that the performance achieved is close to linear speedup, on average 21x for the 27 nodes TFluxHard, and 4.4x on a 6 nodes TFluxSoft and TFluxCell. Most importantly, the observed speedup is stable across the different platforms thus allowing the benefits of DDM to be exploited on different commodity systems.
TFlux:商用多核系统上数据驱动多线程的便携平台
在本文中,我们提出了线程通量(TFlux),一个完整的系统,支持数据驱动多线程(DDM)的执行模型。TFlux虚拟化底层系统的任何细节,因此提供了独立于架构的相同编程模型。为了实现这一目标,TFlux有一个构建在商用操作系统之上的运行时支持。线程的调度由线程同步单元(TSU)执行,它可以作为硬件模块或软件模块实现。此外,TFlux还包括一个预处理器,以及一组简单的编译器指令,允许用户轻松开发DDM程序。预处理器然后自动生成TFlux代码,这些代码可以使用任何商品C编译器编译,因此自动生成任何ISA的代码。TFlux已经在三个平台上进行了验证。一个基于simics的多核系统,带有TSU硬件模块(TFluxHard),一个商用8核Intel Core2四核系统,带有软件TSU模块(TFluxSoft),以及一个带有软件TSU模块(TFluxCell)的Cell/BE系统。实验结果表明,实现的性能接近线性加速,在27个节点的TFluxHard上平均加速21倍,在6个节点的TFluxSoft和TFluxCell上平均加速4.4倍。最重要的是,观察到的加速在不同的平台上是稳定的,从而允许在不同的商品系统上利用DDM的好处。
本文章由计算机程序翻译,如有差异,请以英文原文为准。
求助全文
约1分钟内获得全文 求助全文
来源期刊
自引率
0.00%
发文量
0
×
引用
GB/T 7714-2015
复制
MLA
复制
APA
复制
导出至
BibTeX EndNote RefMan NoteFirst NoteExpress
×
提示
您的信息不完整,为了账户安全,请先补充。
现在去补充
×
提示
您因"违规操作"
具体请查看互助需知
我知道了
×
提示
确定
请完成安全验证×
copy
已复制链接
快去分享给好友吧!
我知道了
右上角分享
点击右上角分享
0
联系我们:info@booksci.cn Book学术提供免费学术资源搜索服务,方便国内外学者检索中英文文献。致力于提供最便捷和优质的服务体验。 Copyright © 2023 布克学术 All rights reserved.
京ICP备2023020795号-1
ghs 京公网安备 11010802042870号
Book学术文献互助
Book学术文献互助群
群 号:604180095
Book学术官方微信