OpenAD - Components Overview


The main components as of this time are shown in figure above in the green box. Language-specific front ends (Open64) for Fortran and EDG/Sage3 for C/C++) parse the code  into their specific internal representations. The framework contains conversion components that extract the numerical kernel of the source code computing  and translates the kernel to a language-independent XML representation called XAIF. The translation includes the results of common compiler analyses performed in OpenAnalysis. All AD-specific analysis and transformation are encapsulated in the xaifBooster component. On return, the transformed XAIF is sent back to the translator components, which create source code
in the original programming language in conjunction with the compiler front ends.