next   up   prev   index 
Next: Environment Up: User Guide Previous: User Guide   Index

Introduction

The PUB-Library (Paderborn University BSP-Library) is a C-library of communication routines. These routines allow implementing algorithms which are designed for the BSP model (bulk synchrounus parallel model). The BSP model divides algorithms into several parts called supersteps. In each superstep a processor can work on local data and send messages. At the end of the superstep a barrier synchronization takes place and all processors receive the messages which were sent in the previous superstep. Further informations concerning the BSP model can be received from [Val90].

PUB offers functions for both message passing and remote memory access. Furthermore, some collective communication operations like broadcast and parallel prefix are also provided. To become more flexible, PUB allows creating independent BSP objects each representing a virtual BSP computer. Goudreau et al.[GHL$^+$96] defined an interface for BSP libraries call ``BSP Worldwide Standard'' which is implemented in the Oxford BSP toolset[HDM97]. You can also use the BSP Worldwide Standard for programming with PUB (refer to Section 1.6). A performance comparison with other communication libraries and some implementation details can be found in [BJOR99].

The PUB-Library is available for several parallel platforms. The generated library is specified by four configuration variables PUB_MACHINE (machine type), PUB_SYSTEM (operating system), PUB_COMMUNICATION (communication library) and PUB_MODE (e.g. debug). See table 1 for supported systems.

Table: possible configurations for the PUB-Library
PUB_MACHINE description
cc, gcel, gcpp Parsytec parallel computer
crayt3e Cray T3E
ibmsp2 IBM SP/2 parallel computer
pc PC with x86
psc PC cluster with SCI
sun Sun workstation, Sparc cpu
   
PUB_SYSTEM description
aix IBM AIX
cygwin Windows, Cygnus gcc
linux Linux 2.x
nk Parsytec Nanokernel
parix Parsytec Parix
solaris Sun Solaris
unicos Cray Unicos
   

PUB_COMMUNICATION description
seq one processor
mpi MPI
tcpip TCP/IP network
tcpipmig TCP/IP network with
  migration of virtual p.
parix Parsytec Parix
shmem Cray SHMEM library
  System V IPC
yasmin SCI library
   
PUB_MODE description
release fastest version
debug additional debug code
profile generates profiling
  information
   

The configure script tries to identify the machine and the operationg system and asks for each possible communication/mode when a library is built. You can install several versions of PUB. Choose the one you want by setting environment variables before the call of pubcc (see section 1.2 for details).

PUB also contains support for virtual processors to run parallel programs for easy debugging on simple workstations (or PCs) with one of the systems above or Windows 32.


 next   up   prev   index 
Next: Environment Up: User Guide Previous: User Guide   Index
pub@uni-paderborn.de