Digital Ocean Toronto 8GB General Purpose VPS Benchmark

We recently did a benchmark on the Digital Ocean 1GB Droplet in the Toronto Data center, so we were curious how a VPS that has 8GB of RAM and 2 vCPU and costs a whopping $60 a month. For those keeping score at home, the 1GB Droplet only costs $5 per month. Anyway on with the show/benchmarking.

To keep things consistent across benchies, we need to prep the VPS in the exact same way each time.

Let’s get started with the basic network connectivity test that is speedtest-cli. Before we can kick off running the benchmark, there are a few dependanices that need to be installed on the VPS. Here are the commands needed to get things ready to run the speedtest-cli benchmark

apt-get install python-pip
pip install speedtest-cli

There is a good chance that the server is going to throw a warning that states

You are using pip version 8.1.1, however version 19.1 is available.
You should consider upgrading via the ‘pip install --upgrade pip’ command.
So, next step is to upgrade pip, as we were told!

> pip install --upgrade pip
From there, we want to drop into a temporary directory from where we can kick off the benchmarking.
cd /tmp
Now, let’s grab the bits of code we need in order to run the speedtest-cli benchmark tool
wget https://github.com/sivel/speedtest-cli/archive/master.zip
Great! Now let’s unzip that file and get to work
> unzip master.zip
As this is a vanilla install of Ubunty 16.04, the unzip package does not exist, so yet another warning/error is thrown.

The program ‘unzip’ is currently not installed. You can install it by typing:
apt install unzip

Easy enough to get around that issue, as it literally tells us exactly what to do. Once we have unzipped the package, we need to change directories into the new speedtest-cli-master directory that was created by the unzip process.

> cd speedtest-cli-master

Once you are in the speedtest directory, it is simply a matter of kicking off the speedtest script. As I wanted the fancy visuals for this blog post, I executed the command with the --share parameter.

> speedtest-cli --share If you do not wish to get the graphics, and are happy with seeing the results of the benchmark at the CLI, then simply run
> speedtest-cli

Now, onto the results of the speedtest-cli benchmark. Holy moly, what a network. It makes me wonder if Digital Ocean are in the same datacenter, or even the same rack as the speed test servers/devices.

Round 1 - FIGHT


And another round a few hours later.

At this point I have to assume that the speedtest node that I was hitting is in the same datacenter as the Digital Ocean droplet that I am running the tests from.

Now that we have done the speed test, let’s see how this expensive VPS stands up when we run Geekbench.

DigitalOcean Droplet 8GB 2vCPU

Single-Core Score Multi-Core Score
4253 7859
Geekbench 4.3.3 Tryout for Linux x86 (64-bit)

Result Information

Upload Date April 26 2019 03:50 PM
Views 1

System Information

System Information
Operating System Ubuntu 16.04.6 LTS 4.4.0-145-generic x86_64
Model DigitalOcean Droplet
Motherboard N/A
Memory 7983 MB
BIOS DigitalOcean 20171212
Processor Information
Name Intel Xeon Platinum 8168
Topology 2 Processors, 2 Cores
Identifier GenuineIntel Family 6 Model 85 Stepping 4
Base Frequency 2.69 GHz
L1 Instruction Cache 32.0 KB x 1
L1 Data Cache 32.0 KB x 1
L2 Cache 1.00 MB x 1
L3 Cache 33.0 MB x 1

Single-Core Performance

Single-Core Score 4253
Crypto Score 3750
Integer Score 4668
Floating Point Score 4784
Memory Score 2650
AES 3750
2.82 GB/sec
LZMA 3845
6.01 MB/sec
JPEG 4414
35.5 Mpixels/sec
Canny 4432
61.5 Mpixels/sec
Lua 4810
4.94 MB/sec
Dijkstra 6105
4.13 MTE/sec
SQLite 4625
128.2 Krows/sec
HTML5 Parse 4899
22.2 MB/sec
HTML5 DOM 3002
2.72 MElements/sec
Histogram Equalization 4142
129.4 Mpixels/sec
PDF Rendering 5195
138.0 Mpixels/sec
LLVM 8213
564.7 functions/sec
Camera 4033
11.2 images/sec
SGEMM 7983
168.8 Gflops
SFFT 5553
13.8 Gflops
N-Body Physics 4281
3.20 Mpairs/sec
Ray Tracing 3701
540.5 Kpixels/sec
Rigid Body Physics 4256
12460.9 FPS
HDR 5421
19.7 Mpixels/sec
Gaussian Blur 4433
77.7 Mpixels/sec
Speech Recognition 4520
38.7 Words/sec
Face Detection 4046
1.18 Msubwindows/sec
Memory Copy 2050
5.68 GB/sec
Memory Latency 5127
84.4 ns
Memory Bandwidth 1772
9.46 GB/sec

Multi-Core Performance

Multi-Core Score 7859
Crypto Score 7311
Integer Score 9122
Floating Point Score 9191
Memory Score 3153
AES 7311
5.51 GB/sec
LZMA 7671
12.0 MB/sec
JPEG 8803
70.8 Mpixels/sec
Canny 8471
117.5 Mpixels/sec
Lua 9600
9.87 MB/sec
Dijkstra 11118
7.52 MTE/sec
SQLite 9210
255.3 Krows/sec
HTML5 Parse 9769
44.4 MB/sec
HTML5 DOM 5419
4.91 MElements/sec
Histogram Equalization 8200
256.2 Mpixels/sec
PDF Rendering 10305
273.8 Mpixels/sec
LLVM 16433
1.13 Kfunctions/sec
Camera 8040
22.3 images/sec
SGEMM 14714
311.0 Gflops
SFFT 10015
25.0 Gflops
N-Body Physics 8516
6.36 Mpairs/sec
Ray Tracing 6345
926.6 Kpixels/sec
Rigid Body Physics 8271
24212.6 FPS
HDR 10745
39.0 Mpixels/sec
Gaussian Blur 9186
160.9 Mpixels/sec
Speech Recognition 8901
76.2 Words/sec
Face Detection 8095
2.36 Msubwindows/sec
Memory Copy 4011
11.1 GB/sec
Memory Latency 2280
189.8 ns
Memory Bandwidth 3429
18.3 GB/sec

Results can be browsed here.

Not bad, but does it really justify increasing your budget by $55/month?

Onto our old faithful bench.sh script.


CPU model : Intel(R) Xeon(R) Platinum 8168 CPU @ 2.70GHz
Number of cores : 2
CPU frequency : 2693.670 MHz
Total size of Disk : 25.1 GB (1.6 GB Used)
Total amount of Mem : 7983 MB (42 MB Used)
Total amount of Swap : 0 MB (0 MB Used)
System uptime : 0 days, 0 hour 7 min
Load average : 0.35, 0.29, 0.12
OS : Ubuntu 16.04.6 LTS
Arch : x86_64 (64 Bit)
Kernel : 4.4.0-145-generic

I/O speed(1st run) : 784 MB/s
I/O speed(2nd run) : 729 MB/s
I/O speed(3rd run) : 771 MB/s
Average I/O speed : 761.3 MB/s

Node Name IPv4 address Download Speed
CacheFly 205.234.175.175 233MB/s
Linode, Tokyo, JP 106.187.96.148 13.4MB/s
Linode, Singapore, SG 139.162.23.4 9.70MB/s
Linode, London, UK 176.58.107.39 28.3MB/s
Linode, Frankfurt, DE 139.162.130.8 25.4MB/s
Linode, Fremont, CA 50.116.14.9 32.5MB/s
Softlayer, Dallas, TX 173.192.68.18 34.1MB/s
Softlayer, Seattle, WA 67.228.112.250 23.3MB/s
Softlayer, Frankfurt, DE 159.122.69.4 11.4MB/s
Softlayer, Singapore, SG 119.81.28.170 5.81MB/s
Softlayer, HongKong, CN 119.81.130.170 6.57MB/s

And a second running later in the day gets us this.


CPU model : Intel(R) Xeon(R) Platinum 8168 CPU @ 2.70GHz
Number of cores : 2
CPU frequency : 2693.670 MHz
Total size of Disk : 25.1 GB (1.6 GB Used)
Total amount of Mem : 7983 MB (42 MB Used)
Total amount of Swap : 0 MB (0 MB Used)
System uptime : 0 days, 0 hour 9 min
Load average : 0.21, 0.27, 0.13
OS : Ubuntu 16.04.6 LTS
Arch : x86_64 (64 Bit)
Kernel : 4.4.0-145-generic

I/O speed(1st run) : 762 MB/s
I/O speed(2nd run) : 773 MB/s
I/O speed(3rd run) : 756 MB/s
Average I/O speed : 763.7 MB/s

Node Name IPv4 address Download Speed
CacheFly 205.234.175.175 107MB/s
Linode, Tokyo, JP 106.187.96.148 13.7MB/s
Linode, Singapore, SG 139.162.23.4 9.17MB/s
Linode, London, UK 176.58.107.39 29.8MB/s
Linode, Frankfurt, DE 139.162.130.8 21.9MB/s
Linode, Fremont, CA 50.116.14.9 32.1MB/s
Softlayer, Dallas, TX 173.192.68.18 41.4MB/s
Softlayer, Seattle, WA 67.228.112.250 30.1MB/s
Softlayer, Frankfurt, DE 159.122.69.4 11.5MB/s
Softlayer, Singapore, SG 119.81.28.170 5.50MB/s
Softlayer, HongKong, CN 119.81.130.170 6.63MB/s


CPU model : Intel(R) Xeon(R) Platinum 8168 CPU @ 2.70GHz
Number of cores : 2
CPU frequency : 2693.670 MHz
Total size of Disk : 25.1 GB (1.6 GB Used)
Total amount of Mem : 7983 MB (43 MB Used)
Total amount of Swap : 0 MB (0 MB Used)
System uptime : 0 days, 0 hour 10 min
Load average : 0.07, 0.21, 0.12
OS : Ubuntu 16.04.6 LTS
Arch : x86_64 (64 Bit)
Kernel : 4.4.0-145-generic

I/O speed(1st run) : 768 MB/s
I/O speed(2nd run) : 789 MB/s
I/O speed(3rd run) : 745 MB/s
Average I/O speed : 767.3 MB/s

Node Name IPv4 address Download Speed
CacheFly 205.234.175.175 124MB/s
Linode, Tokyo, JP 106.187.96.148 13.6MB/s
Linode, Singapore, SG 139.162.23.4 9.38MB/s
Linode, London, UK 176.58.107.39 29.6MB/s
Linode, Frankfurt, DE 139.162.130.8 26.2MB/s
Linode, Fremont, CA 50.116.14.9 26.8MB/s
Softlayer, Dallas, TX 173.192.68.18 39.4MB/s
Softlayer, Seattle, WA 67.228.112.250 26.6MB/s
Softlayer, Frankfurt, DE 159.122.69.4 10.8MB/s
Softlayer, Singapore, SG 119.81.28.170 5.59MB/s
Softlayer, HongKong, CN 119.81.130.170 8.36MB/s

According to Digtal Ocean, the General Purpose class of VPS gets you

Virtual machines with a healthy balance of memory and dedicated compute hyper-threads from best-in-class processors. Designed for the widest range of mainstream or production workloads, including web application hosting, e-commerce sites, medium-sized databases, and enterprise applications.

To be honest, I cannot think of any reason why anyone would run a general purpose VPS for $60, when a “standard” droplet is ALMOST as good. What say you good reader?

Digital Ocean, while rock solid offer sub par performance if you ask me. Considering there are other, higher performing providers out there. Looking at you Vultr and Linode.