- Bare Metal
- Bare Metal Cloud
- Big Data Benchmarks
- Big Data Experts Interviews
- Big Data Technologies
- Big Data Use Cases
- Big Data Week
- Data Lake as a Service
- Dedicated Servers
- Disaster Recovery
- Industry Standards
- Online Retail
- People of Bigstep
- Performance for Big Data Apps
- Press Corner
- Tech Trends
- What is Big Data
Great news: you can get 60% more performance on existing infrastructure
We recently released a series benchmarking results which reveal that you can get up to 60% more performance from existing infrastructure - be it on-premise or outsourced, bare metal or virtualised.
In our testing, we were surprised to see several infrastructure myths debunked, such as more CPUs equal more performance and that OS choice has only minimal impact on performance. Alex Bordei, our Techie Product Manager is the culprit behind these findings and he’ll be glad to answer any comments, so if you’ve got any questions, ask away.
As part of the testing methodology, weused the Linpack, SysBench and TPC-DS standard hardware benchmarking tools. As our findings are not application or hardware specific, they can be applied to most IT infrastructures. Now let’s take a look at what we found.
- Deactivating one of two CPUs can improve database performance by up to 15%
In benchmarks performed on several databases, as well as in SysBench and TPC-DS tests, our team found that single processor bare metal instances can generate better performance than dual processor machines, all other things being equal. This means that adding a second processor to a machine can actually lower a database’s performance.
This is caused by the two processors using each other’s memory, which takes longer as opposed to each CPU accessing only its own. A way to counteract this limitation of existing hardware infrastructure is to configure the OS to use only Local Memory Access for each processor.
- OS choice can improve the performance of applications by up to 20%
In our Linpack benchmarks, we found that CentOS 6.4 can yield up to 16-20% better performance, when paired against Ubuntu 12 LTS. We used the default options and kernel settings for both systems. By checking the differences between kernel versions and settings and configuring the OS to match those of the better performing system, you can achieve a significant improvement in
- Improving memory frequency can increase performance by more than 20%
Memory frequency is often overlooked as RAM is generally expected to be ‘fast enough’. But we found that that the impact it has on computing performance is greatly underestimated. In Linpack benchmarks, replacing 1333 MHz DIMMs with 1866 MHz DIMMs from the same provider increased overall computing performance (total no. of GigaFLOPs) by 20%.
Applications that are heavily impacted by memory access time, such as NoSQL databases (Couchbase or Redis being two notable examples), can be greatly affected by this metric. If possible, memory frequency should always be checked – as two bare metal machines with otherwise identical specs, can register differences in performance of up to 40 per cent, solely based on this metric.
The physical placement of memory in slots can also greatly impact performance. In the wrong setup, memory chips will not use their maximum frequency and could even function at half their intended performance. Some vendors provide online configurators for optimum memory placement inside the bare metal server. Just by changing the distribution of memory across machines, you could achieve significant increase in frequency and performance.
- Hyper-Threading can decrease performance for CPU intensive applications
Intel’s Hyper-Threading technology is meant to accelerate CPU performance and in most cases it does that very well. However, in applications that are CPU intensive, deactivating Hyper-Threading can yield 5-10% better performance. In bare metal environments, deactivating Intel Virtualization Technology (Intel VT-x) can also yield an extra performance boost of up to 5%.
Want to learn more about improving performance?
We also discussed these benchmarks during the O’Reilly webcast ‘Getting the Most Out of Your NoSQL DB - Best Practices for Optimizing Infrastructure Performance and Budget’. A recording of the webcast, is available here. If you have the time, we highly recommend going through it - as it provides more performance improvement tips, specific to NoSQL DBs (specifically Elasticsearch, Couchbase and Cloudera’s Impala).
If you have any questions on how to apply these findings to your existing infrastructure, do let us know and we’ll do our best to answer.