Solaris Application Performance Optimization
Many developers and users leave a lot of performance on the table due to lack of information. Several good documents on this subject are available, but they are all very extensive and might not be easy to find.
This document is a short introduction to performance on Sun systems. It tries to provide an overview of the subject as well as to supply links and pointers to tools and documentation. The intent is to provide information to help you improve the application performance of your system.
What Limits Application Performance?
This is not a trivial question. The usual system tools allow you to understand how the system as a whole is used, but these tools do not tell you if the application is using the CPU in an optimal way. To obtain optimal performance, you must look at both the system level and the application level.
For the system level, you have the usual tools such as vmstat, iostat, and so forth. Also, there is a set of performance tools developed by Adrian Cockcroft and Rich Pettit called SE Toolkit. We especially recommend the tools called zoom.se for interactive testing and virtual_adrian for non-interactive logging of system behavior. To understand what process is causing the load, the command prstat is very helpful. You can find a lot of information on system performance as well as a pointer to the SE Toolkit at http://www.sun.com/sun-on-net/performance. The actual tool is available from http://www.setoolkit.com and from http://www.sunfreeware.com.
The Performance Analyzer, which is part of the Forte™ Developer software, can be very helpful in understanding how well the application is optimized.