The goal of using parallel processing is to solve a given problem in less time than it takes to solve the same problem on a single processor. Ideally, two processors should take half the time that two processors take. And so on, as you add more processors, you should be able to reduce processing time accordingly.


For many applications, the binary tree architecture is the most efficient parallel processing method.

The higher-level system software is based on a simple paradigm. Each processor will run the same program. However, each processor will be given a different data set to

solve the problem. As each processor reaches a resolution, it transmits its result back through the tree to the main host processor. These four steps are described as (1) Broadcasting of instructions and data, (2) Parallel execution, (3) Resolution, and (4) Reporting.

Here is a real example: A known set of patterns are distributed among the processors (BPEs). The broadcast function is used to simultaneously send the ‘unknown input pattern’ from the Host computer to all of the BPEs where the search function is to be performed. The resolve function causes the best match to be filtered back through the tree from the

farthermost BPEs to successive levels of BPEs until the best match reaches the Host computer.  BPEs at each level, except for those at the farthermost positions, choose the best match from those received to be sent toward the Host computer. The architecture is scalable.  Scalability of a multiprocessor computer system is achieved if the number of BPEs can be easily changed without having to make





Other Software Products