Results are used to tune performance by restructuring the code and data of targeted application codes, and also provide useful information for porting such codes to message-passing and distributed computing environments. The project includes the development of tools that automatically exploit this information and implements much, and sometimes all, of the code conversion to a message-passing version. Develop performance models for high performance workstations and MPP systems. Characterize the Center's application codes, yielding a hierarchy of bounds on achievable performance that identify specific causes and regions of performance degradation. Although numerical optimization methods are routinely applied with practical success to design systems and components, difficulties arise for the design of large systems.
Problem size becomes too large to expect reliable results from numerical optimization algorithms.
Even when numerical results are obtained, the designer may not be able to adequately interpret the engineering trade-offs implied. Partitioning of the system optimization model into smaller submodels becomes necessary, and coordination strategies must be employed so that the solution generated by subproblem optimizations fulfills the system level optimally criteria. This approach allows solving the design problem in a distributed environment and offers a better interpretation of the results. A methodology for decomposition analysis of large-scale systems has been developed as part of this project. The methodology aims at identifying weakly-connected substructures implicit in the system model that may allow efficient parallelization of the solution while satisfying availability of computational resources.