Proceedings of the 13th International Conference on Architectural Support for Programming Languages and Operating Systems 2008
DOI: 10.1145/1346281.1346311
|View full text |Cite
|
Sign up to set email alerts
|

Optimistic parallelism benefits from data partitioning

Abstract: Recent studies of irregular applications such as finite-element mesh generators and data-clustering codes have shown that these applications have a generalized data parallelism arising from the use of iterative algorithms that perform computations on elements of worklists. In some irregular applications, the computations on different elements are independent. In other applications, there may be complex patterns of dependences between these computations.The Galois system was designed to exploit this kind of irr… Show more

Help me understand this report

Search citation statements

Order By: Relevance

Paper Sections

Select...
2
1
1
1

Citation Types

1
63
0

Year Published

2008
2008
2017
2017

Publication Types

Select...
2
2
2

Relationship

1
5

Authors

Journals

citations
Cited by 64 publications
(64 citation statements)
references
References 30 publications
1
63
0
Order By: Relevance
“…For tasks with regular access patterns, Tiling or Blocking can be employed to partition the workload into consecutive chunks that each map to a thread [10], [20], [22], [23], [27], [29], [31], [36], [42], [45] When data accesses are irregular, the underlying system can still reorder independent sections of code according to userinstrumented address hints that indicate data locality among code sections [41] or runtime discovery.…”
Section: A Affinity-aware Task Schedulingmentioning
confidence: 99%
See 1 more Smart Citation
“…For tasks with regular access patterns, Tiling or Blocking can be employed to partition the workload into consecutive chunks that each map to a thread [10], [20], [22], [23], [27], [29], [31], [36], [42], [45] When data accesses are irregular, the underlying system can still reorder independent sections of code according to userinstrumented address hints that indicate data locality among code sections [41] or runtime discovery.…”
Section: A Affinity-aware Task Schedulingmentioning
confidence: 99%
“…Therefore, the number of tiles by default equals the number of cores in S-tile. However, in the case of those applications that may have unbalanced workloads among tiles, programmers can overdecompose the parallel loop into smaller tiles with a larger quantity than the number of cores [31]. Load-balancing is then achieved by having idle cores fetch remaining tiles.…”
Section: A Over-decomposition and Load Balancingmentioning
confidence: 99%
“…Alternatively, conflict detection can be performed on partitioned data structures [9]. For example, a Delaunay mesh can easily be partitioned.…”
Section: The Galois Runtime and Class Librariesmentioning
confidence: 99%
“…When a thread accesses a partition of a data structure, it owns all elements in that partition, and the other threads are not allowed to access them. Assigning multiple partitions to a core increases the probability that a thread can continue to perform useful work even if other threads have temporarily locked some of its partitions [9].…”
Section: The Galois Runtime and Class Librariesmentioning
confidence: 99%
See 1 more Smart Citation