RAID stands for Redundant Array of Independent Disks, and with at least two hard disk drives, you can setup them up as a RAID array in order to increase the disk performance (a.k.a. RAID0) or to improve data reliability (a.k.a. RAID1) In this tutorial, we will teach you how to setup a RAID system on your PC.
RAID0, also known as data striping, is set when you want to improve your disk performance. It works by dividing the files to be written on disk into several chunks (called stripes) and saving each chunk on a different drive. For example, if you have a 200 KB file and two hard disk drives, it will be cut into two 100 KB chunks, with each chunk being saved on a different hard disk drive.
This is a greatly simplified explanation. In reality, each stripe must be a power of two and is configured when you setup the RAID system. If your RAID system uses 128 KB stripes, it would divide our 200 KB file into two 128 KB chunks (the rest of each stripe, 28 KB, would be left empty). If our system were using 32 KB stripes, our 200 KB file would be divided into eight 32 KB chunks, and the system would send four chunks to each hard disk drive.
But how does this improve performance? In the example we gave, instead of storing one 200 KB file, each hard disk drive will store a 100 KB file. The time spent storing a 100 KB file is theoretically half the time spent storing a 200 KB file. Basically, what we do on RAID0 is to put the hard disk drives to work in parallel.
The total disk capacity on a RAID0 system is the sum of the total capacity of the two hard disk drives. If we use two 80 GB hard disk drives, our disk system will have 160 GB capacity. You can even create “partitions” on your RAID system, so you can have more than one “disk” on your system.
So if you want to build a high-performance system, consider buying two disk drives with smaller capacity and configuring them as a RAID0 system instead of buying one high-capacity hard disk drive.
If you are thinking of having two drives just to separate data (e.g., one drive for the operating system and programs, the other drive for data such as documents), you can create “partitions” on your RAID system. Keep in mind, however, that you cannot remove one of the drives and install it on another computer expecting to read its contents like you would do normally – it won’t work.
In Figure 1 we summarized how RAID0 works.
RAID1, on the other hand, does not improve performance, but is targeted to improve the data reliability of your PC. It works by copying everything that is sent to the first hard disk drive to the second, which is why it is also known as mirroring. Consider RAID1 as a hardware-based backup system. If the first hard disk drive fails, the second one takes its place immediately.
Since the second disk drive is a backup disk, the total disk capacity on a RAID1 system is the capacity of the first disk drive only. If you have two 80 GB hard disk drives configured as RAID1, the total disk capacity will be 80 GB.
If you are concerned with data reliability, RAID1 is the way to go.
In Figure 2 we summarized how RAID1 works.
There are other RAID configurations as well, but not all RAID controllers support them (all controllers support at least RAID0 and RAID1). Here is a small summary of other common RAID systems your RAID controller may support:
- RAID0+1: It is a system using RAID0 and RAID1 at the same time. It needs four identical hard disk drives. If one of the hard disk drives fails, the system becomes a RAID0 system (data striping).
- RAID10: It is a system using RAID0 and RAID1 at the same time. It needs four identical hard disk drives. If one of the hard disk drives fails, the system becomes a RAID1 system (mirroring).
- RAID5: It is a RAID0 system storing parity information for better reliability. It needs at least three identical hard disk drives. On a three-drive system, the total capacity will be the size of each hard disk drive times two (and not three). For example, if three 80 GB drives are used, the total disk capacity will be 160 GB, as the rest of the disk space is used to store parity information.
- JBOD: Stands for “Just a Bunch of Disks” and isn’t a RAID system, as it doesn’t improve disk performance or disk reliability. It is used to join two drives with different capacities as if they were a single drive. For example, you can use JBOD to add a 40 GB hard disk drive to an 80 GB hard disk drive to appear as a single 120 GB to the system.
In order to have a RAID system on your PC, you will need two things: a RAID controller and at least two identical hard disk drives. If you want to setup a system differently from RAID0 or RAID1, more hard disk drives may be necessary, as we explained in the previous page. In this tutorial, we are assuming that you are going to build a RAID0 or a RAID 1 system, so we will be discussing a system with two hard disk drives from now on.
Nowadays, several motherboards come with an embedded RAID controller, making it very easy to setup a RAID system. All you will need are two identical hard disk drives (if your motherboard has RAID capability, of course).
The first thing you need to check is whether your motherboard has an embedded RAID controller or not. This information can be found in the manual that comes with your motherboard. The motherboard chipset (the south bridge chip also known as ICH, or I/O Controller Hub, on Intel chipsets, to be more exact), is in charge of controlling the hard disk ports of your motherboard. The south bridge chip of your motherboard needs to have an embedded RAID controller. On Intel chipsets, this chip needs to have the letter “R” in order to have this feature. For instance, the ICH7 chip does not have the RAID feature, while the ICH7R does. The same thing may happen with chipsets from other suppliers. For example, VIA VT8237R has RAID function while VT8237 doesn’t.
Some manufacturers call RAID function with a fancier name, such as “Intel Matrix Storage” or “NVIDIA MediaShield Storage.” Regardless of what name it has, it’s the same thing.
If you don’t have your motherboard manual, got to your motherboard’s manufacturer website to retrieve it. If you don’t know your motherboard manufacturer and/or model, click here to learn how to discover this information.
Many motherboards have an extra chip providing more hard disk drive ports, usually from companies like SiliconImage, JMicron, Marvell, Promise, and HighPoint, just to name the most common ones. Usually this extra chip has an embedded RAID controller. If your motherboard chipset does not provide RAID function but your motherboard has an extra chip that does, you will need to install your hard disk drives to the ports attached to this chip instead of using the hard disk drive ports attached to the south bridge chip.
In Figure 3, you can see the detail of the Intel D975XBX2 motherboard that we will be using in this tutorial. This motherboard has a total of eight SATA-300 ports, four controlled by the chipset (Intel 975XBX, using ICH7R south bridge) and four controlled by the Marvell 88SE6145 chip. Both chips have an embedded RAID controller, but if the chipset was using a different south bridge chip (ICH7, for example) we could still use RAID, as the extra four SATA-300 ports have this feature.
In situations like the one shown in Figure 3 – two RAID-enabled chips on the motherboard – the hard disk drives must be installed on the same port group. As you can see, Intel used black color on the ports connected to the chipset and blue color on the ports connected to the extra chip. Your two hard disk drives must be installed on ports with the same color. As the motherboard chipset supports RAID, we prefer to use the ports that are connected to the chipset (black ports in this example).
If your motherboard doesn’t have a RAID chip, you still can use a RAID system by buying an add-on RAID controller.
Let’s now talk about the installation process in detail.
[nextpage title=”Physical Installation”]
The RAID installation process is divided into three parts:
- Physical installation, where you install the hard disk drives on your PC in such a way that they will be able to be used as a RAID system.
- RAID configuration, where you setup the system to use the two hard disk drives as a RAID array.
- Operating system installation, where you need to install the operating system loading a special driver in order to recognize your RAID array.
It is very important to notice that the set up a RAID system deletes all data inside your hard disk drives. Make a backup of all your data before continuing if your hard disk drives contain important data.
The physical installation is pretty straightforward. Install your hard disk drives to your case, connect a power supply plug on each hard disk drive and connect each hard disk drive to the appropriate hard disk drive port on the motherboard. If your motherboard doesn’t support RAID, you will need to buy a RAID controller card and install your hard disk drives to it. Of course, this procedure must be done with your computer turned off.
In the pictures below, we removed the system from the case for clearer visibility. In this tutorial, we are using an Intel D975XBX2 motherboard and two Samsung HD080HJ hard disk drives (80 GB, SATA-300).
It is important to use ports that can deliver the maximum performance your hard disk drive is able to reach. There are two main hard disk interface standards, parallel ATA (PATA or simply IDE) and Serial ATA (SATA). PATA ports are fading away and are being replaced by SATA ports which are today’s standard. If you are assembling a new system, do not use parallel ATA hard disk drives.
Parallel ATA can be found in two speeds: ATA/100 and ATA/133. Of course, the best scenario if you are still using this kind of hard disk drive is to use ATA/133 drives together with ATA/133 ports. For the best performance, you need to install each hard disk drive on a separated port, each one configured as “master” and using its own 80-wire cable. Do not install them on the same cable using master/slave configuration as this reduces performance. Unfortunately, newer motherboards usually don’t have more than one parallel ATA port, making it a very bad choice to use parallel ATA hard disk drives.
Don’t forget that the parallel ATA ports must support RAID, of course. The parallel ATA ports shown in Figure 4 are not the ones controlled by the chipset. Instead, they are two extra IDE ports provided by an extra chip, supporting RAID.
Since parallel ATA is fading away, we are going to focus on Serial ATA.
Serial ATA can also be found in two speeds, SATA-150 (a.k.a. 1.5 Gbps) and SATA-300 (a.k.a. 3 Gbps). The best performance can be achieved with SATA-300 ports and SATA-300 hard disk drives.
The installation is pretty easy. Connect one SATA cable to each hard disk drive and connect one SATA power cable to each hard disk drive. If your power supply doesn’t have SATA power cables, SATA hard disk drives come with an adapter that converts the standard peripheral power plug into a SATA power plug.
Then install the other end of each cable to an available SATA port on your motherboard. For better organization, use the lowest numbered ports. For example, on our motherboard, the four ports controlled by the ICH6R south bridge were labeled SATA0, SATA1, SATA2, and SATA3. We used SATA0 and SATA1 ports. Remember that you must install the cables to ports that support RAID (see previous page for a detailed discussion on this subject).
Now you will need to set up the hard disk drives as a RAID array. Let’s show how this can be done in the next page.
[nextpage title=”RAID Configuration”]
After the physical installation, your hard disk drives will operate as two separated hard disk drives, so they need to be configured as a RAID system. The exact procedure and option names vary a little depending on the motherboard you have.
If you are using the hard disk ports controlled by the chipset, you must first enter the motherboard setup and configure them as “RAID” instead of “IDE.” Under “IDE” configuration, they work as normal IDE ports, while under “RAID” configuration you can enable them to work as a RAID system. In fact, if you don’t change this configuration, the system won’t show you the RAID configuration screen during the POST, thereby preventing you from setting up your RAID system.
Enter the motherboard setup (by pressing Del right after you turn on your PC), and change this option. On our motherboard, this option was available at Advanced, Drive Configuration, “Configure SATA As.” The exact path and option name vary depending on the motherboard manufacturer.
After changing this configuration, you need to save the changes and exit.
RAID configuration is made by pressing a set of keys during the POST (Power-On Self Test), which is that series of text-mode messages that appear when you turn on your PC before it starts loading your operating system. This set of keys varies depending on the RAID chip manufacturer. Usually you press the Control key together with the first letter of the manufacturer’s name; for example, Control I for intel, Control M for Marvell, Control S for SiliconImage, Control J for JMicron and so on.
This set of keys should be pressed while a RAID configuration screen is shown during POST. Since our motherboard has two RAID chips, two screens like this are shown, one for configuring the RAID provided by the Intel chipset and another for configuring the RAID provided by the Marvell 88SE6145 chip.
As we connected our two hard disk drives on the ports controlled by the chipset, the screen pictured in Figure 9 came up. As you can see, no RAID is configured. The phrase “None defined” appears under “RAID Volume,” and the two hard disk drives are identified as “Non-RAID Disk.” You need to press Control I while this screen is shown in order to configure your RAID system.
This screen will be a little different depending on the RAID chip manufacturer. We installed our two hard disk drives on the ports controlled by the Marvell chip to show you another example (see Figure 10). As you can see, our RAID isn’t configured yet. The phrase “No array is defined!” under “Arrays Information” appears. Here you need to press Control M to configure your RAID system.
Press the set of keys to enter the RAID configuration utility.
[nextpage title=”RAID Configuration (Cont’d)”]
Intel RAID configuration utility main menu is shown in Figure 11. This screen will appear after you press Control I while the text shown in Figure 9 appears after you turn on your computer.
All RAID utilities are very similar and very easy to use. In our example the main screen shows information about the hard disk drives and presents four options. Select the first one, Create RAID Volume, to setup your RAID system. The screen in Figure 12 will be shown.
Here you will have to configure:
- Volume Name: The name under which your operating system will access your RAID system.
- RAID Level: The RAID type you want, RAID0 (data striping, for improving performance) or RAID1 (mirroring, for improving reliability). Other RAID types will be available depending on the RAID chip you have.
- Disks: For selecting the disks you want to include in this RAID array.
- Stripe size: This is the size of the data chunks your RAID system will use. Roughly speaking, this is like the size of each “sector” your hard disk drive will use. The ideal size is the subject of a lot of debate. Generally speaking, bigger stripes are better if you work with big files, while smaller stripes are better if you work with small files. If you don’t have any idea of what value to use, leave it on its default size (usually 64 KB or 128 KB). Click here to read a performance test we did using several different stripe sizes.
- Capacity: Here you can configure a lower capacity in order to create more than one RAID volume (as if you were “partitioning” your RAID array, i.e., creating two or more “RAID drives”). For example, instead of having just one 160 GB array we could configure one 100 GB array and another with 50 GB, so the operating system will recognize them as separated disks, even though both will be using the RAID system.
After hitting “Create Volume” a confirmation screen will be shown, remember that all your data will be lost. Hit “Y” and your RAID will be created.
You can see our RAID array created in Figure 14. As you can see, we created a RAID0 (striping) system.
Now that our RAID system is created, you will need to install the operating system. This is the trickiest part of the RAID setup process.
[nextpage title=”Operating System Installation”]
Now you install your operating system. We will base our examples on Windows XP. We are assuming that you already know how to install an operating system, as this subject is way beyond the scope of the present tutorial. In general terms, you need to enable boot from your optical drive on the motherboard setup, insert the OS CD-ROM in your optical drive, and turn on your computer.
The problem is that Windows XP doesn’t automatically recognize RAID systems, so it will think that your computer has no hard disk drives installed.
You need to generate a floppy disk containing the RAID controller driver. Motherboards used to come with this disk in the past, but nowadays you will have to create it by yourself, running a small utility present on the CD-ROM that comes with your motherboard or add-on RAID controller. This utility will be located on a directory called RAID or similar. Don’t be afraid of browsing this CD on another computer until you find the utility.
On the CD-ROM that came with our motherboard, the file name was “f6flpy32_STOR_188.8.131.525_PV.zip,” for example. It was just a matter of unzipping it and running the .exe file that was created. The utility asked us to insert a floppy disk in the disk drive and created the necessary floppy.
If you don’t have the motherboard CD-ROM anymore, you can download this utility from the motherboard, chipset, or RAID controller manufacturer website.
As soon as Windows XP CD-ROM starts loading, you will see a message saying “Press F6 if you need to install a third party SCSI or RAID driver….” When this message appears, press the F6 key and insert the floppy disk in the floppy disk drive and wait for the screen shown in Figure 17 to appear.
[nextpage title=”Operating System Installation (Cont’d)”]
When the screen in Figure 17 appears, press the S key and choose the driver from the floppy disk that Windows should load (see Figure 18). In our case, we had to choose “Intel (R) 82801GR/GH SATA RAID Controller (Desktop ICH7R/DH),” since our motherboard used an ICH7R chip.
After selecting the driver, the previous screen (Figure 17) will appear again, now showing the driver that will be installed (see Figure 19).
From now on, Windows will recognize your RAID array correctly. In our example, since we configured a RAID0 system with two 80 GB hard disk drives, Windows is recognizing only one 160 GB hard disk drive, as you can see in Figure 20.
Keep in mind that the numbers shown on our screenshots are a little lower, since hard disk drives are labeled using a “fake” capacity. For example, our 80 GB hard disk drives were actually 74.53 GB drives. That’s why you see 150 GB in Figure 20 and not 160 GB.
Now follow the normal Windows installation process: Install all drivers of the hardware attached to your system, install the programs you use, and you are finished.
Usually, RAID controllers also come with management software that you can install to monitor your RAID system. This component is optional.
[nextpage title=”Management Software”]
The management software for Intel RAID is called Intel Matrix Storage Manager. It will allow you to review your RAID system as well as check your RAID status. With this program you can also create new RAID arrays if you install more hard disks to your system.
On Figures 21 and 22 we show two screenshots from this program showing the current status and details from the RAID array we assembled during this tutorial.