How to Over-Provision an Intel SSD RAID Array via Dell H700 PERC RAID Controller

dell-perch700raidssd

I would like to set up a RAID10 array of 6 Intel SSD 320 SSDs, but over-provision them to enhance their performance and duration as per this PDF:
http://cache-www.intel.com/cd/00/00/45/95/459555_459555.pdf

Is this as simple as creating the array with lower capacity than the drive total? I can't seem to find options in the H700 BIOS config utility that pertain to physical drive partitions or options.

Ultimately the question is: If I create a 600gb RAID 10 across 6 300gb drives, will the remaining 300gb be evenly distributed across the drives, and will this space be available to the 320 controller for use as spare area?

Best Answer

You can use the Linux hdparm utility to set your provisioning parameters in this fashion:

root@ubuntu-10-10:~# hdparm -N /dev/sdb

/dev/sdb:
 max sectors   = 312581808/312581808, HPA is disabled

root@ubuntu-10-10:~# hdparm -Np281323627 /dev/sdb

/dev/sdb:
 setting max visible sectors to 281323627 (permanent)
Use of -Nnnnnn is VERY DANGEROUS.
You have requested reducing the apparent size of the drive.
This is a BAD idea, and can easily destroy all of the drive's contents.
Please supply the --yes-i-know-what-i-am-doing flag if you really want this.
Program aborted.

root@ubuntu-10-10:~# hdparm -Np281323627 --yes-i-know-what-i-am-doing /dev/sdb

/dev/sdb:
 setting max visible sectors to 281323627 (permanent)
 max sectors   = 281323627/312581808, HPA is enabled

root@ubuntu-10-10:~# 

To give credit where it's due, I've got this info from a German server builder's website wiki.

But according to the Intel docs, it would be enough simply to keep the sectors in a "clean" state (in which they would be after a secure erase) by never writing to them. If you define a container/volume which only ever uses 300 GB of each of your drives, this is exactly what you are doing for half of your drives' sectors.