CPU Performance Evaluation - Benchmark - Pentium 4 2.8 and 3.0
Purpose
The purpose of this Benchmark is to test the difference between two Pentiums 4.
For more detail about the tests performed see here: CPU performance - part 1 and: CPU performance - part 2
The following three CPU's were tested:
- Intel Pentium 4 2.80 GHzThis one has a CPU Mark of 415. Evaluation 7 planets: 8.38
- Intel Pentium 4 3.00 GHzThis one has a CPU Mark of 491. Evaluation 7 planets: 9.5 and dropping.
- Intel Core i5 M 460 @ 2.53 GHzThis one has a CPU Mark of 2582. Evaluation 7 planets: 5.2
|
P4 2.8 |
P4 2.8 |
P4 3.0 - 1T |
P4 3.0 - 2T |
i5 |
|
CPU Benchmark |
415 |
415 |
491 |
491 |
2539 |
|
Fiblong 40 |
2719 |
|
2250 |
|
4675,7 |
msec C/C++ |
Fibonacci50 40 |
63,6 |
|
86,4 - 112,1 - 125,8 |
|
106,5 |
sec VB 5.0 |
Fibonacci 40 |
34,5 |
|
40 - 53 - 60,4 |
|
43,8 |
sec VB 2010 |
FibonacciPP 40 |
2 |
|
2 - 3 - 3,5 - 3,8 |
3 - 3,6 - 3,7 |
3.6 (2.1) |
sec VB 2010 |
FibonacciPP 45 |
22,4 |
|
20 - 42 |
20 - 41,4 |
39 (23,4) |
sec VB 2010 |
Planet3dSimple |
9,3 |
|
9,7 - 7,5 - 5,2 |
|
|
VB 5.0 |
Planet3dSimple |
9,3 |
|
9,2 - 9,3 - 6,5 - 4,5 |
|
|
VB 5.0 |
Planet3dSimple * 2 |
6,4 |
2,9 |
3,8 - 3.0 - 2,6 |
3,8 - 3.0 - 2.6 |
|
VB 5.0 |
PlanetPP 10 |
7502 |
|
8173-8184-5216-4057 |
5217-4657-3370-3066 |
|
VB 2010 |
PlanetPP 100 |
104 |
|
109 - 62 -58 - 55 |
92 - 56 -52 - 50 |
|
VB 2010 |
PlanetS 100 |
107 |
|
110 -73 -58 - 55 |
|
|
VB 2010 |
VStest1 1 |
76453 |
|
108925 - 59510 |
61645 - 32010 |
|
VB 2010 |
VStest2 1000 |
70 |
|
83 47 - 39 - 40 |
33 - 32 |
|
VB 2010 |
- The first column identifies the program tested.
- The units of Programs Fiblong, Fibonacci50 and FibonacciPP is time. That means how smaller how faster the CPU
The units of the other programs is iterations or cycles. That means how larger how faster the CPU
-
- The second column shows the results for Pentium 4 2.8 Ghz
- The third column shows the results for Pentium 4 2.8 Ghz when the program is loaded twice.
- The fourth column shows the results for Pentium 4 3.0 Ghz with 1 Processor used
- The fifth column shows the results for Pentium 4 3.0 Ghz with 2 Processors used
- The sixth column shows the results for the CPU i5 2C/4T
- The seventh column shows the units and the compiler or language used.
The program Fiblong is written in C/C++. This is the only program that performs as expected. However this program is not a good CPU test, because its duration is very short. The program does not involve parallel processing.
The programs Fibonacci50 and Planet3dSimple are written in Visual Basic 5.0.
The programs VSTest1, VSTest2, FibonacciPP, PlanetPP and PlanetS are written in Visual Basic 2010 Those programs were compiled on a different PC (CPU i5, column 6).
For more information about the programs Fibonacci50, Fibonacci and FibonacciPP see: Fibonacci benchmark
-
When I tried to execute program planetPP on Pentium 4 3.0 I received the error message:
- "To run this application, you first must install one of the following versions of the .NET Framework: v4.0.30319".
- You can get this download from: Microsoft .NET Framework 4 (Web Installer) . After installation it was possible to run the programs.
Planet3dSimple is a VB 5.0 program, which shows a simulation of the planets around the Sun. In this case 7 planets were tested.
The results specific for the P4 3.0 were not as expected.
|
- The performance of the P4 2.8 is constant in time, that means also when the program runs for hours.
- The performance of the P4 3.0 is constant for roughly 1 minute (good performance) and then the performance starts to decrease to roughly 50% This is very strange. This result is identical for all programs used.
- The picture on the left (which comes from the program planet1.xls) shows the same behaviour as Planet3dSimple.
|
- The task manager for the P4 2.8 shows a load of 100%. The top display of the task manager shows 1 box.
- The task manager for the P4 3.0 shows a load of roughly 55%. (With one program loaded). The top display shows two boxes, which means 2 threads.
|
|
PlanetPP is a Visual Basic 2010 program also to test the simulation of planets around a Sun. The masses of the planets are 0, that means they move in circles. PlanetPP 10 means that 10 planets are tested. PlanetPP 100 means that 100 planets are tested.
The performance of the P4 2.8 was constant. The performance of the P4 3.0 shows this typical drop to roughly 50%.
For more information about planetPP see here: CPU performance - part 2
A special test was done to load the Planet3dSimple program twice.
- For the P4 2.8 the results show that if you load a program once compared if you load the same program twice that the total performance is the same. In this case 9.3 = 6.4 + 2.9. However different outcomes were also possible were the load was equally shared: 9.3 = 4.6 + 4.6 The task manager shows a result of 100%.
- The P4 3.0 also shows the same total performance with one or two programs. The performance of both decreases in time. The task manager shows a result of 100%
- That is not what you would expect. With the program loaded twice you expect the same or better overall performance as the P4 2.8. That, unfortunate, is not the case.
Msconfig
There is one question: Is it possible with MSconfig to change the number of threads used by the P4 3.0 from 2 to 1 ? (or change it by some other means)
I expect the answer is: No.
Reflection part 1
- The Pentium 4 2.8 is a 1C/1T CPU.
- The Pentium 4 3.0 is a 1C/2T CPU. Memory Size is 960 MB.
- The Intel i5 is a 2C/4T CPU.
The most important technical issue is that the Pentium 4 3.0 is a 1 Core/2 Thread. To read about threading read this: Multi Processors, Parallel Programming, Threads and Threading
Observing the tests results, the only sensible conclusion is that the Pentium 4 3.0 has a very poor performance. What is so amazing that adding a second thread in the CPU did not improve performance. See column six.
I expect that this is the first Dual Thread Intel CPU.
Read more: Pentium 4 Northwood
A typical case is the program VSTest1 on Pentium 4 3.0 test 12
The performance factors for processor 1, with 1 thread used are (time in seconds between brackets):
- 108925, 109472 (120), 109294 (180), 108628(300), 101812(400), Restart 78000, at end: 59510
-
The performance factors of processor 1, with 2 threads used are:
- 61645, 49119 (60), 44077 (120), at end: 31510 (1600)
-
What those numbers mean that:
- With one processor initially the performance of the 3.0 is much better as the 2.8, but slowly this performance starts to deteriorate to roughly 50% while the load is constant and equal to 50%
- With two processors used the performance also deteriorates to roughly 50%
The only thing is that the total performance with the 3.0 is slightly better with 2 processors/threads. 2*3150=63020 versus 1*59510. But this is still worse than the performance of the 2.8 which is constant all the time.
Reflection part 2
A PC is a Personal Computer.
The question that arises what is accordingly to Intel a Personal Computer.
For a scientist it should be a system which he or she can use to solve one problem by using the capabilities of a PC for a hundred percent. A scientist expects that designer of a PC uses that philosophy
A main frame uses is a different philosophy. A main frame has many users. The philosophy should be here that each user should be treated equal.
For a full list of all Pentium 4 Processors go to here: Intel® Pentium® 4 Processors with 533 MHz FSB This is the full list showing 91 products. Some are 1C/1T and some are 1C/2T.
IMO what you need for a scientific application is a 1C/1T (or a 2C/2T).
The question remains if it is possible to change a 1C/2T into a 1C/1T. I doubt this is.
For the philosophy of .NET framework read this: .NET Framework Highlights
Documentation - Hyper-threading - P4
The following are three documents which discuss the issues of hyper-threading in relation to the Pentium 4.
-
Intel Pentium 4 3.06 GHz with Hyper-Threading support
This document starts with the sentence:
-
We have just received the Pentium 4 2.8 GHz, etc
-
Indicating when the article was written.
In this document at the end we read:
-
Well, the Hyper-Threading technology allows increasing efficiency of the processor in certain cases. In particular, when applications of different nature are used simultaneously.
-
and:
-
The style of the Hyper-Threading is a combination of entertaining or service processes with "working" processes. You won't get a tangible gain in most classical multiprocessor tasks if you run one application at a time. But you will surely make shorter the time of execution of most background tasks used as a makeweight. Intel has actually reminded us that operating systems we are using are multitask, and it offered a way to speed up fulfilment of a complex of simultaneously executed applications (not a single one). This is a very interesting approach, and we are glad this idea is realized.
-
-
Hyper-Threading on the Pentium 4 December 2002
In this document at the end we read:
-
In our study of workload characteristics on an actual Hyper-Threading enabled Pentium 4
machine we identify "Contending" workloads that degrade performance and "Complementary"
workloads that enhance performance. One important outcome was that memory intensive job
mixes perform badly on Hyper-Threading.
-
-
Tuning Performance of Multi-threaded programsBy Ivo Zatloukal. Exminer Prof Jari Porras. 15 May 2004
In this document at the end we read:
-
Hyper-threading is a technology that brings speedup to many problems, but not all. The speedup
depends mainly on problem size and memory access pattern. Extra care must be taken where the
memory access is regular (i.e. matrix operations) which can cause significant penalties in parallel
algorithms.
-
Feedback
None
E-mail:nicvroom@pandora.be.
Created 12 January 2011
Modified 19 January 2011
Modified 10 August 2012
Back to my home page Contents of This Document