Deploy aDock on Laptops - SSD Matters

19 February 2015

In this post, we will try to understand if it is possible for a researcher/developer to deploy and test OpenStack code on his/her laptop. To do this, we will try to deploy an aDock environment on two different laptops.

We will leave Google Chrome (our favorite web browser) and Sublime Text (our favorite text editor) open to keep things more realistic. In fact, we assume that a researcher/developer won’t use a clean server edition of his OS while developing.

Our goal is to deploy a 1+5 configuration (one controller node and five compute nodes), which we think it’s suitable configuration for testing purposes.
Our experiment went through 7 states:

  1. Clean (Google Chrome plus Sublime Text);
  2. Ctrl (controller node is up);
  3. 1plus1 (one controller and one compute node);
  4. 1plus2 (one controller and two compute nodes);
  5. 1plus3 (…);
  6. 1plus4 (…);
  7. 1plus5 (…).

We succeeded in deploying a 1+5 configuration on both laptops, maintaining a usable environment.
With the term ‘usable’ we mean that the user can still work on his/her text editor, web browser and aDock itself, and so he/she can go on developing, browsing and run simulations with Oscard.

For each step we recorded CPU usage, RAM usage, SWAP usage and the required time to run the next aDock container in that state.

Here are the results:

Samsung SERIES 5 ULTRA

CPU: Intel Core i5 1.6 GHz
RAM: 4GB
SWAP: 4GB
SSD: no
OS: Linux Mint 3.13.0-24-generic XFCE

State Time (s) CPU (%) RAM (%) SWAP (%)
clean 1736 12.34 52.052 7.779
ctrl 898 12.495 95.954 9.809
1plus1 923 12.77 96.909 19.235
1plus2 934 13.14 96.528 29.861
1plus3 976 13.52 96.048 38.053
1plus4 1104 13.79 96.453 43.665
1plus5 --- 14.02 96.325 51.496

Apple MacBook Pro (Early 2011)

CPU: Intel Core i5 2.3 GHz
RAM: 8GB
SWAP: dynamically allocated
SSD: yes
OS: Mac Os X Yosemite

SWAP memory is in MB, because it is dynamically allocated and we don’t know its total.

State Time (s) CPU (%) RAM (%) SWAP (MB)
clean 466 3.05 93.63 55.5
ctrl 242 9.76 99.38 93.8
1plus1 255 12.78 99.75 93.8
1plus2 255 14.94 99.75 93.8
1plus3 257 15.91 99.75 93.8
1plus4 288 16.79 99.75 93.8
1plus5 304 18.01 99.75 93.8

In the first case, we can see that there is little dependence among CPU usage, startup time and number of containers. RAM usage and SWAP are strictly correlated, instead. We understand that running a containers is mostly a memory intensive task. In the second case, we see CPU usage grow significantly and RAM and SWAP stay unchanged. Our opinion is that Mac OS is too opaque to understand if something was happening underneath.
Reading data we have to keep in mind that Docker stores images on disk. So, it is not surprising to see that MacBook is almost 4 times faster than Samsung. SSD heavily beats HD, even when we come to use the SWAP.

In both cases we achieved a 1+5 configuration with still usable laptops and reasonable containers startup times.