What determines performance

Software factors that influence performance

The way in which applications are written usually has a large impact on performance. If they make inefficient use of processing power, memory, disk, or other subsystems, it is unlikely that you will improve the situation significantly by tuning the operating system.

The efficiency of the algorithms used by an application, or the way that it uses system services, are usually beyond your control unless you have access to source code. Some applications such as large relational database systems provide extensive facilities for performance monitoring and tuning which you should study separately.

Some applications also provide information about any necessary operating system tuning or configuration that is needed to get the best performance. For example, a database management system may use raw access to a disk partition rather than going through the buffer cache. If such is the case, you can probably reduce the buffer cache size to the minimum needed by the operating system, networking, and any administration utilities. This frees up memory for the application's own use. Such applications may also require changes to the default values of STREAMS and interprocess communication resources (semaphores, shared data, and message queues), or the configuration of an additional device driver into the kernel.

If you are using applications that have been developed locally, and you have access to the source code for these, there are several areas to look at when optimizing their performance:

Factors that you should take into account when assessing the efficiency of an application's code are:
Previous topic: Hardware factors that influence performance

© 2003 Caldera International, Inc. All rights reserved.
SCO OpenServer Release 5.0.7 -- 11 February 2003