IOPs Performance Drop on Different Kernel Releases
In porting my iSCSI target driver to the new 2.6.30.1 kernel, I found out that it only gives me 70% of the IOPs performance that I used to get with 2.6.25. I then tested with other Linux releases and found out that the performance drop also happens on 2.6.26 and 2.6.27 without any modification/changes on my iSCSI driver code.
Questions: 1. What area in the kernel drivers should I look at to root cause this problem? 2. Is anybody aware of any similar issue? Thanks, Joe. |
I haven't heard of such problem, but I believe it could happen. You should perform a profiling of your driver and see which operation (or time between which operations) is increased. That's your code, so you will know which places are critical. When you have that info, you can look into the changes in the kernel subsystems used in the places you identify. With 30% drop it may not be that obvious, however (10 times drop would be much harder to debug). It may be some very small thing, but run very often. Check locking, for instance.
|
I'm in the process of locating where in my driver code that causes such IOPs drop.
Thanks for your suggestions. Joe. |
I am also facing a similar issue. I have ported my PCI function driver from kernel 2.6.23 to 2.6.27 which does DMA to an external device . Now I have noticed about 10% drop in performance.
I have done the profiling using Oprofile in both the kernel versions. I have noticed that interrupt handler is taking more time in 2.6.27 specifically at PCI read operation. Does anybody has a clue what could be the problem? |
Quote:
|
All times are GMT -5. The time now is 02:54 AM. |