A comparative analysis of fine-grain threads packages

被引:7
|
作者
Price, GW [1 ]
Lowenthal, DK [1 ]
机构
[1] Univ Georgia, Dept Comp Sci, Athens, GA 30602 USA
关键词
fine-grain parallelism; threads; load balancing;
D O I
10.1016/j.jpdc.2003.06.001
中图分类号
TP301 [理论、方法];
学科分类号
081202 ;
摘要
The rising availability of multiprocessing platforms has increased the importance of providing programming models that allow users to express parallelism simply, portably, and efficiently. One popular way to write parallel programs is to use threads for concurrent sections of code. User-level threads packages allow programmers to implement multithreaded programs in which thread creation, thread management, and thread synchronization are relatively inexpensive. Fine-grain programs are multithreaded programs in which the work is divided into a large number of threads, where each thread contains a relatively small amount of work. The potential benefit of large numbers of threads include easier load balancing, better scalability, greater potential for overlapping communication and computation, and improved platform-independence. However, fine-grain programs are largely considered inefficient due to the overheads involved in managing numerous threads. In this paper, we survey several thread packages that take different approaches to the problem of efficiently supporting the creation and management of large numbers of fine-grain threads. Each package is compared based on its level of support of the general thread model as well as its performance on a set of fine-grain parallel programs. We find that while the thread packages we tested may support medium-grain parallelism efficiently, they do not always support fine-grain parallelism. Although no package supports fine-grain parallelism and a general thread model, we believe that it can potentially be done with help from the compiler. (C) 2003 Published by Elsevier Inc.
引用
收藏
页码:1050 / 1063
页数:14
相关论文
共 50 条
  • [1] Efficient fine-grain thread migration with active threads
    Weissman, B
    Gomes, B
    Quittek, JW
    Holtkamp, M
    [J]. FIRST MERGED INTERNATIONAL PARALLEL PROCESSING SYMPOSIUM & SYMPOSIUM ON PARALLEL AND DISTRIBUTED PROCESSING, 1998, : 410 - 414
  • [2] FINE-GRAIN
    BEARDSLEY, T
    [J]. SCIENTIFIC AMERICAN, 1992, 267 (04) : 114 - 115
  • [3] A Comparative Analysis of Coarse-grain and Fine-grain Power Gating for FPGA Lookup Tables
    Nair, Pradeep S.
    Koppa, Santosh
    John, Eugene B.
    [J]. 2009 52ND IEEE INTERNATIONAL MIDWEST SYMPOSIUM ON CIRCUITS AND SYSTEMS, VOLS 1 AND 2, 2009, : 507 - 510
  • [4] Fine-grain concurrency
    Hoare, Tony
    [J]. CONCURRENCY AND COMPUTATION-PRACTICE & EXPERIENCE, 2010, 22 (08): : 912 - 934
  • [5] Using fine-grain threads and run-time decision making in parallel computing
    Lowenthal, DK
    Freeh, VW
    Andrews, GR
    [J]. JOURNAL OF PARALLEL AND DISTRIBUTED COMPUTING, 1996, 37 (01) : 41 - 54
  • [6] AGGLOMERATION OF FINE-GRAIN AND EXTREMELY FINE-GRAIN COAL - NATURE AND COMPOSITION OF BINDERS
    SCHAFER, HG
    [J]. ERDOL & KOHLE ERDGAS PETROCHEMIE, 1987, 40 (12): : 521 - 526
  • [7] FINE-GRAIN SCHEDULING
    MASSALIN, H
    PU, C
    [J]. WORKSHOP ON EXPERIENCES WITH DISTRIBUTED AND MULTIPROCESSOR SYSTEMS, 1989, : 91 - 104
  • [8] Fine-grain Concurrency
    Hoare, Tony
    [J]. WOTUG-30: COMMUNICATING PROCESS ARCHITECTURES 2007, 2007, 65 : 1 - 19
  • [9] Fixing the CLOC with Fine-grain Leakage Analysis
    Diehl, William
    Farahmand, Farnoud
    Abdulgadir, Abubakr
    Kaps, Jens-Peter
    Gaj, Kris
    [J]. PROCEEDINGS OF THE 2018 WORKSHOP ON ATTACKS AND SOLUTIONS IN HARDWARE SECURITY (ASHES'18), 2018, : 75 - 80
  • [10] MORPHOLOGY OF FINE-GRAIN GOLD
    TSINTSOV, ZL
    PETROV, LL
    [J]. DOKLADI NA BOLGARSKATA AKADEMIYA NA NAUKITE, 1992, 45 (12): : 85 - 87