ACM Symposium on Parallelism in Algorithms and Architectures最新文献

筛选
英文 中文
Memory-mapping support for reducer hyperobjects 对reducer超对象的内存映射支持
ACM Symposium on Parallelism in Algorithms and Architectures Pub Date : 2012-06-25 DOI: 10.1145/2312005.2312056
I. Lee, A. Shafi, C. Leiserson
{"title":"Memory-mapping support for reducer hyperobjects","authors":"I. Lee, A. Shafi, C. Leiserson","doi":"10.1145/2312005.2312056","DOIUrl":"https://doi.org/10.1145/2312005.2312056","url":null,"abstract":"Reducer hyperobjects (reducers) provide a linguistic abstraction for dynamic multithreading that allows different branches of a parallel program to maintain coordinated local views of the same nonlocal variable. In this paper, we investigate how thread-local memory mapping (TLMM) can be used to improve the performance of reducers. Existing concurrency platforms that support reducer hyperobjects, such as Intel Cilk Plus and Cilk++, take a hypermap approach in which a hash table is used to map reducer objects to their local views. The overhead of the hash table is costly --- roughly 12x overhead compared to a normal L1-cache memory access on an AMD Opteron 8354. We replaced the Intel Cilk Plus runtime system with our own Cilk-M runtime system which uses TLMM to implement a reducer mechanism that supports a reducer lookup using only two memory accesses and a predictable branch, which is roughly a 3x overhead compared to an ordinary L1-cache memory access. An empirical evaluation shows that the Cilk-M memory-mapping approach is close to 4x faster than the Cilk Plus hypermap approach. Furthermore, the memory-mapping approach admits better locality than the hypermap approach during parallel execution, which allows an application using reducers to scale better.","PeriodicalId":367373,"journal":{"name":"ACM Symposium on Parallelism in Algorithms and Architectures","volume":"41 12","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2012-06-25","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"120923329","PeriodicalName":null,"FirstCategoryId":null,"ListUrlMain":null,"RegionNum":0,"RegionCategory":"","ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":"","EPubDate":null,"PubModel":null,"JCR":null,"JCRName":null,"Score":null,"Total":0}
引用次数: 12
Brief announcement: speedups for parallel graph triconnectivity 简短公告:加速并行图三连通性
ACM Symposium on Parallelism in Algorithms and Architectures Pub Date : 2012-06-25 DOI: 10.1145/2312005.2312042
J. Edwards, U. Vishkin
{"title":"Brief announcement: speedups for parallel graph triconnectivity","authors":"J. Edwards, U. Vishkin","doi":"10.1145/2312005.2312042","DOIUrl":"https://doi.org/10.1145/2312005.2312042","url":null,"abstract":"We present a parallel solution to the problem of determining the triconnected components of an undirected graph. We obtain significant speedups over the only published optimal (linear-time) serial implementation of a triconnected components algorithm running on a modern CPU. This is accomplished on the PRAM-inspired XMT many-core architecture. To our knowledge, no other parallel implementation of a triconnected components algorithm has been published for any platform.","PeriodicalId":367373,"journal":{"name":"ACM Symposium on Parallelism in Algorithms and Architectures","volume":"9 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2012-06-25","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"122378709","PeriodicalName":null,"FirstCategoryId":null,"ListUrlMain":null,"RegionNum":0,"RegionCategory":"","ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":"","EPubDate":null,"PubModel":null,"JCR":null,"JCRName":null,"Score":null,"Total":0}
引用次数: 9
On the cost of composing shared-memory algorithms 关于编写共享内存算法的代价
ACM Symposium on Parallelism in Algorithms and Architectures Pub Date : 2012-06-25 DOI: 10.1145/2312005.2312057
Dan Alistarh, R. Guerraoui, P. Kuznetsov, Giuliano Losa
{"title":"On the cost of composing shared-memory algorithms","authors":"Dan Alistarh, R. Guerraoui, P. Kuznetsov, Giuliano Losa","doi":"10.1145/2312005.2312057","DOIUrl":"https://doi.org/10.1145/2312005.2312057","url":null,"abstract":"Decades of research in distributed computing have led to a variety of perspectives on what it means for a concurrent algorithm to be efficient, depending on model assumptions, progress guarantees, and complexity metrics. It is therefore natural to ask whether one could compose algorithms that perform efficiently under different conditions, so that the composition preserves the performance of the original components when their conditions are met.\u0000 In this paper, we evaluate the cost of composing shared-memory algorithms. First, we formally define the notion of safely composable algorithms and we show that every sequential type has a safely composable implementation, as long as enough state is transferred between modules. Since such generic implementations are inherently expensive, we present a more general light-weight specification that allows the designer to transfer very little state between modules, by taking advantage of the semantics of the implemented object. Using this framework, we implement a composed long-lived test-and-set object, with the property that each of its modules is asymptotically optimal with respect to the progress condition it ensures, while the entire implementation only uses objects with consensus number at most two. Thus, we show that the overhead of composition can be negligible in the case of some important shared-memory abstractions.","PeriodicalId":367373,"journal":{"name":"ACM Symposium on Parallelism in Algorithms and Architectures","volume":"2011 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2012-06-25","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"114543321","PeriodicalName":null,"FirstCategoryId":null,"ListUrlMain":null,"RegionNum":0,"RegionCategory":"","ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":"","EPubDate":null,"PubModel":null,"JCR":null,"JCRName":null,"Score":null,"Total":0}
引用次数: 2
A parallel buffer tree 并行缓冲树
ACM Symposium on Parallelism in Algorithms and Architectures Pub Date : 2012-06-25 DOI: 10.1145/2312005.2312046
Nodari Sitchinava, N. Zeh
{"title":"A parallel buffer tree","authors":"Nodari Sitchinava, N. Zeh","doi":"10.1145/2312005.2312046","DOIUrl":"https://doi.org/10.1145/2312005.2312046","url":null,"abstract":"We present the parallel buffer tree, a parallel external memory (PEM) data structure for batched search problems. This data structure is a non-trivial extension of Arge's sequential buffer tree to a private-cache multiprocessor environment and reduces the number of I/O operations by the number of available processor cores compared to its sequential counterpart, thereby taking full advantage of multicore parallelism.\u0000 The parallel buffer tree is a search tree data structure that supports the batched parallel processing of a sequence of N insertions, deletions, membership queries, and range queries in the optimal OhOf(psortN + K/PB) parallel I/O complexity, where K is the size of the output reported in the process and psortN is the parallel I/O complexity of sorting N elements using P processors.","PeriodicalId":367373,"journal":{"name":"ACM Symposium on Parallelism in Algorithms and Architectures","volume":"24 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2012-06-25","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"127776427","PeriodicalName":null,"FirstCategoryId":null,"ListUrlMain":null,"RegionNum":0,"RegionCategory":"","ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":"","EPubDate":null,"PubModel":null,"JCR":null,"JCRName":null,"Score":null,"Total":0}
引用次数: 11
Brief announcement: subgraph isomorphism on a multithreaded shared memory architecture 简短声明:多线程共享内存架构上的子图同构
ACM Symposium on Parallelism in Algorithms and Architectures Pub Date : 2012-06-25 DOI: 10.1145/2312005.2312019
C. Ralph, V. Leung, William C. McLendon
{"title":"Brief announcement: subgraph isomorphism on a multithreaded shared memory architecture","authors":"C. Ralph, V. Leung, William C. McLendon","doi":"10.1145/2312005.2312019","DOIUrl":"https://doi.org/10.1145/2312005.2312019","url":null,"abstract":"Graph algorithms tend to suffer poor performance due to the irregularity of access patterns within general graph data structures, arising from poor data locality, which translates to high memory latency. The result is that advances in high-performance solutions for graph algorithms are most likely to come through advances in both architectures and algorithms. Specialized MMT shared memory machines offer a potentially transformative environment in which to approach the problem. Here, we explore the challenges of implementing Subgraph Isomorphism (SI) algorithms based on the Ullmann and VF2 algorithms in the Cray XMT environment, where issues of memory contention, scheduling, and compiler parallelizability must be optimized.","PeriodicalId":367373,"journal":{"name":"ACM Symposium on Parallelism in Algorithms and Architectures","volume":"1 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2012-06-25","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"131219539","PeriodicalName":null,"FirstCategoryId":null,"ListUrlMain":null,"RegionNum":0,"RegionCategory":"","ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":"","EPubDate":null,"PubModel":null,"JCR":null,"JCRName":null,"Score":null,"Total":0}
引用次数: 0
A scalable framework for heterogeneous GPU-based clusters 基于gpu的异构集群的可扩展框架
ACM Symposium on Parallelism in Algorithms and Architectures Pub Date : 2012-06-25 DOI: 10.1145/2312005.2312025
Fengguang Song, J. Dongarra
{"title":"A scalable framework for heterogeneous GPU-based clusters","authors":"Fengguang Song, J. Dongarra","doi":"10.1145/2312005.2312025","DOIUrl":"https://doi.org/10.1145/2312005.2312025","url":null,"abstract":"GPU-based heterogeneous clusters continue to draw attention from vendors and HPC users due to their high energy efficiency and much improved single-node computational performance, however, there is little parallel software available that can utilize all CPU cores and all GPUs on the heterogeneous system efficiently. On a heterogeneous cluster, the performance of a GPU (or a compute node) increases in a much faster rate than the performance of the PCI-Express connection (or the interconnection network) such that communication eventually becomes the bottleneck of the entire system. To overcome the bottleneck, we developed a multi-level partitioning and distribution method that guarantees a near-optimal communication volume. We have also extended heterogeneous tile algorithms to work on distributed memory GPU clusters. Our main idea is to execute a serial program and generate hybrid-size tasks, and follow a dataflow programming model to fire the tasks on different compute nodes. We then devised a distributed dynamic scheduling runtime system to schedule tasks, and transfer data between hybrid CPU-GPU compute nodes transparently. The runtime system employs a novel distributed task-assignment protocol to solve data dependencies between tasks without coordination between processing units. The runtime system on each node consists of a number of CPU compute threads, a number of GPU compute threads, a task generation thread, an MPI communication thread, and a CUDA communication thread. By overlapping computation and communication through dynamic scheduling, we are able to attain a high performance of 75 TFlops for Cholesky factorization on the heterogeneous Keeneland system using 100 nodes, each with twelve CPU cores and three GPUs. Moreover, our framework is able to attain high performance on distributed-memory clusters without GPUs, and shared-system multiGPUs.","PeriodicalId":367373,"journal":{"name":"ACM Symposium on Parallelism in Algorithms and Architectures","volume":"25 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2012-06-25","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"134557648","PeriodicalName":null,"FirstCategoryId":null,"ListUrlMain":null,"RegionNum":0,"RegionCategory":"","ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":"","EPubDate":null,"PubModel":null,"JCR":null,"JCRName":null,"Score":null,"Total":0}
引用次数: 48
In search of parallel dimensions 寻找平行维度
ACM Symposium on Parallelism in Algorithms and Architectures Pub Date : 2012-06-25 DOI: 10.1145/2312005.2312012
Ravi Rajwar
{"title":"In search of parallel dimensions","authors":"Ravi Rajwar","doi":"10.1145/2312005.2312012","DOIUrl":"https://doi.org/10.1145/2312005.2312012","url":null,"abstract":"Performance matters. But how we improve it is changing. Historically, transparent hardware improvements would mean software just ran faster. That may not necessarily be true in the future. To continue the pace of innovation, the future will need to be increasingly parallel--nvolving parallelism across data, threads, cores, and nodes. This talk will explore some of the dimensions of parallelism, and the opportunities and challenges they pose.","PeriodicalId":367373,"journal":{"name":"ACM Symposium on Parallelism in Algorithms and Architectures","volume":"92 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2012-06-25","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"116955656","PeriodicalName":null,"FirstCategoryId":null,"ListUrlMain":null,"RegionNum":0,"RegionCategory":"","ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":"","EPubDate":null,"PubModel":null,"JCR":null,"JCRName":null,"Score":null,"Total":0}
引用次数: 0
Lower bounds for restricted-use objects: extended abstract 限制使用对象的下界:扩展抽象
ACM Symposium on Parallelism in Algorithms and Architectures Pub Date : 2012-06-25 DOI: 10.1145/2312005.2312037
J. Aspnes, H. Attiya, K. Censor-Hillel, Danny Hendler
{"title":"Lower bounds for restricted-use objects: extended abstract","authors":"J. Aspnes, H. Attiya, K. Censor-Hillel, Danny Hendler","doi":"10.1145/2312005.2312037","DOIUrl":"https://doi.org/10.1145/2312005.2312037","url":null,"abstract":"Concurrent objects play a key role in the design of applications for multi-core architectures, making it imperative to precisely understand their complexity requirements. For some objects, it is known that implementations can be significantly more efficient when their usage is restricted. However, apart from the specific restriction of one-shot implementations, where each process may apply only a single operation to the object, very little is known about the complexities of objects under general restrictions.\u0000 This paper draws a more complete picture by defining a large class of objects for which an operation applied to the object can be \"perturbed\" L consecutive times, and proving lower bounds on the time and space complexity of deterministic implementations of such objects. This class includes bounded-value max registers, limited-use approximate and exact counters, and limited-use collect and compare-and-swap objects; L depends on the number of times the object can be accessed or the maximum value it supports.\u0000 For implementations that use only historyless primitives, we prove lower bounds of Omega(min(log L, n)) on the worst-case step complexity of an operation, where n is the number of processes; we also prove lower bounds of Omega( min( L, n )) on the space complexity of these objects. When arbitrary primitives can be used, we prove that either some operation incurs Omega( min( log L, n)) memory stalls or some operation performs Omega( min( log L, n)) steps.\u0000 In addition to these deterministic lower bounds, the paper establishes a lower bound on the expected step complexity of restricted-use randomized approximate counting in a weak oblivious adversary model.","PeriodicalId":367373,"journal":{"name":"ACM Symposium on Parallelism in Algorithms and Architectures","volume":"148 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2012-06-25","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"124137459","PeriodicalName":null,"FirstCategoryId":null,"ListUrlMain":null,"RegionNum":0,"RegionCategory":"","ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":"","EPubDate":null,"PubModel":null,"JCR":null,"JCRName":null,"Score":null,"Total":0}
引用次数: 6
Time vs. space trade-offs for rendezvous in trees 在树上集合的时间和空间权衡
ACM Symposium on Parallelism in Algorithms and Architectures Pub Date : 2012-06-25 DOI: 10.1145/2312005.2312007
J. Czyzowicz, A. Kosowski, A. Pelc
{"title":"Time vs. space trade-offs for rendezvous in trees","authors":"J. Czyzowicz, A. Kosowski, A. Pelc","doi":"10.1145/2312005.2312007","DOIUrl":"https://doi.org/10.1145/2312005.2312007","url":null,"abstract":"Two identical (anonymous) mobile agents start from arbitrary nodes of an unknown tree and have to meet at some node. Agents move in synchronous rounds: in each round an agent can either stay at the current node or move to one of its neighbors. We consider deterministic algorithms for this rendezvous task. The main result of this paper is a tight trade-off between the optimal time of completing rendezvous and the size of memory of the agents. For agents with k memory bits, we show that optimal rendezvous time is Θ(n+n2/k) in n-node trees. More precisely, if k ≥ c log n, for some constant c, we design agents accomplishing rendezvous in arbitrary trees of unknown size n in time O(n+n2/k), starting with arbitrary delay. We also show that no pair of agents can accomplish rendezvous in time o(n+n2/k), even in the class of lines of known length and even with simultaneous start. Finally, we prove that at least logarithmic memory is necessary for rendezvous, even for agents starting simultaneously in a n-node line.","PeriodicalId":367373,"journal":{"name":"ACM Symposium on Parallelism in Algorithms and Architectures","volume":"34 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2012-06-25","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"114479283","PeriodicalName":null,"FirstCategoryId":null,"ListUrlMain":null,"RegionNum":0,"RegionCategory":"","ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":"","EPubDate":null,"PubModel":null,"JCR":null,"JCRName":null,"Score":null,"Total":0}
引用次数: 11
Brief announcement: a GPU accelerated iterated local search TSP solver 简短公告:GPU加速迭代局部搜索TSP求解器
ACM Symposium on Parallelism in Algorithms and Architectures Pub Date : 2012-06-25 DOI: 10.1145/2312005.2312041
K. Rocki, R. Suda
{"title":"Brief announcement: a GPU accelerated iterated local search TSP solver","authors":"K. Rocki, R. Suda","doi":"10.1145/2312005.2312041","DOIUrl":"https://doi.org/10.1145/2312005.2312041","url":null,"abstract":"In this paper we are presenting high performance GPU implementations of the 2-opt and 3-opt local search algorithms used to solve the Traveling Salesman Problem. This type of local search optimization is a very effective and fast method in case of small problem instances. However, the time spent on comparing the graph edges grows significantly with the problem size growing. They are usually a part of global search algorithms such as Iterated Local Search (ILS). Our results showed, that at least 90% of the time during a single ILS run is spent on the local search itself. Therefore we utilized GPU to parallelize the local search and that greatly improved the overall speed of the algorithm. Our results show that the GPU accelerated algorithm finds the optimal swaps approximately 3 to 26 times compared to parallel CPU code using 32 cores, operating at the speed of over 1.5 TFLOPS on a single GeForce GTX 680 GPU. The preliminary experimental studies show that the optimization algorithm using the GPU local search converges 10 to 50 times faster on average compared to the sequential CPU version, depending on the problem size.","PeriodicalId":367373,"journal":{"name":"ACM Symposium on Parallelism in Algorithms and Architectures","volume":"48 2","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2012-06-25","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"113939418","PeriodicalName":null,"FirstCategoryId":null,"ListUrlMain":null,"RegionNum":0,"RegionCategory":"","ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":"","EPubDate":null,"PubModel":null,"JCR":null,"JCRName":null,"Score":null,"Total":0}
引用次数: 2
0
×
引用
GB/T 7714-2015
复制
MLA
复制
APA
复制
导出至
BibTeX EndNote RefMan NoteFirst NoteExpress
×
提示
您的信息不完整,为了账户安全,请先补充。
现在去补充
×
提示
您因"违规操作"
具体请查看互助需知
我知道了
×
提示
确定
请完成安全验证×
相关产品
×
本文献相关产品
联系我们:info@booksci.cn Book学术提供免费学术资源搜索服务,方便国内外学者检索中英文文献。致力于提供最便捷和优质的服务体验。 Copyright © 2023 布克学术 All rights reserved.
京ICP备2023020795号-1
ghs 京公网安备 11010802042870号
Book学术文献互助
Book学术文献互助群
群 号:604180095
Book学术官方微信
小红书