473,387 Members | 1,897 Online
Bytes | Software Development & Data Engineering Community
Post Job

Home Posts Topics Members FAQ

Join Bytes to post your question to a community of 473,387 software developers and data experts.

Caveats associated with dual processor systems

My client has upgraded their server to dual-Xeon and we're getting some
strange symptoms. Mostly this is happening in static classes where static
properties and members aren't protected, but also strange things like a
booking has been created by User A but the record was saved with User B's
information.

I was wondering, are there any gothcas to look out for when an app is
running on dual processor systems. I understand the granularity of thread
time-slices is down to a single clock-tick. Is there a list of do's and
don't and best practices to follow.

Thanks

Ben
Feb 16 '06 #1
1 1019
On Thu, 16 Feb 2006 19:38:11 -0000, "Ben Fidge"
<be*******@nospambtopenworld.com> wrote:
My client has upgraded their server to dual-Xeon and we're getting some
strange symptoms. Mostly this is happening in static classes where static
properties and members aren't protected, but also strange things like a
booking has been created by User A but the record was saved with User B's
information.

I was wondering, are there any gothcas to look out for when an app is
running on dual processor systems. I understand the granularity of thread
time-slices is down to a single clock-tick. Is there a list of do's and
don't and best practices to follow.

Thanks

Ben


If the code has race conditions [1], then an MP system can certainly
bring out the worst in the software. It's not because the timeslice
changes, it's because threads really do execute concurrently (instead
of just appearing to execute concurrently on uniproc system).

One approach would be to scour through the code and place locks and
Monitors where appropriate, but a better approach might be to get rid
of the static state where ever possible. It's hard to find all the
places you need a lock. It's easier to write the code so that you
don't have to worry about a lock, or let another service (like a
database) worry about locking.
[1] http://en.wikipedia.org/wiki/Race_condition
--
Scott
http://www.OdeToCode.com/blogs/scott/
Feb 17 '06 #2

This thread has been closed and replies have been disabled. Please start a new discussion.

Similar topics

9
by: Tomer Ben-David | last post by:
Hi I have a big j2ee appliction that was so forth run on a single cpu machine. I have tested it on a dual cpu machine, its running much slower (about X3 times slower). I know that...
1
by: Frank | last post by:
Hi, we are using oracle clients (Release 9.0.1.0.1 - Production) on an NT4 (Service Pack6) computers. the server is a W2K, (Oracle9i Enterprise Edition Release 9.0.1.1.1 - Production With the...
5
by: John Dalberg | last post by:
I am planning to build a server to be used as a SQL Server and web server. Right now I can only use a single box for both. I have read some threads were dual processors are having problems with...
40
by: John Brawley | last post by:
Greetings, all. I have a program I'm trying to speed up by putting it on a new machine. The new machine is a Compaq W6000 2.0 GHz workstation with dual XEON processors. I've gained about 7x speed...
7
by: cwahlmeier | last post by:
Greetings, I am running DB2 Workgroup Edition on an Intel box with two physical CPUs. It is running Windows with hyperthreading. Thus, the operating system thinks it has 4 cpus. I am about to...
2
by: webwarrior | last post by:
Hi, Is there a reason why we have to pay more for licensing for a different kind of processor? Why are we not charged for the Hyperthreading on some processors also. If Oracle is really...
13
by: Pieter | last post by:
Hi, Maybe a little bit off-topic, but it still seemd the best place to ask for it :-) I'm planning to buy a new development laptop, and I would like to buy an AMD, Dual Core,-bit But none of...
3
by: Michel Meex | last post by:
Hello, I have an application, that has been running on a single processor server for more then a year without any problems. Now I'm migrating to a dual processor server, and I'm experiencing...
1
by: Michel Meex | last post by:
Hello, I have an application, that has been running on a single processor server for more then a year without any problems. Now I'm migrating to a dual processor server, and I'm experiencing...
0
by: Charles Arthur | last post by:
How do i turn on java script on a villaon, callus and itel keypad mobile phone
0
by: aa123db | last post by:
Variable and constants Use var or let for variables and const fror constants. Var foo ='bar'; Let foo ='bar';const baz ='bar'; Functions function $name$ ($parameters$) { } ...
0
by: ryjfgjl | last post by:
If we have dozens or hundreds of excel to import into the database, if we use the excel import function provided by database editors such as navicat, it will be extremely tedious and time-consuming...
0
by: ryjfgjl | last post by:
In our work, we often receive Excel tables with data in the same format. If we want to analyze these data, it can be difficult to analyze them because the data is spread across multiple Excel files...
0
BarryA
by: BarryA | last post by:
What are the essential steps and strategies outlined in the Data Structures and Algorithms (DSA) roadmap for aspiring data scientists? How can individuals effectively utilize this roadmap to progress...
1
by: nemocccc | last post by:
hello, everyone, I want to develop a software for my android phone for daily needs, any suggestions?
0
marktang
by: marktang | last post by:
ONU (Optical Network Unit) is one of the key components for providing high-speed Internet services. Its primary function is to act as an endpoint device located at the user's premises. However,...
0
by: Hystou | last post by:
Most computers default to English, but sometimes we require a different language, especially when relocating. Forgot to request a specific language before your computer shipped? No problem! You can...
0
Oralloy
by: Oralloy | last post by:
Hello folks, I am unable to find appropriate documentation on the type promotion of bit-fields when using the generalised comparison operator "<=>". The problem is that using the GNU compilers,...

By using Bytes.com and it's services, you agree to our Privacy Policy and Terms of Use.

To disable or enable advertisements and analytics tracking please visit the manage ads & tracking page.