BSPlib: the BSP Programming Library

J.M.D. Hill, B. McColl, D.C. Stefanescu, M.W. Goudreau, K. Lang, S.B. Rao, T. Suel, T. Tsantilas, R.H. Bisseling

Research output: Contribution to journalArticleAcademicpeer-review

Abstract

BSPlib is a small communications library for bulk synchronous parallel (BSP) programming which consists of only 20 basic operations. This paper presents the full definition of BSPlib in C, motivates the design of its basic operations, and gives examples of their use. The library enables programming in two distinct styles: direct remote memory access (DRMA) using put or get operations, and bulk synchronous message passing (BSMP). Currently, implementations of BSPlib exist for a variety of modern architectures, including massively parallel computers with distributed memory, shared memory multiprocessors, and networks of workstations. BSPlib has been used in several scientific and industrial applications; this paper briefly describes applications in benchmarking, Fast Fourier Transforms (FFTs), sorting, and molecular dynamics.
Original languageEnglish
Pages (from-to)1947-1980
Number of pages34
JournalParallel Computing
Volume24
Issue number14
DOIs
Publication statusPublished - Dec 1998

Keywords

  • Mathematics
  • Wiskunde en computerwetenschappen
  • Landbouwwetenschappen
  • Wiskunde: algemeen

Fingerprint

Dive into the research topics of 'BSPlib: the BSP Programming Library'. Together they form a unique fingerprint.

Cite this