• We’re currently investigating an issue related to the forum theme and styling that is impacting page layout and visual formatting. The problem has been identified, and we are actively working on a resolution. There is no impact to user data or functionality, this is strictly a front-end display issue. We’ll post an update once the fix has been deployed. Thanks for your patience while we get this sorted.

Need help, please! How to format RAID boot partition for WinXP (NTFS with a specific cluster size)?

Page 2 - Seeking answers? Join the AnandTech community: where nearly half-a-million members share solutions and discuss the latest tech.
The stripe size is set in the controller BIOS when you create the array - the controller may call it the "block size," though people don't usually refer to it by that name. I believe this is the 16k you were referring to in your original post. An AT test using a well-designed Iometer test showed 64k as the optimal size (by a small margin) for most of the controllers. Check it out here.
 
Yes, the block size 16K is what I set up in BIOS. But, according to PAUL's KT7 FAQs, block size is what you set in BIOS and stripe size is what you set with FORMAT command:


1. Enter the Highpoint BIOS menu (using Ctrl-H) and use "Create RAID" to create your RAID-0 array. Select the disks you wish to use, a Block Size of 16k for optimum performance in most situations and then choose "Start Creation Process".

2. Reboot the machine using a bootable floppy disk which also contains the FDISK and FORMAT utilities (you will probably need to copy these onto the floppy as Windows doesn't put them onto bootable floppies as a matter of course).

3. Type FDISK to start this utility. Using FDISK create the partition(s) you require - as a minimum you require one active Primary DOS Partition.
Reboot your machine to activate the new partition(s)

4. Type "FORMAT C: /Z:32" to format partition C: Repeat for any additional partitions you created. Note that the "/Z:32" parameter formats the disk with a block size of 32x512B=16k - matching the stripe size. This has been recommended as optimum. [For partitions greater than 32GB in size you must choose a larger block size, eg. /Z:64]. Anandtech found a 64k stripe size to be optimum - for this you should format with /Z:64 as /Z:128 produces an error.


 
Enough! I just decided to read this thread and all I can say is STOP WRACKING YOUR BRAINS!

All you need to do is set the "block size" in your controller's bios. NTFS will take on that size for it's stripe size or whatever it is you want to call it. Simple, easy.

Anandtech made this comparison a while back, but for some reason nobody has pointed it out. It tells the optimal block sizes for all major IDE RAID chipsets. Hope this helps.
 


<< All you need to do is set the "block size" in your controller's bios. NTFS will take on that size for it's stripe size or whatever it is you want to call it. Simple, easy. >>



Yes, I agree. This whole formatting thing seems completely unnecessary to me. I don't know why it's in Paul's FAQ.



<< Anandtech made this comparison a while back, but for some reason nobody has pointed it out. >>



Um... I did, actually. No respect, I tells 'ya. 🙂
 


<< Um... I did, actually. No respect, I tells 'ya. 🙂 >>



Oh you bastage, you called Anandtech AT... I was confused. 😉

Sorry!
 
I've just reformatted and reinstalled WinXP. I set BLOCK SIZE in BIOS to be 64K.

Then, I used WinXP Setup to partition and format the 10Gig boot partition.

Well, NTFS has NOT taken on the BIOS's block size to be its cluster size. Cluster size is still 4k (the default). How do I check the stripe size (not the cluster size) that NTFS is using? The benchmarks in HD Tach and Sandra are again in the range of 25000.


However, on the second partition, which I formatted manually, using /a:16k parameter, the benchmarks are up to 39000... 😕

I don't understand what I am doing wrong...
 
Arrrggghhh...

Wow, some people have some serious misconceptions about cluster vs. RAID stripe size.

The stripe size is defined by the RAID BIOS and is the size of the "stripes" used on the two drives. For example, take a 64KB file on a RAID array with a stripe size of 16KB. The first 16KB of this file will be on one disk, the next 16KB on the second disk, the next 16KB on the first disk, and the final 16KB of the file on the second disk.

The cluster size is completely different and is defined when you format a disk and has nothing to do with the stripe size. When formatting a drive, the format utility will pay no attention (or even be able to access) the stripe size.


So, how to specify a cluster size when installing WinXP using NTFS. Well, the only way I know that there is to specify a cluster size of an NTFS volume is when you format a drive WITHIN WinXP/Win2000. For example, I have three paritions on my 120GB RAID array. I have a 5GB FAT32 partition first with a cluster size of 32KB, next is a 40GB NTFS partition with the default cluster size of 4KB, the remaining space consists of a large NTFS partition with a 64 KB cluster size. This last partition was created with the WinXP disk management console which allows the specification of a cluster size.

So, if you want to have a cluster size larger than 4KB on the partition which contains your WinXP installation, you need to format the partition with another installation of WinXP, on a separate partition, and then install to that partition (without using the setup format utility).

As for cluster size and speed, after much testing comparing my 4KB vs 64KB cluster size NTFS partitions, I have found the 64KB partition to be marginally faster, 5-20% depending on the test. But you need to remember that every file with the larger 64KB cluster drive will take up at least 64KB. I can get away with this since I use this partition to store large video and music files, so the space waste is rather minimal. If I were to set the drive on which I have installed WinXP to 64KB cluster size, the space waste would be immense.

Any other questions just ask.



 
Thanks cbuchach for the info.

So, what is the most reliable way to measure HD performance? I have some very weird stuff going on.

As, I said, I have two partitions, 10GB (primary boot) and 140GB. Raid is set up in BIOS with stripe (block) size of 64k. The two partitions are formatted the same way, using NTFS with the same cluster size of 4k (default).

Now, I know about the Sandra not being reliable for RAID performance measurements, but the WinBench99 gives me the same weird results as Sandra. They both show around 39000 on the 140GB partition, but only about 21000 on the 10GB one (the one WinXP is on).

Can anyone explain this?

Thanks so much! 🙂
 
Which Highpoint controller are you using? I've got the Iwill Side Raid with the HPT370A and when I went from the 2.019 to the 2.3 drivers, my scores went right into the toilet. I rolled that puppy back.
 
I have noticed somewhat similar things when benchmarking my RAID array, that being different partitions with very different scores. And the scores aren't quite as high as I would have expected. I typically use WinBench and run it a few times to try to get a consistent result.

Quite honestly I have begun just to ignore it as I have been unable to come up with a good answer or been able to tell if the bechmark really is telling the truth about the performance of my RAID subsystem.
 
Back
Top