We are currently unhappy with the vendor that supplies some of our QNX blades. Due to the environment we operate in, the current blades are prematurely rusting. On top of that, the vendor has been switching hardware (motherboards, Harddrives etc), sometimes notifying us and sometimes not. In any case, it makes configuration a bit problematic especially for systems we have to support for 7-10 years.
So we’ve been looking at some specialized vendors who supply long life (guaranteed 10 year availability) motherboards. We just got in the first evaluation system from the first vendor to test out.
I installed QNX 6.3.0 SP3 without any problems and configured it for our needs and started testing.
What I immediately noticed is that hard drive performance is very slow. Specifically, devb-eide is eating up tons of CPU time in order to write to the disk.
The new vendor system consists of:
2.66 core 2 duo Intel CPU
2 Gigs of Ram
1 250 Gig SATA 2 drive
2 Realtek 1 Gig NIC cards
This is the same configuration as the ones we currently have (other than different NIC cards)
In the BIOS on the new MB I’ve set the following:
IDE HDD Block Mode - Enabled
IDE DMA Transfer Access - Enabled
IDE Primary Master UDMA - Enabled
IDE Primary Slave UDMA - Enabled
Legacy Mode Support - Enabled
Without Legacy mode QNX won’t boot. I’ve fiddled with the others and there isn’t anything that seems to make any difference to my devb-eide performance.
The arguments to devb-eide in my boot image are as follows:
devb-eide eide noslave,noreset blk cache=2M,automount=hd0t79:/
This is the same arugments to devb-eide we use on the current blades we have.
As an example of my testing, I copy a 1 meg file while running hogs at 1 second interval to report CPU usage over 2%.
On the current blades, this copy of a 1 meg file doesn’t even show any process using 2% CPU (In photon I also don’t see the CPU use graph move and the hard drive graph barely flickers).
On the new blade, this copy of a 1 meg file takes 15-22% of the CPU for 2-3 seconds (In photon I can see the CPU graph spike for 2-3 seconds while the hard drive graph barely flickers).
What’s interesting, is that the cp command returns to the prompt and it’s almost a full second or two later before I see the CPU spike when devb-eide is doing whatever it’s doing.
So my question is, does anyone have any idea why devb-eide might be consuming so much CPU to do a simple file copy. I can’t see any arguments I might add or change that would make any difference. I was sure some BIOS setting would fix it but nothing seems to make any real difference. This long life motherboard by the way does not have any logo on it from someone like Abit, Asus etc so I have to assume they build/make it special in order to have it available for 10 years to buy. All the video/sound/NIC cards are integrated like modern motherboards. The BIOS is an Award bios. I just wonder if there is really poor SATA to IDE legacy support code in the BIOS that is causing this slowness.
At the moment we are going to reject this system (which otherwise looks good) due to this problem.