
DigitalOcean vs SoftLayer performance benchmark
DigitalOcean is a new and upcoming cloud hosting provider, similar to SliceHost Rackspace Cloud, SoftLayer, and Linode. DigitalOcean came out of the TechStars cloud incubator, mentored by Jason Seats a SliceHost cofounder.
DigitalOcean offers traditional virtual machines with full root access. What makes them stand out from the competition is all their storage is SSD backed, and their prices are really inexpensive. In the interest of full discloser, Commando.io is fully sponsored by DigitalOcean. Anyway, let’s get right to the server setup.
SoftLayer
- 2 CPU’s (view /proc/cpuinfo)
- 1024 MB RAM
- 100 GB Disk
- 1 TB Bandwidth
- CentOS 5.3 x64
- $106.00/Mo
DigitalOcean
- 1 CPU (view /proc/cpuinfo)
- 1024 MB RAM
- 30 GB SSD Disk
- 2 TB Bandwidth
- CentOS 5.3 x64
- $10.00/Mo
We used a standard benchmarking utility called Unix Bench, which runs through a gauntlet of tests. You can view more details about Unix Bench and its testing methodology at http://www.hermit.org/Linux/Benchmarking/USAGE-5.1.2.txt. Since it would not be fair to benchmark using multiple CPU’s, since DigitalOcean only has a single core, we ran the benchmark using a single thread so the results are equal and fair.
Softlayer
Benchmark Run: Sat Apr 27 2013 20:29:18 - 20:57:14
2 CPUs in system; running 1 parallel copy of tests
Dhrystone 2 using register variables 21999954.2 lps (10.0 s, 7 samples)
Double-Precision Whetstone 1305.8 MWIPS (10.0 s, 7 samples)
Execl Throughput 1085.4 lps (30.0 s, 2 samples)
File Copy 1024 bufsize 2000 maxblocks 187759.0 KBps (30.0 s, 2 samples)
File Copy 256 bufsize 500 maxblocks 48810.2 KBps (30.0 s, 2 samples)
File Copy 4096 bufsize 8000 maxblocks 646582.2 KBps (30.0 s, 2 samples)
Pipe Throughput 285608.4 lps (10.0 s, 7 samples)
Pipe-based Context Switching 50018.0 lps (10.0 s, 7 samples)
Process Creation 1918.5 lps (30.0 s, 2 samples)
Shell Scripts (1 concurrent) 2423.7 lpm (60.0 s, 2 samples)
Shell Scripts (8 concurrent) 474.4 lpm (60.1 s, 2 samples)
System Call Overhead 274261.3 lps (10.0 s, 7 samples)
System Benchmarks Index Values BASELINE RESULT INDEX
Dhrystone 2 using register variables 116700.0 21999954.2 1885.2
Double-Precision Whetstone 55.0 1305.8 237.4
Execl Throughput 43.0 1085.4 252.4
File Copy 1024 bufsize 2000 maxblocks 3960.0 187759.0 474.1
File Copy 256 bufsize 500 maxblocks 1655.0 48810.2 294.9
File Copy 4096 bufsize 8000 maxblocks 5800.0 646582.2 1114.8
Pipe Throughput 12440.0 285608.4 229.6
Pipe-based Context Switching 4000.0 50018.0 125.0
Process Creation 126.0 1918.5 152.3
Shell Scripts (1 concurrent) 42.4 2423.7 571.6
Shell Scripts (8 concurrent) 6.0 474.4 790.7
System Call Overhead 15000.0 274261.3 182.8
========
System Benchmarks Index Score 368.9
DigitalOcean
Benchmark Run: Sat Apr 27 2013 20:29:21 - 20:57:11
1 CPU in system; running 1 parallel copy of tests
Dhrystone 2 using register variables 29099182.2 lps (10.0 s, 7 samples)
Double-Precision Whetstone 1757.2 MWIPS (9.9 s, 7 samples)
Execl Throughput 3909.3 lps (29.6 s, 2 samples)
File Copy 1024 bufsize 2000 maxblocks 852920.4 KBps (30.0 s, 2 samples)
File Copy 256 bufsize 500 maxblocks 233132.0 KBps (30.0 s, 2 samples)
File Copy 4096 bufsize 8000 maxblocks 1819443.3 KBps (30.0 s, 2 samples)
Pipe Throughput 1732034.8 lps (10.0 s, 7 samples)
Pipe-based Context Switching 274650.3 lps (10.0 s, 7 samples)
Process Creation 10241.3 lps (30.0 s, 2 samples)
Shell Scripts (1 concurrent) 4684.4 lpm (60.0 s, 2 samples)
Shell Scripts (8 concurrent) 642.6 lpm (60.0 s, 2 samples)
System Call Overhead 2090869.7 lps (10.0 s, 7 samples)
System Benchmarks Index Values BASELINE RESULT INDEX
Dhrystone 2 using register variables 116700.0 29099182.2 2493.5
Double-Precision Whetstone 55.0 1757.2 319.5
Execl Throughput 43.0 3909.3 909.1
File Copy 1024 bufsize 2000 maxblocks 3960.0 852920.4 2153.8
File Copy 256 bufsize 500 maxblocks 1655.0 233132.0 1408.7
File Copy 4096 bufsize 8000 maxblocks 5800.0 1819443.3 3137.0
Pipe Throughput 12440.0 1732034.8 1392.3
Pipe-based Context Switching 4000.0 274650.3 686.6
Process Creation 126.0 10241.3 812.8
Shell Scripts (1 concurrent) 42.4 4684.4 1104.8
Shell Scripts (8 concurrent) 6.0 642.6 1071.0
System Call Overhead 15000.0 2090869.7 1393.9
========
System Benchmarks Index Score 1199.1
Not only is DigitalOcean 91% less expensive than SoftLayer, it is 3.25X faster according to Unix Bench. The only difference is the SoftLayer virtual machine has 2 CPU’s for better parallelization and 100GB of storage instead of DigitalOcean’s 30 GB of SSD. However, for just $80/Mo or $70 more per month you can get a server with 4 CPU’s, 8 GB of RAM, and 80 GB of SSD storage from DigitalOcean which will absolutely smoke the performance of SoftLayer and is still $26/Mo cheaper.
The performance difference is mind blowing, and clearly significant. We are going to stick with SoftLayer for now because they have been amazingly helpful, their uptime and support is fantastic, and they sponsor us. In the near future though we plan on spinning up additional machines exclusively on DigitalOcean. As an added benefit, DigitalOcean recently announced their new datacenter in San Francisco, which means we can actually have a hybrid of servers in SoftLayer (San Jose) and DigitalOcean (San Francisco), and the latency between them is totally acceptable (< 3ms).
Follow the discussion on Hacker News.
Email me when DevOps & Programming publishes stories
