首页> 外文会议>IEEE International Parallel and Distributed Processing Symposium >Nowa: A Wait-Free Continuation-Stealing Concurrency Platform
【24h】

Nowa: A Wait-Free Continuation-Stealing Concurrency Platform

机译:NOWA:一个免费的续航窃取并发平台

获取原文

摘要

It is an ongoing challenge to efficiently use parallelism with today's multi- and many-core processors. Scalability becomes more crucial than ever with the rapidly growing number of processing elements in many-core systems that operate in data centres and embedded domains. Guaranteeing scalability is often ensured by using fully-strict fork/join concurrency, which is the prevalent approach used by concurrency platforms like Cilk. The runtime systems employed by those platforms typically resort to lock-based synchronisation due to the complex interactions of data structures within the runtime. However, locking limits scalability severely. With the availability of commercial off-the-shelf systems with hundreds of logical cores, this is becoming a problem for an increasing number of systems.This paper presents Nowa, a novel wait-free approach to arbitrate the plentiful concurrent strands managed by a concurrency platform's runtime system. The wait-free approach is enabled by exploiting inherent properties of fully-strict fork/join concurrency, and hence is potentially applicable for every continuation-stealing runtime system of a concurrency platform. We have implemented Nowa and compared it with existing runtime systems, including Cilk Plus, and Threading Building Blocks (TBB), which employ a lock-based approach. Our evaluation results show that the wait-free implementation increases the performance up to 1.64× compared to lock-based ones, on a system with 256 hardware threads. The performance increased by 1.17× on average, while no but one benchmark exhibited performance regression. Compared against OpenMP tasks using Clang's libomp, Nowa outperforms OpenMP by 8.68× on average.
机译:有效地利用当今的多核和许多核心处理器有效地使用并行性是一项持续的挑战。可扩展性比在数据中心和嵌入式域在数据中心和嵌入式域中运行的许多核心系统中的快速增长数量的加工元素变得更关键。保证可伸缩性通常通过使用全严格的叉/加入并发性来确保,这是Cilk等并发平台使用的普遍方法。这些平台采用的运行时系统通常由于运行时中数据结构的复杂交互而采用基于锁相的同步。但是,锁定严重限制可扩展性。随着具有数百个逻辑核心的商业现成系统的可用性,这正成为越来越多的系统的问题。本文介绍了NOWA,这是一种新的等待方法,以仲裁由并发管理管理的丰富并发股平台的运行时系统。通过利用完全严格的叉/加入并发性的固有属性来实现等待方法,因此可能适用于并发平台的每个持续窃取运行系统系统。我们已经实施了Nowa并将其与现有的运行时系统进行比较,包括Cilk Plus和线程构建块(TBB),其采用基于锁的方法。我们的评价结果​​表明,与具有256个硬件线程的系统相比,等待的实施将性能增加到1.64倍。性能平均增长1.17倍,而没有一个基准表现出绩效回归。使用Clang的Libomp比较OpenMP任务,Nowa平均优于8.68倍的OpenMP。

著录项

相似文献

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

客服邮箱:kefu@zhangqiaokeyan.com

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

  • 服务号