2013
DOI: 10.1007/s10766-013-0262-9
|View full text |Cite
|
Sign up to set email alerts
|

MulticoreBSP for C: A High-Performance Library for Shared-Memory Parallel Programming

Abstract: The bulk synchronous parallel (BSP) model, as well as parallel programming interfaces based on BSP, classically target distributed-memory parallel architectures. In earlier work, Yzelman and Bisseling designed a MulticoreBSP for Java library specifically for shared-memory architectures. In the present article, we further investigate this concept and introduce the new high-performance MulticoreBSP for C library. Among other features, this library supports nested BSP runs. We show that existing BSP software perf… Show more

Help me understand this report

Search citation statements

Order By: Relevance

Paper Sections

Select...
2
1
1

Citation Types

0
31
0
2

Year Published

2014
2014
2022
2022

Publication Types

Select...
5
2
1

Relationship

0
8

Authors

Journals

citations
Cited by 35 publications
(33 citation statements)
references
References 22 publications
0
31
0
2
Order By: Relevance
“…All implementations undertaken in this work are in ANSI C; the same code need only be recompiled but does not need to be rewritten to work with three parallel, multiprocessing or multithreaded programming libraries: OpenMPI [29], MulticoreBSP [36], and BSPlib [19]. The source code is available through the author's web-page [18].…”
Section: Methodsmentioning
confidence: 99%
“…All implementations undertaken in this work are in ANSI C; the same code need only be recompiled but does not need to be rewritten to work with three parallel, multiprocessing or multithreaded programming libraries: OpenMPI [29], MulticoreBSP [36], and BSPlib [19]. The source code is available through the author's web-page [18].…”
Section: Methodsmentioning
confidence: 99%
“…These images can be used to access the remote array. For example, xs(t) [5] = 3 puts the value 3 into the array element at index 5 of the local array at processor t. Furthermore, convenient syntax makes it easy to work with slices of coarrays. A basic slice for the element interval [start, end), i.e., including start but excluding end, is obtained using xs(t) [{start, end}].…”
Section: Value() Now Contains Two Times the Local Idmentioning
confidence: 99%
“…BSPlib [2] describes a collection of a limited set of primitives which can be used for writing BSP programs in the C programming language. Libraries that implement the BSPlib standard include BSPonMPI [3] and MulticoreBSP for Java [4] and C [5]. Paderborn University BSP (PUB) [6] is an alternative BSP library that includes features not included in BSPlib such as subset synchronization and nonblocking collective operations.…”
mentioning
confidence: 99%
“…Currently, based on the existing computing models, such as MapReduce [1], BSP [2] (Bulk Synchronous Parallel model), much performance modeling research [3][4] [5] has been carried out to deeply analyze the parallel computing framework. [3]described the default mathematical model for predicting the performance of BSP model.…”
Section: Introductionmentioning
confidence: 99%
“…[3]described the default mathematical model for predicting the performance of BSP model. The performance of MapReduce applications that run on cloud has been accurately predicted in [4] [5].…”
Section: Introductionmentioning
confidence: 99%