Windows – optimal SATA SSD configuration in new PC

raidraid-0software-raidssdwindows 7

I'm sold on SATA SSDs for my next PC but since their prices grow un-proportionally to their size, I'm wondering what would be the best configuration for them (for OS and Programs) would be:

  1. 2 SSDs using:
    1. on-board RAID0
    2. dedicated RAID controller for RAID0
    3. software RAID0
  2. 2 or 3 SSDs using one of the above controllers but as a JBOD
  3. 3 SSDs in one of the above configurations using RAID5
  4. 1 SSD for OS + 1 SSD for Programs
    1. the above option and with %UserProfile% on a separate drive too
  5. 1 large SSD for both OS and Programs
  6. one of the above options and use SATA3 controller
  7. something else I haven't thought of

The OS would be x64 Windows 7 (and/or Ubuntu). Larger media files like audio/video would be located on a different drive when not being processed.

I plan on using the new PC for: gaming, transcoding HD video (m2ts), web development, watching movies.

Best Answer

  1. Avoid on-board RAID. It is usually "fake" RAID which neatly combines the disadvantages of hardware RAID and software RAID. Software RAID has one key advantage: you can have more than one type of array on the same drives - so you could have a RAID1 system/app/work partition(s) and use RAID0 for things where you want the extra speed but don't care if the data gets lost if a drive dies (at home I have my games on a RAID0 array and find it makes a noticeable difference to level load times, and at work our test/dev VMs and databases are on RAID0 (with the backups on RAID1 arrays elsewhere))
  2. JBOD: no point. You have the same lack of redundancy as RAID0 (one drive goes, then chances are all the data on the whole array is toast) without much of the speed benefit.
  3. Be careful with RAID5 - most people ignore the drop in write performance with RAID5 which can be particularly noticeable for small and/or random writes. If you are using Linux as your base OS then consider the relatively new RAID10 module which can on three disks does its striping and mirroring very similar to RAID5's striping and parity blocks giving similar read performance (of the order of RAID0) but write performance more like that of RAID1 (i.e. better than RAID5).
  4. You'll not see quite the same benefit as with spinning discs here because there is not the same latency bonus of reducing head movements by spreading tasks between spindles, so you will probably get better value-for-money buying one larger drive (though you'll need something else to store backups on, of course)
  5. See 4.
  6. I have no useful nots to impart on this one
  7. The mixed RAID1/RAID0 option mentioned above

For the tasks you mention:

  • Games: there is a load time benefit from RAID0, though it probably isn't all that significant in the grand scheme of things. With a good controller or software solution you may get similar benefit from RAID1 as good implementations can use read-ahead to read from alternate each block effectively emulating RAID0's striping.
  • Transcoding HD video: your CPU is going to be the bottleneck here so you won't see gain from RAID0 even with spinning discs (even with the performance drop due to all the head movements if source and destination files are on the same drive/array, half decent drives should more than keep up)
  • Web development: not at all taxing in terms of I/O unless you are working with large databases (in which case RAID0, RAID1+0 or Linux's "special" RAID10 can help quite a bit).
  • Watching movies: You really don't need anything other than a cheap single cheap old drive to read movies off at watching-them-at-normal-speed speed.
Related Question