The Black Box Approach (Parallel OVERFLOW)

The relatively steep cost of computing derivatives can be alleviated somewhat by executing OVERFLOW, itself, in parallel. To differentiate the PVM version of OVERFLOW, we used ADIFOR-MP, a new ``message passing aware'' version of ADIFOR. ADIFOR-MP processed parallel OVERFLOW to yield a parallel derivative code.

For parallel OVERFLOW on the SP2, again to compute derivatives with respect to 3 inputs, the ratio of the derivative cost to function cost remained at about 5.0, the same as for sequential OVERFLOW. The memory requirements, however, are reduced in the sense that each processor needs only enough memory for one zone, not the entire grid. For instance, a single grid with 200,000 points could be divided into 8 zones each with 25,000 points. The memory that would have stored the extra 175,000 points can be used to store derivative values instead. In this way, function code parallelism enables parallel derivative calculation.

In the extreme, it may be desirable to artificially divide a grid into more zones in order to leave even more memory available for derivative computations. Of course, one must be careful to ensure that changes to the grid do not adversely affect the fidelity of the CFD solver.