Monday November 10, 2008
Performance Improvements Using Read Optimized Solid State Disks
The Sun Storage 7000 Unified Storage Systems can use fast storage devices - such as flash memory based SSDs (solid state disks) to extend the main memory cache. There are two types of SSDs: read optimized and write optimized. In this blog, we will show the performance improvements by using the read optimized SSDs when running simulated applications on file systems. ZFS has a new feature - the second level ARC or L2ARC - to allow people adding read optimized SSDs to file system stack. Brendan has a blog about ZFS L2ARC, including examples and block comments on L2ARC internals; for more background, check it out.
Test Configuration
We deploy a Sun Storage 7000, a 2 socket/quad core system configured
with 16GB DRAM, one Sun Storage J4400 (24 disks), four read optimized SSDs (350GB), one Sun Multithreaded 10 GigE
card. This appliance is connected to 10
Sun x86 clients via a switch - five of them are 2
socket/quad core with 8GB DRAM and five of them are 2 socket/dual
core with 8GB DRAM. All clients have a 1 GigE interface.
Random Read Testing using Single SSD
We start by enabling one SSD as L2ARC in the storage pool. 8 clients access the server over NFSv4, and execute a random read workload with an 8 or 32 KB record size across 50 GB of file (which is also its working set). The table below shows the file system throughput improvements (MB/s, reported on the clients) using SSD vs. without it under different configurations.
Please note that we warmed up the L2ARC before the test. The fourth column in the table below shows how long it takes for the warm up.
| Record Size |
Disk Config | Direct I/O | SSD Warmup Time | With SSD MB/s |
W/o SSD MB/s | Improved By |
| 8KB | Striped | Y | 4 hours | 44.3 | 30.4 | 40% |
| 8KB | Raid-z | Y | 4 hours | 41.3 | 7.4 | 5.6X |
| 32KB | Raid-z | Y | 2 hours | 282.4 | 51.4 | 5.4X |
| 32KB | Raid-z | N | 2 hours | 304.9 | 147.8 | 2X |
Filebench Testing using Four SSDs
We then enable all four SSDs and run Filebench test - an open-source framework for simulating applications on file systems. 10 clients access the server over NFSv4, and execute Filebench with an 8 KB record size across 300 GB of file. The test is composed of multiple 300-second small runs without warming up the L2ARC beforehand. Using Analytics, we can easily track how the appliance is behaving when the test is going on. Below are some screen shots from Analytics.
The charts below show how the disk I/O operations per second changes with the growth of L2ARC size. From the pie chart, we can see L2ARC already serves 54.7% of the requests while only about 55.7% of the working set has been warmed up (167GB vs. 300GB).
Using Analytics, one can easily get other statistics like NFSv4 operations per second, CPU utilization per second,
and disk I/O operations per second broken down by type of operations, etc. And also save worksheets for future reference.
To
summarize, the read optimized SSDs enabled by the ZFS L2ARC feature can
deliver impressive performance improvements over NFS. And these SSDs
can be used to achieve the best price/performance for certain workloads
on the Sun Storage 7000 series.
Posted at 10:50AM Nov 10, 2008 by Jing Zhang in Personal | Comments[1]
| November 2008 | ||||||
| Sun | Mon | Tue | Wed | Thu | Fri | Sat |
|---|---|---|---|---|---|---|
1 | ||||||
2 | 3 | 4 | 5 | 6 | 7 | 8 |
9 | 11 | 12 | 13 | 14 | 15 | |
16 | 17 | 18 | 19 | 20 | 21 | 22 |
23 | 24 | 25 | 26 | 27 | 28 | 29 |
30 | ||||||
| Today | ||||||
Today's Page Hits: 6