Belittling?
Maybe, but it’s a practical observation. You’re comparing the very latest and greatest ARM against the type of x86 very few people would consider for virtualization platforms. It should make sense that if you’re going to set up a multi-tenant box, the contents of that box must support multiple tenants and <today> ARM is still lacking.
Also, as I’ve described paravirtualization (ie CPU hardware assist) cannot run on ARM today, and I doubt there is any effort to port x86 virtualization extensions to ARM. Superficially, it makes little sense to me until I see something new. And, this therefor means that KVM virtualization on ARM almost certainly has to be running in “full virtualization QEMU” mode which is much slower than paravirtualization.
The link you gave to ARM virtualization extensions only describes the ability to map large amounts of memory. Um. I would think that this had already been implemented in basic ARM architecture from the very beginning, and is already implemented in ARM’s current virtual core architecture (I’d always assumed every virtual core has access to its own virtual address space like any 32-bit or 64-bit x86 CPU). If so, then <maybe> the “big” feature is some kind of standardization and label the use of large address spaces, but not likely some earth-shattering new feature. But, I’m partially speculating now.
Like a lot of things in life and computing, just because something may exist doesn’t necessarily mean it’s fully ready for prime time.
So, if someone asked me <today> whether ARM is a suitable platform for virtualization, I’d say if your needs are small and you are willing to pay the premium for the very latest ARM, then go for it. For some with for instance an ARM notebook, maybe it’s nice to be able to run <any> kind of virtualization, even if it might run lousy.
But, if your needs are either greater or you want some reserve for unexpectedly heavier use, I’d say that ARM isn’t quite there yet.
As an alternative, I’d recommend someone running ARM to see if Linux Containers is implemented, <that> would definitely be a first class option for anyone looking to “virtualize.” Linux containers do not have special CPU requirements, easily have no restriction on file systems and runs wickedly fast (absolutely the same as the Host). The only real restriction is that both Host and Guests must be Linux.
The current leading implementations of Linux Containers are Docker and LXC, with plenty of interest in systemd-nspawn. All are great options. And, there should not be any problem loading up your ARM machine with as many Guests as you are willing to deploy.
IMO,
TSU