Performance comparison, Linode, DigitalOcean and Vultr

Freelance web developer met interesse in AI, robotica, frontend en backend php development.

thumb image
Delen

For a new site, I was comparing the performance of the $10 plans for Linode, DigitalOcean (DO) and Vultr.
For the tests I used a freshly deployed CentOS 7 image.

Here are the results.

wget freevps.us/downloads/bench.sh -O - -o /dev/null|bash

Vultr results:

System Info
-----------
Processor : Virtual CPU 714389bda930
CPU Cores : 1
Frequency : 2399.996 MHz
Memory : 992 MB
Swap : MB
Uptime : 11:23,

OS : \S
Arch : x86_64 (64 Bit)
Kernel : 3.10.0-327.22.2.el7.x86_64

Speedtest (IPv4 only)
---------------------

Location Provider Speed
CDN Cachefly 252MB/s

Atlanta, GA, US Coloat 2.74MB/s
Dallas, TX, US Softlayer 17.0MB/s
Seattle, WA, US Softlayer 12.4MB/s
San Jose, CA, US Softlayer 13.0MB/s
Washington, DC, US Softlayer 23.3MB/s

Tokyo, Japan Linode 8.41MB/s
Singapore Softlayer 10.7MB/s

Rotterdam, Netherlands id3.net 175MB/s
Haarlem, Netherlands Leaseweb 131MB/s

Disk Speed
----------
I/O (1st run) : 410 MB/s
I/O (2nd run) : 475 MB/s
I/O (3rd run) : 472 MB/s
Average I/O : 452.333 MB/s

DigitalOcean results:

System Info
-----------
Processor : Intel(R) Xeon(R) CPU E5-2630L v2 @ 2.40GHz
CPU Cores : 1
Frequency : 2399.998 MHz
Memory : 993 MB
Swap : MB
Uptime : 7 min,

OS : \S
Arch : x86_64 (64 Bit)
Kernel : 3.10.0-327.28.2.el7.x86_64

Speedtest (IPv4 only)
---------------------

Location Provider Speed
CDN Cachefly 109MB/s

Atlanta, GA, US Coloat 14.0MB/s
Dallas, TX, US Softlayer 14.0MB/s
Seattle, WA, US Softlayer 11.7MB/s
San Jose, CA, US Softlayer 11.9MB/s
Washington, DC, US Softlayer 18.2MB/s

Tokyo, Japan Linode 8.92MB/s
Singapore Softlayer 8.72MB/s

Rotterdam, Netherlands id3.net 98.2MB/s
Haarlem, Netherlands Leaseweb 107MB/s

Disk Speed
----------
I/O (1st run) : 229 MB/s
I/O (2nd run) : 611 MB/s
I/O (3rd run) : 615 MB/s
Average I/O : 485 MB/s

(another test a day after gives me better disk speed results)
Disk Speed
----------
I/O (1st run) : 801 MB/s
I/O (2nd run) : 809 MB/s
I/O (3rd run) : 825 MB/s
Average I/O : 811.667 MB/s

Linode results:

System Info
-----------
Processor : Intel(R) Xeon(R) CPU E5-2680 v3 @ 2.50GHz
CPU Cores : 1
Frequency : 2499.976 MHz
Memory : 1999 MB
Swap : 255 MB
Uptime : 5 min,

OS : \S
Arch : x86_64 (64 Bit)
Kernel : 4.6.5-x86_64-linode71
Hostname : localhost.localdomain

Speedtest (IPv4 only)
---------------------

Location Provider Speed
CDN Cachefly 103MB/s

Atlanta, GA, US Coloat 344KB/s
Dallas, TX, US Softlayer 10.3MB/s
Seattle, WA, US Softlayer 11.1MB/s
San Jose, CA, US Softlayer 10.5MB/s
Washington, DC, US Softlayer 9.38MB/s

Tokyo, Japan Linode 9.20MB/s
Singapore Softlayer 8.00MB/s

Rotterdam, Netherlands id3.net 71.8MB/s
Haarlem, Netherlands Leaseweb 127MB/s

Disk Speed
----------
I/O (1st run) : 349 MB/s
I/O (2nd run) : 639 MB/s
I/O (3rd run) : 621 MB/s
Average I/O : 536.333 MB/s

Sysbench results:


wget ftp://ftp.gnome.org/mirror/fedora/epel/6/x86_64/sysbench-0.4.12-5.el6.x86_64.rpm
wget http://downloads.mysql.com/archives/mysql-5.1/MySQL-shared-compat-5.1.49-1.rhel5.x86_64.rpm
rpm -iv MySQL-shared-compat-5.1.49-1.rhel5.x86_64.rpm
yum install postgresql-libs.x86_64
yum install libaio
rpm -iv sysbench-0.4.12-5.el6.x86_64.rpm
sysbench --test=cpu --cpu-max-prime=20000 run

Vultr

Test execution summary:
total time: 35.0111s
total number of events: 10000
total time taken by event execution: 35.0052
per-request statistics:
min: 3.34ms
avg: 3.50ms
max: 9.91ms
approx. 95 percentile: 3.97ms

Threads fairness:
events (avg/stddev): 10000.0000/0.00
execution time (avg/stddev): 35.0052/0.00

DigitalOcean

Test execution summary:
total time: 36.0255s
total number of events: 10000
total time taken by event execution: 36.0202
per-request statistics:
min: 3.50ms
avg: 3.60ms
max: 7.41ms
approx. 95 percentile: 3.72ms

Threads fairness:
events (avg/stddev): 10000.0000/0.00
execution time (avg/stddev): 36.0202/0.00

Linode

Test execution summary:
total time: 33.0205s
total number of events: 10000
total time taken by event execution: 33.0150
per-request statistics:
min: 3.20ms
avg: 3.30ms
max: 4.79ms
approx. 95 percentile: 3.60ms

Threads fairness:
events (avg/stddev): 10000.0000/0.00
execution time (avg/stddev): 33.0150/0.00

Vultr

sysbench --test=fileio --file-total-size=10G prepare
sysbench --test=fileio --file-total-size=10G --file-test-mode=rndrw --init-rng=on --max-time=300 --max-requests=0 run

Read 4.0823Gb Written 2.7216Gb Total transferred 6.8039Gb (23.224Mb/sec)

DigitalOcean

Read 11.05Gb Written 7.3669Gb Total transferred 18.417Gb (62.862Mb/sec)

Linode

Read 7.2308Gb Written 4.8206Gb Total transferred 12.051Gb (41.134Mb/sec)

dd if=/dev/zero of=test bs=64k count=16k conv=fdatasync

Vultr
1073741824 bytes (1.1 GB) copied, 2.79991 s, 383 MB/s

DigitalOcean
1073741824 bytes (1.1 GB) copied, 2.67239 s, 402 MB/s

Linode
1073741824 bytes (1.1 GB) copied, 2.11328 s, 508 MB/s

And finally unixbench results:

Vultr:
OS: GNU/Linux -- 3.10.0-327.22.2.el7.x86_64 -- #1 SMP Thu Jun 23 17:05:11 UTC 2016
Machine: x86_64 (x86_64)
Language: en_US.utf8 (charmap="ANSI_X3.4-1968", collate="ANSI_X3.4-1968")
CPU 0: Virtual CPU 714389bda930 (4800.0 bogomips)
x86-64, MMX, Physical Address Ext, SYSENTER/SYSEXIT, SYSCALL/SYSRET
14:29:19 up 14:49, 1 user, load average: 0.11, 0.21, 0.13; runlevel 3

------------------------------------------------------------------------
Benchmark Run: Wed Aug 24 2016 14:29:19 - 14:57:30
1 CPU in system; running 1 parallel copy of tests

Dhrystone 2 using register variables 25157442.5 lps (10.0 s, 7 samples)
Double-Precision Whetstone 3398.6 MWIPS (9.9 s, 7 samples)
Execl Throughput 3366.7 lps (30.0 s, 2 samples)
File Copy 1024 bufsize 2000 maxblocks 775273.5 KBps (30.0 s, 2 samples)
File Copy 256 bufsize 500 maxblocks 232559.4 KBps (30.0 s, 2 samples)
File Copy 4096 bufsize 8000 maxblocks 1703258.9 KBps (30.0 s, 2 samples)
Pipe Throughput 1469168.9 lps (10.0 s, 7 samples)
Pipe-based Context Switching 288856.7 lps (10.0 s, 7 samples)
Process Creation 9735.4 lps (30.0 s, 2 samples)
Shell Scripts (1 concurrent) 4499.6 lpm (60.0 s, 2 samples)
Shell Scripts (8 concurrent) 616.2 lpm (60.0 s, 2 samples)
System Call Overhead 3391541.4 lps (10.0 s, 7 samples)

System Benchmarks Index Values BASELINE RESULT INDEX
Dhrystone 2 using register variables 116700.0 25157442.5 2155.7
Double-Precision Whetstone 55.0 3398.6 617.9
Execl Throughput 43.0 3366.7 783.0
File Copy 1024 bufsize 2000 maxblocks 3960.0 775273.5 1957.8
File Copy 256 bufsize 500 maxblocks 1655.0 232559.4 1405.2
File Copy 4096 bufsize 8000 maxblocks 5800.0 1703258.9 2936.7
Pipe Throughput 12440.0 1469168.9 1181.0
Pipe-based Context Switching 4000.0 288856.7 722.1
Process Creation 126.0 9735.4 772.7
Shell Scripts (1 concurrent) 42.4 4499.6 1061.2
Shell Scripts (8 concurrent) 6.0 616.2 1027.0
System Call Overhead 15000.0 3391541.4 2261.0
========
System Benchmarks Index Score 1243.6

DigitalOcean:

OS: GNU/Linux -- 3.10.0-327.28.2.el7.x86_64 -- #1 SMP Wed Aug 3 11:11:39 UTC 2016
Machine: x86_64 (x86_64)
Language: en_US.utf8 (charmap="ANSI_X3.4-1968", collate="ANSI_X3.4-1968")
CPU 0: Intel(R) Xeon(R) CPU E5-2630L v2 @ 2.40GHz (4800.0 bogomips)
x86-64, MMX, Physical Address Ext, SYSENTER/SYSEXIT, SYSCALL/SYSRET, Intel virtualization
14:29:21 up 3:33, 1 user, load average: 0.05, 0.10, 0.08; runlevel 3

------------------------------------------------------------------------
Benchmark Run: Wed Aug 24 2016 14:29:21 - 14:57:32
1 CPU in system; running 1 parallel copy of tests

Dhrystone 2 using register variables 26098639.1 lps (10.0 s, 7 samples)
Double-Precision Whetstone 3307.5 MWIPS (9.8 s, 7 samples)
Execl Throughput 2911.9 lps (30.0 s, 2 samples)
File Copy 1024 bufsize 2000 maxblocks 674322.2 KBps (30.0 s, 2 samples)
File Copy 256 bufsize 500 maxblocks 188424.5 KBps (30.0 s, 2 samples)
File Copy 4096 bufsize 8000 maxblocks 1389987.5 KBps (30.0 s, 2 samples)
Pipe Throughput 1283145.3 lps (10.0 s, 7 samples)
Pipe-based Context Switching 239740.3 lps (10.0 s, 7 samples)
Process Creation 9055.2 lps (30.0 s, 2 samples)
Shell Scripts (1 concurrent) 4274.3 lpm (60.0 s, 2 samples)
Shell Scripts (8 concurrent) 574.3 lpm (60.1 s, 2 samples)
System Call Overhead 1906295.5 lps (10.0 s, 7 samples)

System Benchmarks Index Values BASELINE RESULT INDEX
Dhrystone 2 using register variables 116700.0 26098639.1 2236.4
Double-Precision Whetstone 55.0 3307.5 601.4
Execl Throughput 43.0 2911.9 677.2
File Copy 1024 bufsize 2000 maxblocks 3960.0 674322.2 1702.8
File Copy 256 bufsize 500 maxblocks 1655.0 188424.5 1138.5
File Copy 4096 bufsize 8000 maxblocks 5800.0 1389987.5 2396.5
Pipe Throughput 12440.0 1283145.3 1031.5
Pipe-based Context Switching 4000.0 239740.3 599.4
Process Creation 126.0 9055.2 718.7
Shell Scripts (1 concurrent) 42.4 4274.3 1008.1
Shell Scripts (8 concurrent) 6.0 574.3 957.1
System Call Overhead 15000.0 1906295.5 1270.9
========
System Benchmarks Index Score 1072.1

Linode:

OS: GNU/Linux -- 4.6.5-x86_64-linode71 -- #2 SMP Fri Jul 29 16:16:25 EDT 2016
Machine: x86_64 (x86_64)
Language: en_US.utf8 (charmap="ANSI_X3.4-1968", collate="ANSI_X3.4-1968")
CPU 0: Intel(R) Xeon(R) CPU E5-2680 v3 @ 2.50GHz (5001.3 bogomips)
x86-64, MMX, Physical Address Ext, SYSENTER/SYSEXIT, SYSCALL/SYSRET
14:29:25 up 3:27, 1 user, load average: 0.09, 0.12, 0.06; runlevel 3

------------------------------------------------------------------------
Benchmark Run: Wed Aug 24 2016 14:29:25 - 14:57:34
1 CPU in system; running 1 parallel copy of tests

Dhrystone 2 using register variables 26811136.6 lps (10.0 s, 7 samples)
Double-Precision Whetstone 3606.7 MWIPS (9.8 s, 7 samples)
Execl Throughput 3641.4 lps (30.0 s, 2 samples)
File Copy 1024 bufsize 2000 maxblocks 778346.6 KBps (30.0 s, 2 samples)
File Copy 256 bufsize 500 maxblocks 238780.9 KBps (30.0 s, 2 samples)
File Copy 4096 bufsize 8000 maxblocks 1403650.8 KBps (30.0 s, 2 samples)
Pipe Throughput 1746356.9 lps (10.0 s, 7 samples)
Pipe-based Context Switching 331115.4 lps (10.0 s, 7 samples)
Process Creation 10366.3 lps (30.0 s, 2 samples)
Shell Scripts (1 concurrent) 4770.7 lpm (60.0 s, 2 samples)
Shell Scripts (8 concurrent) 637.2 lpm (60.1 s, 2 samples)
System Call Overhead 1948338.8 lps (10.0 s, 7 samples)

System Benchmarks Index Values BASELINE RESULT INDEX
Dhrystone 2 using register variables 116700.0 26811136.6 2297.4
Double-Precision Whetstone 55.0 3606.7 655.8
Execl Throughput 43.0 3641.4 846.8
File Copy 1024 bufsize 2000 maxblocks 3960.0 778346.6 1965.5
File Copy 256 bufsize 500 maxblocks 1655.0 238780.9 1442.8
File Copy 4096 bufsize 8000 maxblocks 5800.0 1403650.8 2420.1
Pipe Throughput 12440.0 1746356.9 1403.8
Pipe-based Context Switching 4000.0 331115.4 827.8
Process Creation 126.0 10366.3 822.7
Shell Scripts (1 concurrent) 42.4 4770.7 1125.2
Shell Scripts (8 concurrent) 6.0 637.2 1062.0
System Call Overhead 15000.0 1948338.8 1298.9
========
System Benchmarks Index Score 1238.3

Memory read speed:
Vultr: 1570.24 MB/sec
DO: 959.19 MB/sec
Linode: 2623.73 MB/sec

Memory write speeds:
Vultr: 1577.46 MB/sec
DO: 967.22 MB/sec
Linode: 2582.84 MB/sec

File I/O:
Vultr: 1792.35 Requests/sec
DO: 4727.58 Requests/sec
Linode: 3700.33 Requests/sec

ApacheBench tests (different scenarios, connect/processing/waiting/total)
Vultr and DO perform really well, Linode stays a bit behind here.

Vultr:
Apache test page:
13/22/21/35
4/5/5/10
Nginx test page:
6/5/4/11
4/4/4/9
Nginx phpinfo
5/24/6/29
4/19/5/23
Nginx php benchmark
5/21211/21211/21216
5/20991/20991/20997
Nginx php benchmark (php 7)
12/7190/7190/7201
5/7152/7152/7158
Wordpress base install (1000, 10)
30/177/177/208
5/164/163/174
jQuery file (1000, 5)
1/173/12/174 - 0/164/11/164
0/94/6/94 - 0/88/6/88

DO:
Apache test page:
22/10/9/32
4/5/4/9
Nginx test page:
6/6/5/12
4/4/4/9
Nginx phpinfo
6/23/7/28
4/18/6/22
Nginx php benchmark
4/24508/24507/24512
4/24494/24494/24498
Nginx php benchmark (php 7)
34/10636/10636/10670
5/10689/10689/10708
Wordpress base install (1000, 10)
25/211/211/236
5/205/205/214
jQuery file (1000, 5)
0/181/11/181
0/84/5/84

Linode:
Apache test page:
19/17/16/36
11/12/11/23
Nginx test page:
14/14/14/28
11/11/11/22
Nginx phpinfo:
14/53/15/67
11/45/12/56
Nginx php benchmark (php 5.4):
30/19564/19564/19595
12/19437/19437/19448
Nginx php benchmark (php 7)
28/6809/6809/6838
13/6775/6775/6830

Sysbench mysql performance:

Vultr:

OLTP test statistics:
queries performed:
read: 548912
write: 0
other: 78416
total: 627328
transactions: 39208 (653.37 per sec.)
deadlocks: 0 (0.00 per sec.)
read/write requests: 548912 (9147.13 per sec.)
other operations: 78416 (1306.73 per sec.)

Test execution summary:
total time: 60.0092s
total number of events: 39208
total time taken by event execution: 479.8611
per-request statistics:
min: 8.74ms
avg: 12.24ms
max: 61.87ms
approx. 95 percentile: 16.32ms

Threads fairness:
events (avg/stddev): 4901.0000/16.42
execution time (avg/stddev): 59.9826/0.00

DigitalOcean:

OLTP test statistics:
queries performed:
read: 492716
write: 0
other: 70388
total: 563104
transactions: 35194 (586.54 per sec.)
deadlocks: 0 (0.00 per sec.)
read/write requests: 492716 (8211.50 per sec.)
other operations: 70388 (1173.07 per sec.)

Test execution summary:
total time: 60.0032s
total number of events: 35194
total time taken by event execution: 479.8444
per-request statistics:
min: 6.53ms
avg: 13.63ms
max: 27.70ms
approx. 95 percentile: 15.71ms

Threads fairness:
events (avg/stddev): 4399.2500/12.09
execution time (avg/stddev): 59.9805/0.00

Linode:

OLTP test statistics:
queries performed:
read: 543802
write: 0
other: 77686
total: 621488
transactions: 38843 (647.29 per sec.)
deadlocks: 0 (0.00 per sec.)
read/write requests: 543802 (9062.07 per sec.)
other operations: 77686 (1294.58 per sec.)

Test execution summary:
total time: 60.0086s
total number of events: 38843
total time taken by event execution: 479.7662
per-request statistics:
min: 1.31ms
avg: 12.35ms
max: 57.53ms
approx. 95 percentile: 22.19ms

Threads fairness:
events (avg/stddev): 4855.3750/22.64
execution time (avg/stddev): 59.9708/0.01

Conclusion:
DigitalOcean scores the best for file I/O.
Linode scores the best for memory I/O.
Vultr has the fastest network speed in NL.

Regarding the plans, DO gives the most disk space, Linode offers 2GB of memory. And not discussed and not yet fully tested, OVH, gives a really competitive price (but horrible support). In terms of uptime, I have been using Linode and DO for quite a while and uptime is very good. I don't have experience with OVH but read uptime is good, but when things happen it may not be fixed quickly due to the bad customer support.
I am also thinking of testing/benchmarking OVH, Hostsailor and TransIP in the near future.

You can use the following referral links:
Vultr ($20 off)
Linode
DigitalOcean (get $10 off)

Reageren

Geef een reactie

Het e-mailadres wordt niet gepubliceerd.