@Manual{chapple:pulpf,
  author = {S. R. Chapple},
  title = {{PUL-PF} Reference Manual},
  year = {1994},
  month = {January},
  organization = {Edinburgh Parallel Computing Center},
  note = {EPCC-KTP-PUL-PF-PROT-RM 1.1},
  URL = {file://ftp.epcc.ed.ac.uk/pub/pul/pf-prot-rm.ps},
  keywords = {parallel I/O, multiprocessor file system interface, pario-bib},
  comment = {See also chapple:pulgf and chapple:pario. An evolution of their
  parallel I/O interface. PUL-PF is a library on top of existing file systems.
  Every process is either a client or a server; servers write some portion of
  the file to a file in the file system. Servers can be divided into groups so
  that files need not be spread across all servers. There seems to be client
  caching, with consistency controlled differently depending on access mode;
  when necessary, the application must call get-token and send-token commands
  to serialize access to an atom. Independently of their single, multi, random,
  and independent mode, they can read or write the next, previous, current, or
  ``wild'' atom (wild means the next ``most available'' atom not yet read by
  this process). Most I/O is on atoms, but particles (pieces of atoms) can also
  be independently read and written. Hints are supported to specify access
  pattern (random or sequential, stride), file partitioning, mapping, atom
  size, or caching. In many of those cases it goes beyond a hint to the supply
  of a user-defined function, e.g., for cache-replacement algorithm.}
}

