The suite of PassMark Performance Tests contains multi-process CPU tests such as:
- Integer (32-bit addition, subtraction, multiplication and division)
- Floating Point (32-bit addition, subtraction, multiplication and division)
- WIN32: MMX (matrix multiplication) or WIN64: 64bit Integer Matrix Multiplication
- WIN32: SSE (128-bit SSE operations such as addition, subtraction and multiplication) or WIN64: 64bit Floating Point Matrix operations
- WIN32: 3Dnow! (3D transformation of an array of 32-bit vertices) or WIN64: 64bit Floating Point Matrix operations
- Image Rotation (Rotate image co-ordinates in memory)
- Random String Sorting
Integers are whole numbers such as 23, 459532, -26. Floating point numbers contain a fractional part, e.g. 1.003, 98394.2. These two types of numbers are treated quite differently inside a computer, which is why PerformanceTest differentiates between the two.
For each of the integer tests, a large array of random 32 bit integers is processed using the particular mathematical operations listed below. For the floating point tests, single precision floating point numbers (32 bit) are used.
The "PassMark rating" is a weighted average of all the other test results and gives a single overall indication of the computers performance. The bigger the number, the faster the computer. The "PassMark rating" can only be calculated if the results from all other tests are available. The value is calculated as follows.
|CD / DVD||9%|
In our case however, we only ran the suite for the CPU.
First, we chose "All" the tests for the CPU, as described above. The following results are for the Intel P4 3.73Ghz ED:
Below you can see the difference between the 3.73Ghz ED and the 660.
|Test||P4 3.73Ghz||P4 660|
As was expected, in all cases the P4 3.73Ghz ED was better.
The Advanced Multi Process Test of the PassMark benchmark is designed to run a series of standard benchmark tests in parallel, to examine the performance under these conditions. Multiple processor machines should excel under this kind of environment, as the load is split between the various CPUs.
The tests include a number of the standard PassMark benchmarks along with some popular benchmarking algorithms and tests which emulate some day-to-day operations your CPU may be required to carry out which are particularly processor heavy.
As the tests are quite varied, as are their results, it unfortunately means that no graphing feature exists as is common amongst the other Advanced Tests. However, it is still possible to export the various results to HTML as usual.
|Test Name||Intel 3.73||Intel 660||Primes found|
|Prime Number Search||51341||57306||Primes Found|
|Sorting Random Strings||153388||84490||Thousand strings sorted per second|
|Compression||264||331||KBytes per second|
|Encryption||1409.74||831.61||KBytes per second|
|Rotation||22.78||27.92||Rotation per second|
|MMX Addition||49.87||40.87||Million Ops/Sec|
|MMX Multiplication||46.91||99.25||Million Ops/Sec|
|Integer addition||75.35||44.84||Million Ops/Sec|
Generally, the P4 3.73Ghz ED was faster, but there are some cases where the P4 660 performed better.
More details about each test below:
- Prime Number Search:
This test uses a simple brute force prime number finding algorithm. It begins at 3 and checks every integer to see if it is a member of the set of primes. (A prime number is one which is divisible only by 1 and itself). The test reports the amount of primes found and the largest prime. Note that for longer test periods, the rate of Primes Per Second found will drop as the distance between primes gets larger.
- Sorting Random Strings:
The test uses qsort to continually sort 1000 strings of 256 characters. Once the test duration expires, the test reports the speed of the sorting in thousands of strings per second.
The Compression test uses an Adaptive encoding algorithm based on source code from Ian H. Witten, Radford M. Neal, and John G. Cleary in an article called “Arithmetic Coding for Data Compression”. The system uses a model which maintains the probability of each symbol being the next encoded. It reports a compression rate of 363% for English text, which is slightly better than the Huffman method. This test reports its results in KBytes/Sec compressed.
The encryption test uses the Blowfish enciphering algorithm. It is based on the C implementation by Paul Kocher. Data is enciphered using a 16byte key in blocks of 4 KB. The test reports in KBytes/Sec.
The rotation algorithm is a PassMark developed algorithm using standard rotation mathematics. The test uses a 400 x 400 pseudo image with one byte of data per pixel. The image is rotated degree by degree, with each degree counting as one rotation. The test reports in rotations per second.
- MMX Addition:
- MMX Multiplication:
These are the standard PassMark benchmarks. See MMX Tests for more information. These tests are only included with the version of PT that is for the 32-bit version of Windows.
- Maths Integer addition:
This is a standard PassMark benchmark. See Maths Tests for more information.
The Whetstone benchmark is one commonly used to test floating point arithmetic. The algorithm is based on the original C source code written by Rich Painter. The benchmark is designed to test the speed of commonly used floating point CPU instructions. The test reports in MIPS (Million Instructions Per Second.)
The Dhrystone benchmark is one commonly used to test a machines integer arithmetic. The algorithm is based on the C source code for Dhrystone version 2 by Reinhold P. Weicker. The test reports in MIPS.
- Memory Read:
- Memory Write:
These are the standard PassMark benchmarks. See Memory Tests for more information.
- Disk Access:
This test uses the same test engine as the PassMark Advanced Disk Test. The test uses a file size of the current available RAM, a block size of 4K, the Win32 uncached interface, a 50%/50% RW level, it is 100% Sequential and executed in Synchronous mode. The test reports its results in MB/Sec.