Abstract
Existing software integration frameworks typically require large
manual rewrites of existing codes, or specific tailoring of codes
written to be used in the framework. The result is usually a
special-purpose code which is not usable outside of the framework.
In this paper, we propose an alternative to that model - a
framework that requires little hand-modification of the programs
which use it. Our proposed framework is compiler-based, mesh-aware,
numerics-aware, and physics-aware. Descriptions of the codes and
the system make it possible to semi-automatically generate
interfacing code, while the internal parallelization, communication
and numerical solution methods are left intact. We report on some
preliminary experiments with an automatic load balancing framework
that demonstrate the feasibility of this approach.