Qthreads: An API for programming with millions of lightweight threads

Qthreads: An API for programming with millions of lightweight threads
复制标题

Qthreads:用于使用数百万个轻量级线程进行编程的 API

DOI:
10.1109/ipdps.2008.4536359
复制
发表时间:
2008
期刊:
2008 IEEE International Symposium on Parallel and Distributed Processing
影响因子:
--
通讯作者:
D. Thain
D. Thain
中科院分区:
--
文献类型:
--
作者:
Kyle B. Wheeler;R. Murphy;D. Thain

文献摘要

被引文献

相似文献

大规模的硬件支持的多线程,一个有吸引力的手段,增加计算能力,受益显着的每线程成本低。轻量级线程的硬件支持是一个正在发展的研究领域。每一个具有这种支持的体系结构都提供了一个独特的接口,这阻碍了它们的开发和它们之间的比较。需要一个可移植的抽象来提供基本的轻量级线程控制和同步原语。这种抽象将有助于探索大规模线程的架构需求和现有语言的语义能力。如果要推广大规模并行,管理线程资源是一个必须解决的问题。qthread抽象支持在商用架构上开发大规模多线程应用程序。本文介绍了qthread API及其Unix实现,讨论了资源管理,并给出了HPCCG基准测试的性能结果。
Large scale hardware-supported multithreading, an attractive means of increasing computational power, benefits significantly from low per-thread costs. Hardware support for lightweight threads is a developing area of research. Each architecture with such support provides a unique interface, hindering development for them and comparisons between them. A portable abstraction that provides basic lightweight thread control and synchronization primitives is needed. Such an abstraction would assist in exploring both the architectural needs of large scale threading and the semantic power of existing languages. Managing thread resources is a problem that must be addressed if massive parallelism is to be popularized. The qthread abstraction enables development of large-scale multithreading applications on commodity architectures. This paper introduces the qthread API and its Unix implementation, discusses resource management, and presents performance results from the HPCCG benchmark.