“…The distribution of the database may be done statically, by assigning each PE one record (or group of records), with all PEs sharing the same code; a review of the use of processor arrays for database searching using this approach is provided by Willett and Rasmussen.27 Alternatively, the distribution of the database can be carried out dynamically by means of load balancing procedures, which ensure that records are assigned to PEs during program execution as the latter become available. This model of computation is often used with parallel machines that make use of the processor farm model of computation, where computational work is allocated to processors as they become free for further processing; the use of processor farms for database searching is discussed by Cringean et al 35 and by Downs et al11 These two, rather different approaches to parallel searching are exemplified by the two DAP implementations of the Ullmann algorithm that we have studied as described below. 36 Algorithm I uses inner loop parallelism while Algorithm II uses outer loop parallelism.…”