This is Part 1 in an ongoing series on disk performance. You can read the entire series by starting at the Introduction.

Here are the specs on the hardware I used to do my tests and how I went about my testing:

Test Harness 1: Dell PowerEdge 2950

  • Dell PowerEdge 2950
  • Windows Server 2003 R2 Standard Edition Service Pack 2 patched with all updates available at test time
  • 2 x Dual Core Xeon 5130 @ 2GHz (2 cores per CPU = 4 cores total)
  • 4 GB RAM
  • PERC 5/i integrated controller
  • Disk cache policies set to write back and no read ahead
  • 73 GB 15,000 RPM Seagate Cheetah SAS hard drives
  • RAID configurations:
    • RAID 1: Physical Disks 0:0:2 and 1:0:4
      • Allocation unit size (a.k.a. block size): 64KB
      • Partition offset: 32KB, 64KB, 1024KB
    • RAID 5: Physical Disks 0:0:2, 0:0:3, 1:0:4, and 1:0:5
      • RAID Stripe Size: 8KB, 64KB, 128KB
      • Allocation unit size (a.k.a. block size): 4KB, 8KB, 64KB
      • Partition offset: 32KB, 64KB
    • RAID 10: Physical Disks 0:0:2 and 0:0:3 (Span 0); 1:0:4 and 1:0:5 (Span 1)
      • RAID Stripe Size: 8KB, 64KB, 128KB
      • Allocation unit size (a.k.a. block size): 4KB, 8KB, 64KB
      • Partition offset: 32KB, 64KB
  • SQLIO v1.5.SG
    • File size: 64 GB
    • Threads:
      • RAID 1: 4
      • RAID 10 & 5: 8
    • Thread depth: 8
    • Buffering: Hardware
    • Test duration: 120 seconds
    • Wait between tests: 60 seconds

Test Harness 2: Dell PowerEdge 2950 w\ PowerVault MD1000

  • Dell PowerEdge 2950
  • Windows Server 2003 R2 Standard Edition Service Pack 2 (x64) patched with all updates available at test time
  • 2 x Quad Core Xeon E5420 @ 2.50GHz (4 cores per CPU = 8 cores total)
  • 4 GB RAM
  • PERC 5/E controller connected to a PowerVault MD1000 drive enclosure operating in split bus mode
  • Disk cache policies set to write back and no read ahead
  • 146 GB 15,000 RPM Seagate Cheetah SAS hard drives
  • RAID configurations:
    • RAID 1: Physical Disks 0:0:7 and 1:0:0
    • RAID 5: Physical Disks 0:0:7, 0:0:8, 0:0:9, 0:0:10, 0:0:11, 0:0:12, 1:0:0, 1:0:1, 1:0:2, 1:0:3, 1:0:4, and 1:0:5
    • RAID 10: Physical Disks 0:0:7 and 1:0:0 (Span 0); 0:0:8 and 1:0:1 (Span 1); 0:0:9 and 1:0:2 (Span 2) ; 0:0:10 and 1:0:3 (Span 3); 0:0:11 and 1:0:4 (Span 4); 0:0:12 and 1:0:5 (Span 5)
  • RAID stripe size: 64KB
  • Allocation unit size (a.k.a. block size): 64KB
  • Partition offset: 32KB, 64KB, 1024KB
  • SQLIO v1.5.SG
    • File size:
      • RAID 1: 128 GB
      • RAID 10: 512 GB
      • RAID 5: 512 GB
    • Threads: 4, 8, 16
    • Thread depth: 8
    • Buffering: Hardware
    • Test duration: 120 seconds
    • Wait between tests: 60 seconds

Test Harness 3: Dell PowerEdge 2850 w\ PowerVault 220s

  • Dell PowerEdge 2850
  • Windows Server 2003 R2 Standard Edition Service Pack 2 patched with all updates available at test time
  • 2 x Dual Core Xeon @ 3.20GHz (2 cores per CPU = 4 cores total)
  • 4 GB RAM
  • PERC 4/DC controller connected to a PowerVault 220s drive enclosure operating in split bus mode
  • Disk cache policies set to write back and no read ahead
  • 146 GB 15,000 RPM Seagate Cheetah Ultra320 SCSI hard drives
  • RAID configurations:
    • RAID 5: Physical Disks 0:0, 0:1, 0:2, 0:3, 0:4, 0:5, 1:9, 1:10, 1:11, 1:12, 1:13, and 1:14
    • RAID 10: Physical Disks 0:0 and 1:9 (Span 0); 0:1 and 1:10 (Span 1); 0:2 and 1:11 (Span 2) ; 0:3 and 1:12 (Span 3); 0:4 and 1:13 (Span 4); 0:5 and 1:14 (Span 5)
  • RAID stripe size: 64KB
  • Allocation unit size (a.k.a. block size): 64KB
  • Partition offset: 32KB, 64KB, 1024KB
  • SQLIO v1.5.SG
    • File size:
      • RAID 10: 512 GB
      • RAID 5: 512 GB
    • Threads: 4, 8, 16
    • Thread depth: 8
    • Buffering: Hardware
    • Test duration: 120 seconds
    • Wait between tests: 60 seconds 

Results
Here are the results of every test that I ran so that you can analyze all the nitty-gritty numbers for yourself. (Note that these are formatted for Excel 2007. If you don’t have Excel 2007 you can still view them by downloading the Excel Viewer from here)

Stay tuned…In Part 2 I will take a look at how partition offset, RAID stripe size, and allocation unit size affect RAID 10 performance.

About Kendal

author profile image

Kendal is a database strategist, community advocate, public speaker, and blogger. A practiced IT professional with over 15 years of SQL Server experience, Kendal excels at disaster recovery, high availability planning/implementation, & debugging/troubleshooting mission critical SQL Server environments. Kendal is a Senior Consultant on the Microsoft Premier Developer Support team and President of MagicPASS, the Orlando, FL based chapter of PASS. Before joining Microsoft, Kendal was a SQL Server/Data Platform MVP from 2011-2016.