by Kingsum Chow, Ph.D., senior performance architect, Managed Runtime Environments group, Intel Corp.
Software performance analysis of multi-tiered applications is more complex as the number of hardware and software components that can affect performance increases in many dimensions. In Part One of the series[1], J2EE Performance Optimization Part 1, we described a top-down closed loop approach to performance tuning. We then described how to apply the approach to a multi-tiered application in a case study in Part Two[2], J2EE Performance Optimization Part 2. While the method described earlier can be applied adequately when you can experiment with one tunable parameter at a time, at times an alternative approach is required, for example, to reduce the time to finish the tuning experiments, or to understand the impact of interaction of factors, which can be done by modifying more than one parameter at a time.
This article describes techniques to use when the number of tunable parameters is too large to examine one variable at a time. We describe how to use the design of experiments (DOE)[3] a well-known statistical approach, to manage for performance analysis. We will also introduce multivariate analysis (MVA)[4] to analyze data that involves multiple variables, and demonstrate how to apply the technique to optimize system configuration for a multi-tiered enterprise application.
A multi-tiered application typically depends on a large number of tunable parameters for improving the performance of the system. Many of the tunable parameters are useful only for programs with certain workload characteristics; a known set of configuration parameters optimized for one workload may not be the best for another. Re-examining all configuration parameters for different workloads is too time-consuming as the number of configuration parameters is large. The selection of proper optimized parameters for a particular workload is controlled by users via database (DB), operating system (OS), managed runtime (MRT) and application server configurations on all the machines involved. Since each configuration can contain many tunable parameters, the total number of parameters is usually large, and each may specify a large range of values. We face the following two problems:
- Selection Problem: select the best set of parameters for a workload; solving this problem provides a powerful tool to obtain the best performance for user programs.
- Interaction Problem: determine the interactions between tunable parameters; solving this problem helps both the users and the system developers to understand the effects of the tunable parameters.
![]()
![]() | Wireless enterprise networking with mobile software by Jim Geier, principal, Wireless-Nets Ltd. Intel Corp. Take a clos... |
![]() | Getting ready for hyper-threading technology, part I: changing the mindset by Andrew Binstock, principal analyst, Pacific Data Works LLC. Intel C... |
If you're interested in this topic, these articles may be helpful:
![]() | Rational Performance Tester V7.0.1 Download a free trial version of Rational® Performance Tester. R... |
![]() | J2EE performance optimization, part 1: laying the foundation by Kingsum Chow, PhD, senior performance architect with the Managed ... |
![]() | Creating C# wrappers for Intel Integrated Performance Primitives using Microsoft .NET interoperability mechanisms from Intel Corp. One of the beauties of .NET is that an object wri... |
![]() | Online Trial: Rational Performance Tester Now you can try out Rational Performance Tester online without having ... |
![]() | Creating high-performance embedded applications through compiler optimizations from Intel Corp. The role of the compiler in application developmen... |
![]()
Related Jobs:
![]() | Grid Infrastructure Engineer #RX1000022053 - CA - Sunnyvale - Yahoo! Inc. Grid Infrastructure Engineer, Utility Computing Services Job No. ... |
![]() | Product Support Engineer #RX1000025071 - CA - Burbank - Yahoo! Inc. Product Support Engineer Job No. RX1000025071 Location US - Bur... |
![]() | IS Enterprise Architecture #186445 - NJ - Basking Ridge - UnitedHealth Group IS Enterprise Architecture (IBM mainframe technology/DB2/CICS) - NJ,... |
![]() | Web Master #4833043 - MD - Gaithersburg - Ajilon Description : Short Description: The Sr. Web Master is respons... |
![]() | Software Engineer, Staff #58130 - WA - Issaquah - Siemens AG Software Engineer, Staff Company Siemens Medical Solutions USA, Inc... |
![]() | Sr Software Engineer #58589 - MN - Minnetonka - Siemens AG Sr Software Engineer Company Siemens Power Transmission and Distrib... |
![]() | Tech Yahoo, Software Apps Dev Eng, Sr #RX1000025302 - CA - Sunnyvale - Yahoo! Inc. Tech Yahoo, Software Apps Dev Eng, Sr Job No. RX1000025302 Loca... |
![]() | Java Developer #17503BR - VA - Vienna - ManTech International Corporation Responsibilities ManTech IS&T is looking for people to solve the tough... |
![]() | Software Engineer #58587 - MN - Minnetonka - Siemens AG Software Engineer Company Siemens Power Transmission and Distributi... |
![]() | Sr. Documentum Developer #webm-00000434 - NY - New York - WebMd Req Number: webm-00000434 Job Title: Sr. Documentum Developer ... |

