Testing and optimizing computer hardware and software frequently requires an analysis of multiple parameters. It is often necessary to evaluate the efficiency of specific settings and chosen procedures of testing both hardware and software configurations. Because numerous parameters and settings influence overall system efficiency and stability, it is difficult to evaluate the influence of these parameters; they can be interrelated and dependent. However, their influence sometimes is mutually exclusive.
Erroneous solutions at the stages of optimization, fine-tuning, and especially upgrading computer hardware often prevent the user from fully implementing functionality and achieving maximum performance. Such errors frequently result in additional and unjustified expenses. In such cases, it is necessary to develop objective criteria that simplify the process of analyzing the influence of specific parameters.
To evaluate the influence of established parameter values, specialized software tools can be used. Tests usually can be run to analyze the performance of various computer subsystems using different combinations of the chosen parameters, and to select optimal values. Software tests solve the problem of backtracking and introduce some objectivity, the value of which depends on the software used during testing and the number of tests conducted.
For testing purposes, programs oriented toward the analysis of a specific computer subsystem can be used. An evaluation of hard disk performance often is done using the HDDSpeed program; processors frequently are evaluated using Million Instructions Per Second (MIPS). There are special tests intended for RAM and cache memory. For example, by changing memory timings in BIOS Setup, such programs can be used to evaluate the effect of these subsystems on overall system performance. Such programs often help reveal the capabilities of memory modules and optimize their operation, achieving maximum performance.
Contemporary computer games frequently are used as tests because they impose stringent requirements on computer subsystems. The list of such games includes versions of the popular Quake and Unreal. These games have long been de facto testing standards, used to evaluate both overall system performance and the performance of specific subsystems. It has become a tradition to provide the results of game tests when evaluating the performance of processors and video adapters in various output modes.
Although these programs are widely spread, the tools that allow complex analysis of computer systems have become the most popular.
When running operating systems such as Windows 9x/2000/XP/Server 2003, you can choose tests such as CheckIt, WinCheckIt, WinBench, Winstone, 3DMark, SiSoftware Sandra, and SYSmark. These programs perform complex analyses of specific devices included in computer subsystems and of their operation in coordination with other devices when performing different tasks. Besides this, some tests lay a significant workload on the system, which can be used to evaluate stability. Popular sets of tools and specialized utilities intended for heating and testing processors, such as burnP6, burnK7, CPUburn, etc., serve the same purpose.
Figs. 7.1–7.4 show WinBench 99 and CheckIt tests. Most companies that manufacture hardware components for testing their products use these utilities. This list includes such leading manufacturers as Intel, AMD, Via Technologies, Asus, and Abit. To confirm this statement, just visit these companies' Web sites.
Unfortunately, testing can't be universal. Each test usually gives preference to one or more specific tasks, such as office tasks or 3D graphics tasks.
The SYSmark 2002 test (Fig. 7.5) is a good example. It includes two parts: Internet Content Creation and Office Productivity. Each part of this test starts a set of popular applications and measures the time required to execute each operation. The first part of this test is oriented toward the system intended for creating Internet content. It includes testing the use of the following software products:
Macromedia Dreamweaver 4
Adobe Photoshop 6.0.1
Adobe Premiere 6.0
Microsoft Windows Media Encoder 7.1
Macromedia Flash 5
Office Productivity comprises tests based on standard office tasks, such as creating documents, presentations, mail messages, etc. The following applications are used in the course of testing:
Microsoft Word 2002
Microsoft Excel 2002
Microsoft PowerPoint 20002
Microsoft Access 2002
Microsoft Outlook 2002
Dragon NaturallySpeaking 5
Netscape Communicator 6.0
McAfee VirusScan 5.13
The advantage of this test over artificial tests (such as WinBench or CPUmark) is the test data replicate the performance of the system when it executes these applications. New releases of these tests are already available. The main difference of the new releases from the version discussed here is that they use newer versions of the related applications.
3DMark is one of the most popular tests of the 3D graphics subsystem. Many versions of this test have been released, including 3DMark 98, 3DMark 99, and 3DMark2001. Currently, the most popular version of this product is 3DMark2001 Second Edition (Figs. 7.6 and 7.7), which has been used actively even after the release of 3DMark03 for DirectX 9.0.
This test plays numerous video clips, checking the performance of the video subsystem as well as that of the CPU and RAM. Having completed testing, the program produces a report that includes parameters such as the Frames Per Second (FPS) and total execution time for each clip.
For the input/output subsystem, the popular WinBench 99 test is recommended. However, most manufacturers and overclockers use data produced by the lometer test (Fig. 7.8).
SiSoftware Sandra is a good set of integrated tests and system analyzers. Unfortunately, early versions of this product often contained errors and inconsistencies. However, the latest version, SiSoftware Sandra 2003, has been improved and extended considerably. This newest release includes tests for almost all components and subsystems of the contemporary computer. Functional capabilities of this program are represented by appropriate icons, used to call various components of the program (Fig. 7.9). Having completed testing, this program provides an intuitive and illustrative graphical report that shows how the tested system relates to other popular configurations. Figs. 7.10–7.12 show the results of the CPU arithmetic, RAM throughput, and network bandwidth tests.
Encoding video data in the MPEG3 format (also known as MP3 or MPEG 1 Layer 3) is a good test. Unfortunately, there currently are no standard tests of this kind. Nevertheless, you can choose any audio file and encode it in MPEG3 using any available program. This procedure, when accomplished on computers with different architecture, will allow you to evaluate the performance of the processor. This method can be used during system overclocking. Consider audio compression using the Audiograbber program and the LAME codec (Fig. 7.13).
Utilities and analyzers included in the SiSoftware Sandra toolkit will allow you to learn more about your computer.
CPUmark 99 (Fig. 7.14) is a popular synthetic test of the CPU subsystem.
When considering the functional capabilities of specialized programs, never forget standard tools. For example, the built-in monitoring tools of the Windows 9x operating system might be helpful.
Using this program, you can determine the workload of the CPU, RAM, hard disk, the size of a swap file, and so on, without exiting any system or application programs. As a result, it is easy to detect both software and hardware that tend to monopolize resources of computer subsystems. After determining the requirements of application software in resources such as RAM and virtual memory, it is easy to choose optimal strategies for upgrading and fine-tuning the computer. This may allow you to improve overall performance while minimizing financial expenses. Depending on the results of testing and monitoring, you could choose and install RAM modules for optimal information exchange.
Additionally, it is possible to specify the size and status of the swap file that virtual memory uses to operate. To increase the speed of working with this file, place it at the beginning of the hard disk (or, at least, in its first quarter); this can be achieved easily by installing the system on a new and sufficiently large disk. As a rule, this results in significant improvement of system performance. With the value of virtual memory dedicated by the system for system and application software, it is possible to choose the optimal amount of RAM to be installed on the computer.
To start the System Monitor utility, click the Start button and choose /Programs/Accessories/System tools/System monitor.
Illustrations in Figs. 7.15–7.17 demonstrate the settings and operation of the System Monitor utility. In Fig. 7.15, the four initial peaks on the Kernel: Processor Usage (%) graph correspond to the startup of the System Monitor and Microsoft Word 7, loading a file in Word 7, and the startup of Microsoft Excel. In Fig. 7.17, Microsoft Word 97 is loaded and a file is opened in this program.
To get acquainted with the functional capabilities of the System Monitor and learn the specific features of its operation, you should read its technical documentation and use the help system built into Windows 9x.
Note that in Windows NT-based systems such as Windows 2000/XP/Server 2003, another monitoring tool — Windows Task Manager — allows you to monitor the system workload and the amount of occupied and available RAM (Fig. 7.18). Besides this, Task Manager displays a list of running processes and the amount of resources consumed by these processes. For example, the avp32.exe process takes about 85% of resources and 12 MB of RAM (Fig 7.19).
The most important capability of the Task Manager is it can be used to "kill" a process that has stopped responding or is consuming too many resources. It is also possible to stop all undesirable processes. You should not stop all processes one by one, because some of them are required for the system to run.
When evaluating the functionality of the Task Manager program, pay special attention to the possibility of changing the priority of the user process. The higher the process priority, the more processor time available to that process. This allows you to manage and control the tasks running in the system and to optimize the operation of computer hardware, optimized and fine-tuned beforehand using the previously described programs.