November 1st, 2018 by Adam Armstrong
Lenovo ThinkSystem SR850 Server Review
The Lenovo ThinkSystem SR850 is a 2U server that offers a lot of flexibility under the hood that can lead to massive performance for demanding applications. Announced earlier this year, the S850 is set to go leaps and bounds over previous Lenovo servers with 233% more cores with the addition of up to four Intel Xeon Scalable CPUs, 400% more memory, and 76% faster performance. The SR850 is built for general business use cases, but with all of that performance, it can also handle the most demanding database, virtualization and artificial intelligence workloads.
Future-proofing is a large concern for many when evaluating the purchase of new hardware. With the ThinkSystem SR850, Lenovo has future-proofing built in. Using a mezzanine design, users can add two additional CPUs to the original two, bringing the total to four. The SR850 can be outfitted with a whopping 6TB of RAM. And Lenovo AnyBay drive bays can fit SAS, SATA, and NVMe drives in the same bay, which is somewhat novel in this class of server. In the case where users need to upgrade performance or switch to a different storage media, the SR850 will be ready.
The AnyBay configuration is a large step in the right direction of technical innovation. Having a backplane that can adapt to any type of media will be increasingly important to those that need to buy servers now but don't need to change over to NVMe SSDs for a little bit. Lenovo AnyBay drive bays come in five different configuration for the SR850. These include 8 drive bays, all SAS/SATA; 8 drive bays, where 4 are AnyBay; 16 drive bays, all SAS/SATA; 16 drive bays, where 4 are AnyBay; 16 drive bays, where 8 are AnyBay.
For this review our SR850 is configured with four Intel 8160 CPUs, which offer a 2.1GHz clock speed and 24 cores each, and 512GB of DDR4 memory.
Lenovo ThinkSystem SR850 Server Specifications
|Processor (Max)||2x or 4x Intel Xeon processor Scalable family CPUs, up to 165W|
|Memory (Max)||Up to 6TB in 48x slots using 128GB DIMMs; 2666MHz TruDDR4|
|Expansion Slots||Up to 9x PCIe plus 1x LOM; optional 1x ML2 slot|
|Internal Storage||Up to 16x 2.5-inch storage bays supporting SAS/SATA HDD and SSDs
or up to 8x 2.5-inch NVMe SSD; plus up to 2x mirrored M.2 boot
|Network Interface||Multiple options with 1GbE, 10GbE, 25GbE, 32GbE, 40GbE
or InfiniBand PCIe adapters; one (2-/4-port) 1GbE
or 10GbE LOM card
|Power Supply (Std/Max)||2x hot-swap/redundant: 750W/1100W/1600W AC 80 PLUS Platinum|
|RAID Support||Hardware RAID (up to 16 ports) with flash cache; up to 16-port HBAs|
|Systems Management||XClarity Controller embedded management
XClarity Administrator centralized infrastructure delivery
XClarity Integrator plugins
XClarity Energy Manager centralized server power management
|OS Supported||Microsoft Windows Server
|Limited Warranty||1- and 3-year customer replaceable unit and onsite service, next business day 9x5|
Design and Build
The Lenovo ThinkSystem SR850 has the same overall design as other 2U Lenovo servers. The front of the device has sixteen 2.5” drive bays that take up most of the real estate on the left, and USB ports and status lights on the right. The front drive bays can be swapped or upgraded by the end user, which StorageReview did when enabling the system for NVMe SSDs. We swapped out the SAS/SATA backplane with one that supports NVMe SSDs in four out of the eight slots, and added the appropriate CPI cabling to the upper and lower motherboards.
Moving around to the rear of the device, we see two hot-swap PSUs on the right. The server can have up to nine PCIe slots depending on how many CPUs are leveraged. It also has NMI, Ethernet port for XCC, Serial port, two USB 3.0 ports, and an ID button and LEDs running along the bottom.
Opening up the server, one can see the expansion tray with the additional CPUs and DIMM sockets.
Removing the tray, one can see the main CPUs.
For hardware management Lenovo uses XClarity which centralizes and streamlines hardware resource management, speeds cloud as well as traditional infrastructure deployment, and enables visibility and control of physical resources from external, higher level management software tools. In this review we worked with XClarity Controller, the embedded system mangement solution.
On the main screen XClarity lays everything out for users to see quickly and easily. There are five main windows that show a Health Summary (that breaks down various hardware components), Quick access (for actions such as turning the system on or off), a Remote Console Preview, System Information and Setting, and Power Utilization. Down the right side of the screen are main tabs including: Home, Events, Inventory, Utilization, Remote Console, Firmware Update, Server Configuration, and BMC Configuration.
The Inventory tab lists the various hardware components of the server and gives a basic description, i.e. how many cores per CPU or the capacity of RAM.
The Utilization tab shows what resources and how much of those said resources are being used by the server and offers either graphical or a table view.
The Remote Console tab shows a review of what a remote console would look like as well as allowing users to configure their remote consoles.
With the Firmware Update tab, admins can see system and/or adaptor firmware updates that are available and manually update them.
The next main tab is Server Configuration with several sub tabs including Adapters, Boot Options, Power Policy, RAID Setup, and Sever Properties. As far as Boot Options go, admins can setup either UEFI boot or Legacy boot, decide the boot order and device used, as well as set up a one time boot device.
The Power Policy allows admins to set up either redundant or non-redundant as well as set the power restore policy: setting it to stay off, on, or revert to the previous settings after a power restore.
RAID setup lets admins set RAID at the array level per controller or at the storage level.
With Baseboard Management Controller (BMC) Configuration, admins can set their BMC Configuration, back it up, restore it from the backup, or reset it to factory defaults.
Overall the XClarity Controller looks nice and is generally intuitive to use. There are a few rough spots though and some of the reporting isn't as nice as other top-tier server brands. To be fair, we did not explore XClarity Administrator where some of the issues we ran into may be addressed there.
To measure performance and storage potential of the Lenovo ThinkSystem SR850, we utilized a bare-metal scenario operating on a CentOS 7.4 platform, as well as virtualized Sysbench MySQL performance across 8 and 16 VMs with VMware installed. In our bare-metal configuration, we focused on synthetic performance as measured with VDbench, and in our virtualized environment, we ran eight and sixteen MySQL VMs operating inside of ESXi 6.5.
In both scenarios, we leveraged a full NVMe storage backend leveraging Memblaze PBlaze5 4TB SSDs. These drivers offer tremendous performance and allow us to saturate compute performance before running out of storage potential. In terms of compute power, the system is configured with four Intel 8160 CPUs, which offer a 2.1GHz clock speed and 24 cores each, and 512GB of DDR4 memory. In total, that gives us 96 cores and 201.6GHz of compute power.
Sysbench MySQL Performance
Our first local-storage application benchmark consists of a Percona MySQL OLTP database measured via SysBench. This test measures average TPS (Transactions Per Second), average latency, and average 99th percentile latency as well.
Each Sysbench VM is configured with three vDisks: one for boot (~92GB), one with the pre-built database (~447GB), and the third for the database under test (270GB). From a system resource perspective, we configured each VM with 16 vCPUs, 60GB of DRAM and leveraged the LSI Logic SAS SCSI controller.
Sysbench Testing Configuration (per VM)
- CentOS 6.3 64-bit
- Percona XtraDB 5.5.30-rel30.1
- Database Tables: 100
- Database Size: 10,000,000
- Database Threads: 32
- RAM Buffer: 24GB
- Test Length: 3 hours
- 2 hours preconditioning 32 threads
- 1 hour 32 threads
In our Sysbench benchmark, we tested the SR850 with 8VM and 16VM. Looking just at raw performance, the transactional workloads resulted in 21,632 TPS for 8VM and 25,427 TPS for 16VM.
For average latency, the SR850 only had 11.96ms for 8VM and 20.26ms when doubled to 16VM.
In our worst-case scenario latency benchmark, the SR850 only had 23.05ms with 8VM and 45.27ms with 16VM.
VDBench Workload Analysis
Our last section of local performance testing focuses in on synthetic-workload performance. In this area, we leveraged eight NVMe SSDs in CentOS 7.4, measuring combined performance of the 8 NVMe SSDs partitioned to 25% utilization. This type of test is useful to show what real-world storage metrics look like across different workloads.
When it comes to benchmarking storage arrays, application testing is best, and synthetic testing comes in second place. While not a perfect representation of actual workloads, synthetic tests do help to baseline storage devices with a repeatability factor that makes it easy to do apples-to-apples comparison between competing solutions. These workloads offer a range of different testing profiles ranging from "four corners" tests, common database transfer size tests, as well as trace captures from different VDI environments. All of these tests leverage the common vdBench workload generator, with a scripting engine to automate and capture results over a large compute testing cluster. This allows us to repeat the same workloads across a wide range of storage devices, including flash arrays and individual storage devices.
- 4K Random Read: 100% Read, 128 threads, 0-120% iorate
- 4K Random Write: 100% Write, 64 threads, 0-120% iorate
- 64K Sequential Read: 100% Read, 16 threads, 0-120% iorate
- 64K Sequential Write: 100% Write, 8 threads, 0-120% iorate
- Synthetic Database: SQL and Oracle
- VDI Full Clone and Linked Clone Traces
Looking at peak read performance, the SR850 was able to maintain sub-millisecond latency performance throughout with a peak performance of 4,094,070 IOPS with a latency of 195μs.
With 4K random write, the server had a peak performance of 1,590,935 IOPS with a latency of 319μs.
Switching over to sequential 64K read, the SR850 had peak performance of 382,461 IOPS or 23.9GB/s at 548μs.
For 64K sequential write, we saw a peak performance of 115,257 IOPS or 7.2GB/s with 582μs latency.
With our SQL workloads, we again saw sub-millisecond latency throughout our testing. In SQL we saw a peak performance of 1,793,443 IOPS with a latency of only 139μs.
SQL 90-10 saw the SR850 peak at 1,629,167 IOPS with a latency of 150μs.
For SQL 80-20, the Lenovo hit a peak score of 1,486,502 IOPS with a latency of 160μs.
Our Oracle workloads showed the Lenovo SR850 continue to do well with a peak performance of 1,370,497 IOPS with a latency of 175μs.
Oracle 90-10 had a peak performance of 1,247,226 IOPS with a latency of only 135μs.
For Oracle 80-20, the Lenovo had a peak performance of 1,162,074 IOPS with a latency of 141μs.
Next, we switched over to our VDI clone test, Full and Linked. For VDI Full Clone (FC) Boot, the Lenovo SR850 peaked at 1,296,201 IOPS with a latency of 191μs.
For VDI FC Initial Login, the server peaked at 468,901 IOPS with a latency of 358μs.
VCI FC Monday Login had a peak performance of 401,389 IOPS with a latency of 266μs.
Switching over to VDI Linked Clone (LC) tests, the Lenovo SR850 was able to peak at 651,695 IOPS with 192μs latency for Boot.
For VDI LC Initial Login, the server was able to peak at 216,567 IOPS with a latency of 246μs.
Finally, VDI LC Monday Login showed the SR850 to have a peak performance of 278,174 IOPS with a latency of 358μs.
The Lenovo SR850 is a mainstream 2U server that seriously steps up its compute game from its predecessors. The SR850 can house up to 4 Intel Xeon Scalable CPUs and up to 6TB of RAM, again, all within a 2U footprint. To top that off, the server comes with Lenovo AnyBay drives, allowing users to use SAS, SATA, or NVMe (though it can house fewer NVMe drives than the other two interfaces). While built for general business applications, it can run more powerful workloads by adding more CPUs and/or RAM. It also is designed to be inherently future-proof, as users can add more processors and RAM instead of replacing the entire server.
For performance, we configured the SR850 with 4 Intel 8160 CPUs, 512GB of RAM, and 8 Memblaze PBlaze5 4TB NVMe drives. While this represents a more than fair amount of performance, it is not near the top end of what the server is capable of. With this in mind, in our Sysbench workloads the server was able to hit 21,632 TPS with 8VM and 25,427 TPS with 16VM. For latency, we saw low numbers of 11.96ms for 8VM and 20.26ms for 16VM in average, and only 23.05ms for 8VM and 45.27 for 16VM in 99th Percentile.
Our VDBench test showed some very impressive numbers. One million IOPS is a bar that most performance-driven devices need to hit if they want to make the claim of high performance. The Lenovo ThinkSystem SR850 broke a million IOPS in eight of our tests, with scores of 4 million IOPS in 4K read, 1.6 million in 4K write, 1.8 million in SQL, 1.6 million in SQL 90-10, 1.5 million in SQL 80-20, 1.37 million in Oracle, 1.24 million in Oracle 90-10, 1.16 million in Oracle 80-20, and 1.3 million in VDI FC Boot. Through these, and all benchmarks, the SR850 never went over 1ms in latency with the highest being 582μs. On the sequential side of things, we saw 23.9GB/s read and 7.2GB/s write.
Overall the Lenovo ThinkSystem SR850 is a highly flexible system capable of handling both mainstream applications in a more modest configuration, or emerging workloads like big data and AI with the beefed up quad-CPU and high RAM footprint. The SR850 is also very tunable when it comes to storage. Thanks to AnyBay technology, the drive backplanes can be swapped so customers can buy a system configured on way today, then swap out to something more NVMe heavy, for instance, in the future.