Active Projects And Grants for Qing Yi |
|
I'm currently the principle investigater of three grants, with student support
available from each grant. My main research focus is using POET , a transformation
scripting language, to build software development tools for improving both
software productivity and performance. Here are some links for the POET project.
|
|
NSF CAREER award CCF-0747357
This research develops programming language as well as compiler analysis and optimization techniques to support the automated translation of software from high-level design to low-level efficient implementations. This research develops a multilayer code synthesis framework that systematically produces high-quality software by effectively combining software verification techniques with program analysis and compiler optimization in a three-phase translation process. First, starting from the software design phase, the framework automatically translates formal software semantic specifications into object-oriented or procedural implementations based on strategies selected by programmers. Then, based on knowledge from the software-design phase, a sequence of domain-specific optimizations is applied to the implementation to improve algorithm efficiency. Finally, architecture-specific optimizations are applied to performance-critical routines, and the optimized routines are empirically tuned as the application is ported to different machines. Different design and programming languages may be used in each translation phase, and software verification technology will be used to ensure the correctness of each translation. The research focuses on scientific computing and system software applications, where both correctness and performance are of critical concern. The integrated research is expected to significantly improve both the trustworthiness and performance of existing software development. |
|
NSF HECURA award CCF-0833203
This research develops a new optimization model that allows 1) developers to effectively interact with advanced optimizing compilers to provide both domain-specific knowledge and high-level optimization strategies (e.g., directions to enable new or choose amongst differing parallelization strategies); 2) computational specialists to easily define arbitrary domain-specific transformations to directly control performance optimizations to their code; 3) architecture-sensitive optimizations to be easily parameterized and empirically tuned to achieve portable high performance. The optimization model is supported with an integrated environment that contains two main components: ROSE, a C/C++/Fortran2003 source-to-source optimizing compiler developed at DOE/LLNL; and POET, a transformation language together with an empirical optimization engine developed at UTSA. This framework permits different levels of automation and programmer intervention, from fully-automated tuning to semi-automated development to fully programmable control. The research targets both the optimization needs of computational kernels and the more general requirements of whole program optimizations. The framework is integrated as an external development mechanism for the widely-adopted ATLAS library and is connected with empirical tuning research under DOE SciDAC program to improve the efficiency of large-scale scientific applications. |
|
Lawrence Livermore National Laboratory Sub-contract B574748
|
|