In the last installment, I said that I would look at Windows Home Server as the first "Fast NAS" operating system. Microsoft provided copies of WHS and Vista Home Premium so that I could also check into the reports by readers in the Forums of higher NAS performance using Vista clients.
For reference, Table 1 summarizes the "Big NAS" testbed machine. Note that I have corrected the power supply information to reflect what is actually used.
|CPU||Intel Core 2 Duo E7200|
|Motherboard||ASUS P5E-VM DO|
|RAM||Corsair XMS2 (2 x1GB) DDR2 800|
|Ethernet||Onboard 10/100/1000 Intel 82566DM|
|Hard Drives||Seagate Barracuda ST31000340AS 1TB 7200 RPM 32MB Cache SATA 3.0Gb/s|
|CPU Cooler||ASUS P5A2-8SB4W 80mm Sleeve CPU Cooler|
Table 1: Fast NAS Test Bed Component summary
Windows Home Server does not use RAID for its very flexible drive expansion capabilities. Instead, it uses a Microsoft technology dubbed Windows Home Server Drive Extender (DE). You should read the Microsoft white paper for the whole explanation of DE. But I'll pull some of the key points from that document for the brief explanation of DE that follows.
In a single hard-drive system, Windows Home Server is configured with a 20-gigabyte system partition for the Windows Home Server operating system, and the remainder of the primary hard drive is allocated to the primary data partition. Each subsequent (or secondary) hard drive is logically added to the data partition. It appears to the user as one large hard drive; however, these drives are considered to be part of the secondary data partition. In reality, your home server consists of multiple hard drives of varying sizes.
The primary data partition is used to store a unique entry for each file. If a home server has more than one hard drive, these files become tombstones. Tombstones are NTFS file system reparse points that Windows Home Server Drive Extender understands. They are tiny files that redirect to one or two shadow files on the hard drives that make up the secondary data partition. The shadow files are where your data is really stored. If folder duplication is enabled for a Shared Folder, there will be two shadow files. If duplication is Off, there will be one shadow file.
Windows Home Server Drive Extender creates the illusion of having a very large primary data partition by migrating files to one or more secondary data partitions. To complete the illusion, Windows Home Server Drive Extender leaves a tombstone file on the primary data partition, so that the user still sees the file in its original location.
For example, even though Sample.jpg is not really taking up space on the primary data partition, it shows up if you type dir at a command prompt or open Windows Explorer from the primary data partition. These tombstones effectively act as symbolic links to the shadow files.
Basically, this means that WHS doesn't use alternate reads or writes to multiple drives as RAID can, and so will ultimately be limited by single-drive transfer performance. This means that is will probably hit the ~67 MB/s single-drive "wall" that we saw in Part 2. But let's see how it does anyway.
Note: Some users in the WHS Forums report using RAID arrays as WHS storage. But Microsoft doesn't support RAID in WHS and recommends that it not be used.)
I started out by using four of the Seagate drives for my first test runs anyway, mainly because I already had them configured into the system. But, as noted above, we're really looking only at single-drive performance.
Figure 1 shows write data from the first set of iozone runs. Both the NAS and iozone machine used their internal Intel PCIe-based gigabit Ethernet interfaces unless otherwise noted. The plot includes reference lines from actual test data from the PCI and PCIe-based gigabit Ethernet performance testing that I did in the Gigabit Ethernet NeedTo Know - 2008 for reference. I limited the Y axis to better see performance differences during the cached to non-cached performance transition.
Figure 1: WHS and QNAP TS-509 Pro Write Performance Comparison
Tests plotted are:
- 2 GB - NAS configured as in Table 1, with 2 GB of memory
- 1 GB - Same as #1, but with NAS memory reduced to 1 GB
- TS-509Pro, 1x1TB - QNAP TS-509 Pro with a single 1 TB drive
- TS-509Pro, 1x1TB, PCI - QNAP TS-509 Pro with a single 1 TB drive and iozone machine using Intel PRO/1000 MT PCI-based Ethernet adapter
I thought it would be helpful to first compare the WHS NAS against the QNAP TS-509 Pro, which is the highest performance NAS tested to date (it has 1 GB of RAM). You can see that using the PCI-based NIC in the iozone machine definitely held back write performance.
You can also see that the WHS NAS, which also has a significantly beefier Core 2 Duo E7200 (vs. the QNAP's Celeron M 420 1.6GHz), has faster write performance than the TS-509 Pro until we get out to the 2 GB file size. The "1GB" plot shows that the performance difference isn't just due to 2 GB of RAM on the WHS NAS vs. 1 GB in the TS-509 Pro.
Figure 2 shows the read results for the same group of tests. What you see is very similar to the QNAP TS-509 Pro tests in Part 2. Except for the TS-509Pro, 1x1TB, PCI line, everything tops out at around 67 MB/s. Not at all what I hoped for!
Figure 2: WHS and QNAP TS-509 Pro Read Performance Comparison
But since the iozone test machine had 1 GB of RAM, these tests really show only one point that exceeds both WHS NAS and iozone machine caches. So, for all the subsequent tests, I reduced the iozone machine's RAM size to 512 MB.