Arrow of time
Arrow of time
Online.net physical ARM-powered cloud

Online.net is a French hosting company offering the usual range of services from simple web hosting for 1 € / mo ...

Online.net is a French hosting company offering the usual range of services from simple web hosting for 1 € / mo to dedicated servers, but with a twist I haven't seen before: their offer of dedicated servers is incredibly affordable! See this example: for 6 € / mo you can get yourself a dedicated VIA Nano x86 CPU powered server completely for your own usage. These CPU's performance is comparable to those of Intel Atom, so the prices are extremely attractive.

They are also testing a line of dedicated machines based on a quad-core ARM CPU which should be even more efficient, and which they have offered for completely free public testing on-demand in 15-minutes intervals! I have made use of this opportunity and ran some benchmarks on the provided "C1" test configuration. I have used the OpenSSL's "speed" benchmark, the bonnie++ disk benchmark and my own pretty much ad-hoc pysysbench.

The hardware is Marvell ARMADA XP and the ARM machines run Linux (of course). You can inspect their dmesg and cpuinfo data yourself. While I was testing the machine, I also tried to inspect and change the CPU's frequency, but it appears that the cpufreq driver is not available for this specific product (not that it matters directly for the machine's end-users since they are not paying for the electricity, but let's not be wasteful).

Since I've recently benchmarked a modern Atom Z3775 CPU, I'm including the single-core OpenSSL results from that benchmark for comparison here:

CPU Xeon E3-1230 v3 Xeon E5405 Atom Z3775 ARMADA XP
Norm. freq. 3.3 GHz 2 GHz 1.46 GHz 1.3 GHz
Turbo freq. 3.7 GHz 2 GHz 2.39 GHz 1.3 GHz
RAM freq. DDR3-1600 FBDIMM-800 DDR3-1066 DDR3-?
RC4 865 MB/s 213 MB/s 212 MB/s 107 MB/s
SHA256 275 MB/s 60 MB/s 43 MB/s 50 MB/s
AES-128-CBC 164 MB/s 106 MB/s 94 MB/s 54 MB/s
RSA2048 987 s, 31090 v 73 s, 2906 v 36 s, 1303 v 29 s, 935 v

The results are a bit underwhelming. This is a 32-bit ARM CPU with 2 GB of RAM, but it's operating on a fairly slow frequency of 1.3 GHz and the results reflect this. However, it seems like the CPU's efficiency per MHz is very close to that of the latest Intel Atoms. It looks like if the ARM could be doubled in frequency, it could even surpass the Atom.

Here are the 4-core OpenSSL results:

Benchmark ARMADA XP 4-core
RC4 427 MB/s
SHA256 201 MB/s
AES-128-CBC 219 MB/s
RSA2048 115 s, 3734 v

The test setup boots and uses a network block device (NBD, think iSCSI-lite) for storage, so the bonnie++ benchmark results are fairly low:

Version  1.97       ------Sequential Output------ --Sequential Input- --Random-
Concurrency   1     -Per Chr- --Block-- -Rewrite- -Per Chr- --Block-- --Seeks--
Machine        Size K/sec %CP K/sec %CP K/sec %CP K/sec %CP K/sec %CP  /sec %CP
c1-10-1-10-51    4G   111  98 76118  89 35709  28   574  99 85026  22  1589  92
Latency             80619us     355ms     348ms   15835us   13792us   41985us
Version  1.97       ------Sequential Create------ --------Random Create--------
c1-10-1-10-51       -Create-- --Read--- -Delete-- -Create-- --Read--- -Delete--
              files  /sec %CP  /sec %CP  /sec %CP  /sec %CP  /sec %CP  /sec %CP
                 16  7813  80 +++++ +++  9626  62  7939  78 +++++ +++ 10896  71
Latency               413us    1794us    1959us     455us      63us     491us

The PySysBench results are here:

Running 8 benchmarks on 4 threads for 10 seconds each (NCPU=4)
Running benchmark: Warmup-Ignore ...    score: 197.0 average: 49.2
Running benchmark: Hash-SHA256 ...      score: 196.7 average: 49.2
Running benchmark: Hash-SHA512 ...      score: 94.1 average: 23.5
Running benchmark: Zlib-Compress ...    score: 13.8 average: 3.4
Running benchmark: Zlib-DeCompress ...  score: 120.7 average: 30.2
Running benchmark: Socket-OneSock ...   score: 71.9 average: 18.0
Running benchmark: Socket-Syscalls ...  score: 90.8 average: 22.7
Running benchmark: Socket-OnePipe ...   score: 77.9 average: 19.5
Total score: 665.8

You can compare these results with those of other systems here.

In conclusion - do you need this?

Running virtual private servers "in the cloud" has the benefit of hardware isolation which is important on at least two levels: firstly, the virtual machines can be moved around in case of base hardware failures, so that the client experiences very low downtimes. It is not so clear that large-scale physical hosting operations can be as agile. Secondly, if the storage is attached directly to provided physical systems (which is NOT the case with the test servers, but might be the case in other offers by Online.net), it looks like it's non-redundant and requires some special handling with regards to backing it up. OTOH, this might be a benefit if you specifically do not want to share storage with other users (for whatever reasons - security is probably not among them since the hardware is still under remote control). But I'm excited a service such as this exists.


Intel Atom vs Xeon performance

I recently got myself a small laptop, an Asus Transformer Book T100TA, and I'm surprisingly happy with it. The ...

I recently got myself a small laptop, an Asus Transformer Book T100TA, and I'm surprisingly happy with it. The current generation of these devices is what netbooks were supposed to be: very portable, with a very long battery life, but still powerful enough to be usable. In fact, I'm writing this blog post on it. Finally, both the hardware and the software (the device is running Windows 8.1 and I'd be crazy...

Read More
On (artificial) intelligence

Consider this armchair philosophising on the possibility of artificial intelligences. My stance on the existence of our biological intelligence is ...

Consider this armchair philosophising on the possibility of artificial intelligences. My stance on the existence of our biological intelligence is that it's a matter of accident, in the sense that all evolved traits are basically accidents: random mutations which get selected for over a large time span. It was very probably honed during that time, as individuals which had "more of it" had an advantage over the others. However, something singular must have happened some time ago, some...

Read More
Story: The Sin

It looks like "the writing bug" comes with the territory of being a nerd with an abundance of ideas and ...

It looks like "the writing bug" comes with the territory of being a nerd with an abundance of ideas and a complete lack of time to do them in. I have been writing mostly technical articles for almost 10 years now. In this time I've written literally hundreds of articles, at a rate of approximately one every week or so, most of them for a real, printed IT magazine in Croatia named Mreža. That's all in...

Read More
Why I listen to Nick Cave

Just listen to this as the sountrack to this post. I hope it will not be a long one. A ...

Just listen to this as the sountrack to this post. I hope it will not be a long one. A few days ago I was surprised, and a bit amused when some of my friends told me they think I'm a pretty cheerful and relaxed person. Which got me thinking of the ways in which they were right and where they were not. Soon after that event I've watched Nick Cave's...

Read More
We should replace asm.js with Rust

I can't be the only one to think there is something horrible about today's JavaScript. It is like ...

I can't be the only one to think there is something horrible about today's JavaScript. It is like a Lovecraftian programming language from outer space - it is here to stay, and if you follow certain forums it looks like it's spread absolutely everywhere and absorbed every other language, but at the same time it just seems so damned indescribably icky. It was a toy language that went nuclear. With just...

Read More
The Needle Search Server - alpha

I've written before about my Needle light-weight full-text search server. To recap: it's a full-text search server written ...

I've written before about my Needle light-weight full-text search server. To recap: it's a full-text search server written in C++ with a FastCGI interface, using Google's LevelDB for storage, and with a pure REST API. It's available at BitBucket if you want to test it yourself! As these things go, it took me a lot more effort to find the time to work on Needle, but I'm managing it here and there....

Read More
What Django caching can do

Nothing special here, just wanted to make a note about how simply turning on Django caching can bring a site ...

Nothing special here, just wanted to make a note about how simply turning on Django caching can bring a site's performance up from this: Server Software: nginx/1.2.1 Server Hostname: vo.ivoras.net Server Port: 80 Document Path: /api/location/1 Document Length:...

Read More
My Font Awesome to bitmap converter

A few months ago I created a small script which extracts Font Awesome glyphs and creates transparent PNG images, with ...

A few months ago I created a small script which extracts Font Awesome glyphs and creates transparent PNG images, with some fancy additional options such as shadow / emboss. My friend Saša then prettied it up a bit and we basically forgot about it - I didn't even describe it on this blog :) I've just needed an image from this project so I'd thought I'd finally write...

Read More
Amazon's E-book Price-slashing Campaign and on Replacing One Evil with Another

Earlier today I have received a letter from Amazon, which I'm going to copy-paste below for completness and archival ...

Earlier today I have received a letter from Amazon, which I'm going to copy-paste below for completness and archival. It basically tries to invoke sympathy for Amazon in its "debate" with a publisher called Hachette. I don't follow the publishing world that closely and I admit to never hearing about Hachette until earlier today, but I am very aware of the problem at hand, which is pricing and distribution of digital goods...

Read More
How do you explain an OS kernel to a layperson? + an old text about The Matrix as an Operating System

Earlier this year I was a guest at a gathering of people who were mostly involved with social sciences and ...

Earlier this year I was a guest at a gathering of people who were mostly involved with social sciences and politics and a topic soon arised in which I had to explain some of the things I work with. In this group of 10-ish people there were one or two who had even a vague idea what a kernel is (they were engineering students, actually), and were suitably impressed, but the rest of the group simply offered...

Read More
On constants in algorithmic complexity, and comparing apples to oranges

Can an O(n!) algorithm be faster than an O(1) algorithm? Yes, of course it can. So I came ...

Can an O(n!) algorithm be faster than an O(1) algorithm? Yes, of course it can. So I came across an interestring and almost trivial programming puzzle: given an arbitrary word and a dictionary of words, find all anagrams of the word present in the dictionary. At first I didn't care to think about the best solution for the problem and I just wrote a trivial, brute force solution as a proof of concept: from itertools...

Read More
How about a Digital Price Tag?

How about adding intelligent information to our price tags? BitCoin and DogeCoin (and others) already have payment URLs, but we ...

How about adding intelligent information to our price tags? BitCoin and DogeCoin (and others) already have payment URLs, but we can do better than that! The easiest way to offer something for purchase using cryptocurrency is simply to link and/or describe what you want to the buyers on your web shop. You don't really need middle-men and merchants to do so: it's easy to create your own "BUY" link yourself. Option #1: payment URL's Most people know...

Read More
Can UBI be tested with Digital Currency?

This article on the discrepancy between consumers' lifestyle and deteriorating workers' rights has sparked a prodigiously long discussion on the ...

This article on the discrepancy between consumers' lifestyle and deteriorating workers' rights has sparked a prodigiously long discussion on the Futurology subreddit (where the usual median length of the discussion is somewhere around 10 comments). Such topics now regularly venture into discussing the merits of Universal basic income (UBI), which as an idea was practically non-existent in the mindset of two or so years ago. An offhand Read More


The Pirate party of Croatia - what went wrong

The context of this article is that it's a sort of a post-mortem written from my own perspective of ...

The context of this article is that it's a sort of a post-mortem written from my own perspective of what went wrong in the Pirate Party of Croatia, now that I've left it. I've been one of the founding members and after more than two years' work I must admit that the number of accumulated problems has surpassed the level at which we can be productive, and that I cannot aid in solving them. Simply put, people in general (at...

Read More
The Needle Search Server - pre-alpha

I've talked about my new project, the Needle Search Server before - it is supposed to be a light-weight full ...

I've talked about my new project, the Needle Search Server before - it is supposed to be a light-weight full text search server written in C++ and using LevelDB for storage. I've arrived at a point where the code actually does something useful and I want to talk about it some more. Of course, you will need to fetch and compile the code yourself and once you get over that hurdle, you...

Read More
A brief history of computing in error messages

Technologies and systems come and go but error messages stay. Of course, this is because errors are (or were, before ...

Technologies and systems come and go but error messages stay. Of course, this is because errors are (or were, before exceptions) signified by integer error codes and libraries maintain, among other things, dictionaries of human-readable messages to go with such codes. Most system programmers, or any other programmers which still dwell on C instead of using something less close to the metal, can remember a subset of those codes simply because they've seen them often enough. I first...

Read More
Dear Google, make me a Phone

Dear Google, please make me a Phone which lasts 24h. Heck, even 18h would be a marked improvement since no ...

Dear Google, please make me a Phone which lasts 24h. Heck, even 18h would be a marked improvement since no phone that I've used lasts me even 12h. You see, I actually use my devices, they are not sitting in my pocket among the lint. Also, I don't use them for playing games or mining Bitcoin, but for reading and communicating. Please, dear phone industry, get your collective heads out of your asses and make a phone which: Has a CPU...

Read More
Starting a new project - Needle

I have recently built an "Open Government" service which takes all the documents from the official Croatian government gazette which ...

I have recently built an "Open Government" service which takes all the documents from the official Croatian government gazette which, among other things, publishes laws, changes to laws, decisions of the Constitutional court, etc. and indexes them, offering two new services: better full-text searchability and data "push" approach, allowing users to "subscribe" to arbitrary search queries and get notified when there are new documents published which are matched by those queries. Though these documents are pro-forma published on-line at...

Read More
Switching my blog to Pelican

After using my own blog platform since 2008, I figured it's time to give up on maintaining yet another ...

After using my own blog platform since 2008, I figured it's time to give up on maintaining yet another piece of software just form my own use and switched this blog to Pelican. It's the popular static html site generator (the old blog system was also static) and I hope it will serve me well for years to come. I've imported old articles and comments, and new comments can be added by using Disqus. This makes my blog...

Read More