Solved

Performance on multicore vs single core

Posted on 2008-10-29
7
1,042 Views
Last Modified: 2013-12-10
We are seeing some significant performance differences on single vs
multi-core processors on AMD chips.

We have a database application that we are running on XP which also
does regression analysis.

I have asked the manufacturer of the software if they have seen this,
but they have not.  They are using Clarion from SoftVelocity to build
the application.

on some systems I know the core others I do not

 AMD Athlon Socket 939 (single) 4000+       102 secs

 AMD Athlon 64 X2 (Toledo) (single) 4800+          145 secs

AMD Athlon 64 (Unknown) (dual) 3500+               184 secs

AMD  Black Edition (Brisbane) (dual) 5000+         780 secs
(Overclocked to 3GHz)

AMD  Athlon 64 (Brisbane) (dual) 5200 +

AMD Quad Phenom 9950                                    810 secs

We then installed the application on an operating system installed as
guest in VMWare

AMD  Quad Phenom 9950                                      92 secs

Any idea on what is going on here.  This really doesn't make sense.  I
would expect maybe a little performance hit but 5 to 6 times
different..

The only hint I can see of the issue may be the run made on the
Toledo.   While it's clock speed is faster It's performance is still
worse than a 4000+.  My understanding is that a Toledo is a dual core
with one core disabled.

The software being used in these tests were written using SoftVelocity/Clarion.   I will more than likely post a specific problem to the Clarion group,  because although the problem is different I think it may be related.

But, this is not the only software in use where we are seeing the problem.  This is just the software that is causing the most problem.
0
Comment
Question by:baggins2001
  • 4
  • 3
7 Comments
 
LVL 6

Expert Comment

by:Twisteddk
ID: 22849201
Not knowing your software, it's difficult to answer this. However, I'll give you a little backgorund, and let you draw your own conclusions:

A single core system is genreally consideren to be faster than a dual core system in terms of "actual clockspeed". This is because a dual core system will have two CPUs in the same physical space as a single system will have only one.
However, new technology allows for some pretty mean miniturization, so this "rule" might not always be true.
Also, you should always perform your test many time, so as to not run into situations where another job is screwing up your measurements.
That said, each generation of CPUs perform the same task differently because of differences in design. Thus two CPUs from the same year can easily have many differences in executions. In the days of old, this was most easily seen in interger and floating point operations, which for a long time meant that the latest version of Quake would always run faster on Intel CPUs than AMD CPUs of the same clockspeed.
In order for a program to truely take advantage of multicore CPU architecture, the program as WELL as the OS must be configured correctly to accept multiple threads. However, even if you're able to thread this GENIOUSLY, you'll never be able to halve the speed by using twice as many CPUs as there will be some overhead in threading and joining the results.

So while 5 times the execution time SOUNDS like a lot, it's theoretically possible if you hit all the wrong combinations of factors influencing the operation of the program. However, it seems more likely that you're running into a design flaw/limitation in the programming or the OS.
0
 

Author Comment

by:baggins2001
ID: 22850594
Thanks for your response.

This was actually a dual core.
AMD Athlon 64 X2 (Toledo) (single) 4800+          145 secs

Most of these systems were stripped bare and installed on brand new installations of XP with SP2 and the AMD drivers installed.

We have also obtained results for running this in an Intell E8550,
Intel E8550                                                               150 secs

We are still testing, but more sporadically, since we have found what we consider a temporary fix, running inside of VMWare.

I have contacted AMD and VMWare technical support.  None seem to be able to figure this one out.

Next test will be to go back and retest a couple of systems and make sure we had cpu affinity set correctly.


0
 
LVL 6

Expert Comment

by:Twisteddk
ID: 22850752
Or if the program supports it, try installing a Linux flavor. Most linux' are every bit as good at multithreading as the latest Windows server editions, at a fraction of the cost. This will at least let you know if it's an OS limitation.
0
What Security Threats Are You Missing?

Enhance your security with threat intelligence from the web. Get trending threat insights on hackers, exploits, and suspicious IP addresses delivered to your inbox with our free Cyber Daily.

 

Author Comment

by:baggins2001
ID: 23000578
The software doesn't work on linux, but works on XP.  The best times  were achieved running XP in VMware on 64bit linux on the 9950 quad core system.
0
 
LVL 6

Accepted Solution

by:
Twisteddk earned 500 total points
ID: 23007753
Ah well. That might answer a few questions. Generally, XP isn't a truly multi threaded OS, and most programs written for it are even less so. So running it on a virtual machine might actually speed up things because the multithreading is much more efficient on the Linux box. However, you cant generalize. But if it's a database application, there are many databases availabel for Linux flavors, in case you have the option of choosing which DB to utilize. A single threaded DB does sound like quite a limitation. Are you sure the DB is configured correctly for the job ?
0
 

Author Comment

by:baggins2001
ID: 23008394
According to the vendor it is.  
But if we are running on a virtual machine, (this may be the part I don't understand) isn't  the virtual machine just pretending to be a simulated computer, and the actual software (OS and applications) behave the same as on a regular computer.
I mean my tests seem to bear this out that it doesn't behave the same.  But I am also trying to understand why and how vmware saved my butt and would any hypervisor that I had used done the same thing.
But you answered my original question. Thanks.
0
 

Author Closing Comment

by:baggins2001
ID: 31511446
I think this question was a little harder than the points I allocated.  But I really appreciate your help and I'll start a new question soon and see if someone else or you can answer the question of cpu and virtual machine/hypervisor architecture.
0

Featured Post

What Is Threat Intelligence?

Threat intelligence is often discussed, but rarely understood. Starting with a precise definition, along with clear business goals, is essential.

Join & Write a Comment

Suggested Solutions

Entering a date in Microsoft Access can be tricky. A typo can cause month and day to be shuffled, entering the day only causes an error, as does entering, say, day 31 in June. This article shows how an inputmask supported by code can help the user a…
Creating and Managing Databases with phpMyAdmin in cPanel.
Video by: Steve
Using examples as well as descriptions, step through each of the common simple join types, explaining differences in syntax, differences in expected outputs and showing how the queries run along with the actual outputs based upon a simple set of dem…
Polish reports in Access so they look terrific. Take yourself to another level. Equations, Back Color, Alternate Back Color. Write easy VBA Code. Tighten space to use less pages. Launch report from a menu, considering criteria only when it is filled…

760 members asked questions and received personalized solutions in the past 7 days.

Join the community of 500,000 technology professionals and ask your questions.

Join & Ask a Question

Need Help in Real-Time?

Connect with top rated Experts

23 Experts available now in Live!

Get 1:1 Help Now