RE: SPAM-LOW: how to read disk high speed?

Lower than what? What are you comparing the performance to? Also, have you
actually measured the transfer rate? You should compute the actual
bandwidth that you are reading from the disk. NT can get very close to the
theoretical maximum transfer rate of the disk. Once you get close to that,
you simply can’t get any faster without different hardware.

You should use larger buffers, and those buffers should be aligned to the
system page granularity. Use VirtualAlloc to allocate buffers for file I/O.
Experiment with the size of the buffers, and measure which one gives you
better performance; empirically, I’ve found 64K to be a good size.

Also, use asynchronous I/O, and make sure that you keep at least 4 to 8
requests active at all times. This gives the storage stack more potential
concurrency to work with. Since you are doing sequential reads, there may
not be much benefit to doing this, but you should at least try it.

– arlie

-----Original Message-----
From: xxxxx@lists.osr.com
[mailto:xxxxx@lists.osr.com] On Behalf Of shark mouse
Sent: Wednesday, August 03, 2005 11:07 AM
To: Windows System Software Devs Interest List
Subject: SPAM-LOW: [ntdev] how to read disk high speed?

hello,
i want to backup the data in one partition,and i use the way below:
use CreateFile() to open the disk,then read one block data and write the
data into a file,but i tested ,the effiency is so lower,but i have not other
good idea,who can help me?


???ѽ??н???ʹ?? MSN Messenger: http://messenger.msn.com/cn


Questions? First check the Kernel Driver FAQ at
http://www.osronline.com/article.cfm?id=256

You are currently subscribed to ntdev as: xxxxx@stonestreetone.com To
unsubscribe send a blank email to xxxxx@lists.osr.com

I also recommend disabling caching on the file (get the memory manager out
of the way. To do this, youmust do all IO request of a sector aligned
boundry. Ths is as fast as it gets.

Jamey

----- Original Message -----
From: “Arlie Davis”
To: “Windows System Software Devs Interest List”
Sent: Wednesday, August 03, 2005 8:26 AM
Subject: RE: SPAM-LOW: [ntdev] how to read disk high speed?

Lower than what? What are you comparing the performance to? Also, have you
actually measured the transfer rate? You should compute the actual
bandwidth that you are reading from the disk. NT can get very close to the
theoretical maximum transfer rate of the disk. Once you get close to that,
you simply can’t get any faster without different hardware.

You should use larger buffers, and those buffers should be aligned to the
system page granularity. Use VirtualAlloc to allocate buffers for file I/O.
Experiment with the size of the buffers, and measure which one gives you
better performance; empirically, I’ve found 64K to be a good size.

Also, use asynchronous I/O, and make sure that you keep at least 4 to 8
requests active at all times. This gives the storage stack more potential
concurrency to work with. Since you are doing sequential reads, there may
not be much benefit to doing this, but you should at least try it.

– arlie

-----Original Message-----
From: xxxxx@lists.osr.com
[mailto:xxxxx@lists.osr.com] On Behalf Of shark mouse
Sent: Wednesday, August 03, 2005 11:07 AM
To: Windows System Software Devs Interest List
Subject: SPAM-LOW: [ntdev] how to read disk high speed?

hello,
i want to backup the data in one partition,and i use the way below:
use CreateFile() to open the disk,then read one block data and write the
data into a file,but i tested ,the effiency is so lower,but i have not other
good idea,who can help me?

_________________________________________________________________
ÓëÁª»úµÄÅóÓѽøÐн»Á÷£¬ÇëʹÓà MSN Messenger: http://messenger.msn.com/cn


Questions? First check the Kernel Driver FAQ at
http://www.osronline.com/article.cfm?id=256

You are currently subscribed to ntdev as: xxxxx@stonestreetone.com To
unsubscribe send a blank email to xxxxx@lists.osr.com


Questions? First check the Kernel Driver FAQ at
http://www.osronline.com/article.cfm?id=256

You are currently subscribed to ntdev as: unknown lmsubst tag argument: ‘’
To unsubscribe send a blank email to xxxxx@lists.osr.com