Groups | Blog | Home
all groups > dotnet performance > june 2007 >

dotnet performance : c# disk performance


Kirk Miller
6/10/2007 6:55:02 PM
We are writing an application which uses many file streams to copy data from
one disk spindle to another.

Our algorithm is parrallel so that all spindles theorectically stay busy and
we are disk bound on copy by the slowest drive. This all works fine.
However, by using PerfMon, we notice

1. All R/W to any spindle are approximately 60% the thruput of the OS doing
the same copy.

2. %disk usage on the "Read" drive goes up to 500%. When the OS does the
copy the disk usage is at 91%, and yet gets and additional 40% of actual
thruput.

Does anyone have suggestions on what to try? What params should be pased to
Ben Voigt [C++ MVP]
6/14/2007 12:24:47 AM

[quoted text, click to view]

Have you opened the file to be read using the sequential flag (hint to read
caching)?
AddThis Social Bookmark Button