Performance Engineering:
Co-Optimization of Computer Applications and Architectures
Performance and applications have been driving the evolution of the computer industry to where it is today. Many people can write programs, but those who are familiar with computer architecture, optimizing compilers, operating systems, and performance tools, can write better programs -- robust, efficient and scalable programs which run several times faster and waste less energy. Performance engineering is a best practice and a research to find ways to improve application performance with a wide range of hardware or software techniques.
Performance engineering covers many areas in computer systems. As a system performance expert, one needs to be knowledgeable on computer architecture and system programming. It is an art to evaluate performance problem precisely, identify performance problems quickly, and decide on proper solutions wisely. In our lab, we use state-of-the-art performance tools to analyze applications ranging from embedded processing to high-performance computing. We work with industry partners on real applications and develop skills and techniques to solve problems in designing and optimizing applications.
Many research topics in this field are still open, and we are focusing on innovative ways to profile performance, model application behavior, simulate execution, and evaluate future system designs. Today, we take this approach to solve performance problems found on Android-based smartphones, embedded multicore systems, and cloud computing.
Many research topics in this field are still open, and we are focusing on innovative ways to profile performance, model application behavior, simulate execution, and evaluate future system designs. Today, we take this approach to solve performance problems found on Android-based smartphones, embedded multicore systems, and cloud computing.
沒有留言:
張貼留言