I have a problem with processor load in the enviroment where I'm running the
firts installation of my new application.
My program is running on a Pentium 4 3.0 GHz, wtih 1 GB DDR SDRAM and 80 GB
harddrive. The operating system is Win XP professional and I have no other
programs installed on this box.
My program is communicating with other devices using two network cards. The
communication is time critical in a sence that the messages from one devices
are used in the treatement of incoming messages from other devices. If my
application has not received the messages in the correct order they are sent
or not at all there is an error.
My application completes about 15000 communication cycles (between the
devices) every day and in about 5-10 thare are problems. The problem is that
for some reason the receiving of messages is halted for a period of about 1
second and this cause problems in my app.
I've been using a performance counter measuring the total % Processor time
for my processor twise every second and I can see that the % processor time
is steadily running at about 20-50 % during most of the day but for some
reason it sometimes (about 10 samples) peak up to 100 %. These peaks seems to
cause the problem where I don't receive any messages. I can't explain these
peaks with anything that is going on in my application.
What could be causing these sudden peaks in processor load?
Could it help to increase the priority of my process? (Using
Process.PriorityClass) My application is the olny one running on this
computer.
Any ideas how to debug this. The computer is accessed remotely using Windows
Remote Desktop. And I cannot be connected to it while it's running.
Any suggestions would be appreciated
Best Regards
Henrik