Intel X25-M SSD in Mac Pro RAID
Feb 14, 2008
This review follows on the heels of an extensive review of the Intel X25-M in the Apple MacBook Pro. Performance on the Mac Pro is even better! Not only that, capacity is up and prices are down on SSD drives. View prices on SSD
The X25-M is available in 80GB or 160GB capacity, a crucial factor for laptop users, where there is typically room for only a single internal hard drive. For Mac Pro users, striping two 80GB drives into a single volume is a vastly better idea than a single 160GB drive, because performance is doubled.
Consider the reliability issues in addition to performance: with no moving parts, an SSD drive might well be worth the extra expense.
Two drives in a RAID
Intel provided two samples of its 80GB X25-M for testing. We asked for 160GB models, but they are in such high demand as to be unavailable. Performance of the 160GB model is identical to that of the 80GB model, according to Intel.
The two X25-M drives were installed into an eight-core 2.8GHz Mac Pro using the two unused SATA ports on the motherboard, and simply stuffed into the unused space below the DVD drive—undignified, but not an issue for SSD drives. A power splitter off the DVD power cable was used; these SSD drives draw negligible power, certainly far less than the addition of a second DVD drive. SSD drives contain no moving parts and create no vibration; the drives can be placed in the empty Mac Pro DVD bay with no need for a bracket or attachment—crude but effective.
Performance summary PERMALINK
Overall performance is extremely snappy, with boot and application launch times unmatched by anything in my experience. Ignoring the price, I’d love to be running with a pair of the X25-M’s as my system volume.
With a striped (RAID 0) boot volume of the two X25-M drives, the Finder was “ready for action” in about 2 seconds after login, versus 10-15 seconds for my slow Firewire 800 boot drive. There is a wonderfully responsive feeling of not-to-be-underestimated psychological impact, but actual time savings over the course of a days’s work will be small on a properly configured Mac Pro system. See Boot Drive Dogma for more on why this is so on Mac OS X (caching).
With hard drives, performance declines steadily across the drive capacity. With the X25-M, performance is constant across the capacity, except for the last 1% or so, where it drops substantially.
Sustained read speed is vastly superior to any SATA hard drive, with the striped pair averaging sustained speeds of 480MB/sec! That’s as fast one can expect with four (4) fast hard drives.
Sustained write speed is much slower than that of fast 3.5" hard drives, which can perform at 100-120MB/sec for writes (single drive). As a 2-drive stripe, the X25-M offers about 150MB/sec versus about 240MB/sec for the fastest hard drives, and this makes a substantial performance difference for applications such as a Photoshop scratch volume.
Random access speed and concurrent reads/writes are exceptionally fast. The relevance of this is often exaggerated, but there is no doubt that in appropriate usage scenarios the Intel X25-M will provide large gains. Reasonably similar characteristics can be obtained by making a narrow partition on a hard drive.
Performance of the pair of X25-M drives in a striped RAID was also very impressive, though with significant variability in read performance (no stutter however). Speed averaged about 480MB/sec for sustained reads (!) and 150MB/sec for writes, across the entire volume, consistency not possible with hard drives. However, as of Feb 2010, I no longer recommend RAID with SSDs except for enterprise-grade units.
Mac Pro vs MacBook Pro
Performance in the Mac Pro is superior to that of the MacBook Pro for writes by about 20%, with speeds reaching about 75MB/sec for writes, versus 63MB/sec in the MacBook Pro. Read speeds are slightly faster, in the 5% range.
Read the tests below, or skip to the conclusions.
Fill-volume tests PERMALINK
This test fills the entire formatted Mac OS X volume with 1000 equal-sized files using the Mac OS X file manager calls, just like any normal application would use. Tests that use driver-level testing don’t tell us much about real-world performance; this one does. See DiskTester.
Files sizes for fill-volume are rounded to the nearest megabyte (1024 * 1024 bytes), which means they are approximately 75MB each on the single drive test shown here, and 145MB each for the 2-drive stripe. Files are written 32MB at at time for maximum performance.
Fill-volume is a revealing test in multiple ways; it shows consistency of performance across the drive, as well as per-file consistency (deviation). While hard drives show a marked decline in speed across the volume, this is not the case with SSD, a very significant consideration when comparing speeds and/or for certain applications.
X25-M — Single drive fill-volume
Single drive speed across the 74.4GB formatted capacity averaged 76.4MB/sec (writes) and 265.8MB/sec (reads), which exceeds Intel’s conservatively-rated speeds of 70MB/sec and 250MB/sec respectively.
Read average MB/sec: 265.8, standard deviation of 5.43
Write average MB/sec: 76.4, standard deviation of 2.36
X25-M — two-drive RAID 0 stripe fill-volume
In a two-drive RAID 0 stripe, we see 150.4MB/sec for writes and 495.5MB/sec for reads. This is not perfect scalability, but it’s almost exactly twice as fast for writes, and about 86% faster for reads, as compared with a single X25-M. Except for extremely demanding applications (such as a Photoshop scratch volume), this level of performance will be very pleasing to most users.
While writes exhibit very consistent performance, reads show much more variance than with a single drive, ranging from lows of about 370MB/sec to highs of 530MB/sec; no doubt this accounts for the less than perfect scalability.
Read average MB/sec: 495.5, standard deviation of 37.3
Write average MB/sec: 150.4, standard deviation of 6.85
Short of testing three and four drive stripes, it’s unclear whether this behavior would worsen, but it’s already such a high level of performance that it should not be a practical concern for everyday usage: there are no “stalls” or “stutters” seen here—not one. It would be interesting to see how the X25-E SSD drives perform in a RAID; perhaps they offer more consistent performance and thus would scale better in a RAID.
DiskTester results PERMALINK
With no moving parts, the X25-M can be expected to offer outstanding random performance, though the importance of random access is frequently exaggerated with respect to real-world impact, especially when intelligent partitioning is done.
In fact, the random performance of the X25-M is outstanding. However, there are some performance peculiarities: performance for bursts of random I/O is very fast, but the X25-M cannot sustain huge numbers of I/O requests at a steady rate; speed declines. Shown below is a DiskTester run.
We can see that after an initial burst, the X25-M can no longer sustain the same throughput, dropping to less than half its initial speed. In practice this is not likely to be a serious issue, because this 16384 I/Os of 32K each represents 512MB of data, a huge amount in such a short time!
lloyd$ disktester run-random -i 5 -c 32K -t max -r 16384 ssd2 DiskTester 2.0.4c (C) 2003-2006 diglloyd, Inc. All Rights Reserved => Allocating maximum size contiguous file on "ssd2" (74.2GB)...73.0GB (98.4% of volume size) => Random writes and reads will be pseudo-randomly spread across a test file of size 73.0GB. Iteration 1: 16384 writes...1883 writes/sec...16384 reads...2313 writes/sec Iteration 2: 16384 writes...796 writes/sec...16384 reads...2330 writes/sec Iteration 3: 16384 writes...767 writes/sec...16384 reads...2327 writes/sec Iteration 4: 16384 writes...797 writes/sec...16384 reads...2341 writes/sec Iteration 5: 16384 writes...790 writes/sec...16384 reads...2358 writes/sec ====== Saturday, February 14, 2009 4:00:46 PM PT, volume "ssd2" (74.2GB) ===== -------------- Random Results (73.0GB/32K, 16384 io, 5 iterations) ------------- Iteration Writes/sec Reads/sec 1 1883 2313 2 796 2330 3 767 2327 4 797 2341 5 790 2358 Slowest 767 2313 Fastest 1883 2358 Average 1007 2334 Median 796 2330 Range 1116 45.2 Command "run-random" executed in 127.36 seconds.
The behavior seen above is reflected in the results that occur with varying the number of I/Os tested; the greater the number of I/O requests, the greater the decline in throughput; the X25-M somehow becomes overloaded.
65536: 1057 / 1299 32768: 1470 / 1854 16384: 1847 / 2317 8192: 2028 / 2593 4096: 2122 / 2777 2048: 2161 / 2861 1024: 2208 / 2864
This declining performance with huge numbers of writes likely has little or no bearing on consumer applications, but careful study should be applied for any server environment application. Intel’s Extreme series (X25-E) might address this issue, being designed for intensive server applications.
Chunk size (size of the I/O request) exerts only modest influence on performance of the X25-M, which has the real-world effect of keeping performance high across a wide range of applications.
--- Averages for "ssd1" (1GB/start, 5 iterations) --- Chunk Size Write MB/sec Read MB/sec 256K 69.6 245 512K 66.6 252 1MB 65.9 255 2MB 70.4 254 4MB 74.7 266 8MB 70.1 268 16MB 70.9 264 32MB 74.7 260 64MB 72.9 259 128MB 71.7 253 --- Averages for "X25R" (2GB/start, 5 iterations) ---
Chunk Size Write MB/sec Read MB/sec
256K 133 412
512K 137 437
1MB 141 461
2MB 143 458
4MB 150 483
8MB 152 505
16MB 154 502
32MB 154 509
64MB 154 524
128MB 153 514
Multi-threaded load handling (asynchronous I/O)
Here we use DiskTester’s run-async-test on an 8-core Mac Pro (a modified version). This test takes into account a heavy server type load.
disktester run-async-test --max-requests 128 -d 1H ssd2
Each thread has its own 512MB test file, which the thread first writes fully, then reads fully (then repeats). The X25-M offers extremely impressive performance here, under a load far heavier than even a massively overloaded server would ever likely see.
With 128 threads each writing/reading a 512MB file (64GB total), a single X25-M sustains around 80MB/sec of write speed—better than it’s maximum speed under single-writer conditions, indicating that when the write queue is kept full speed can be superb! Read speed is also impressive at around 240MB/sec. The X25-M is thus eminently suitable for high server load situations.
Conclusions and recommendations PERMALINK
Even a single X25-M offers absolutely outstanding read performance. The read performance is so good that the SATA II interface itself stands only a short distance away as the limiting factor! Since read operations compose the majority of most disk I/O, actual performance will be outstanding for the majority of users, well beyond what a hard drive setup can provide, especially once random access and/or contention between programs arises.
Write speed matters for some users
However, for some applications, write performance dominates. A good example of this is the Photoshop scratch volume; most I/O consists of write operations. Photoshop test benchmarks confirm that the X25-M is not the optimal choice for such operations when compared to a striped RAID partition based on 4 hard drives. Of course, striping four X25-M drives would close the gap, but limited capacity and high price will be a show-stopper for all but the most demanding users.
While this review considers the X25-M in the context of the Mac Pro, laptop users will find the 160GB model very appealing for its ultra low power consumption, reasonable capacity, noise-free operation, and high reliability. See the review of the X25-M in the MacBook Pro.
Even higher performance with RAID
As a 2-drive striped RAID the X25-M only gets better. Mac Pro users looking for cutting-edge performance with high reliability and low power consumption should be looking hard at striping two or more of the X-25M drives. Striping three or four of the X25-M drives would be one way of moving the write performance towards the 300MB/sec range.
Ultimate performance with the X25-E
Another alternative for users seeking the ultimate in performance is the Intel X25-E, a 64GB server-grade offering with write speeds of 170MB/sec, about 2.4X as fast as the X25-M. Striping four X25-E drives should provide read performance around 1TB/sec and write performance around 600MB/sec! It might well be worth it for users with extremely demanding needs. The beauty of this approach is that four such drives can be contained in the Mac Pro lower drive bay, with cables extending to an internal SATA card. Power could be supplied via a splitter; power draw is so low that heat is simply not an issue.
More than you want to know perhaps, but interesting reading.
Tom’s hardware: Intel’s First Flash SSD Ready for Vertical Take-Off