Quantum Chromodynamics (QCD), which models the interactions of quarks and gluons, forms part of the standard model, currently the best theoretical framework of unified particle interactions. Lattice QCD is a method of simulating the theory of QCD in a discretised form on computers. This approach to particle physics is vitally important for providing a comparison with experimental measurements and predicting new particle properties. To implement lattice QCD we require very high performance computers, the latest generation of which are known as Massively Parallel Processors (MPPs). These are available in two main distinct architectures, Multiple Instruction Multiple Data (MIMD) and Single Instruction Multiple Data (SIMD). We present a suite of lattice QCD software intended to be portable across all currently available MPP platforms. This is achieved by utilising emerging standards in parallel programming languages. We use subset High Performance Fortran for SIMD machines and the PVM message passing package, with provision for the forthcoming Message Passing Interface (MPI) standard, for MIMD machines. Software engineering techniques are used to design and document a package which delivers a high output of physics results without a large investment in optimisation for new platforms. This is achieved while still preserving the major requirements of reducing memory demands and increasing speed and user understanding. Detailed procedures for testing the package and validating results are presented, without which there could be little confidence in the physics generated. To evaluate the efficiency of the software suite we present timings for important code sections generated on a range of MPP platforms.
Identifer | oai:union.ndltd.org:bl.uk/oai:ethos.bl.uk:662356 |
Date | January 1994 |
Creators | Stanford, Nicholas Paul |
Publisher | University of Edinburgh |
Source Sets | Ethos UK |
Detected Language | English |
Type | Electronic Thesis or Dissertation |
Source | http://hdl.handle.net/1842/14479 |
Page generated in 0.0021 seconds