Бюджетная виртуализация с помощью архитектуры ARM

Архитектура ARM хорошо зарекомендовала себя на рынке мобильных и сетевых устройств, за счет компактности, низкого энергопотребления и низкой себестоимости. В 2007 году около 98 % из более чем миллиарда мобильных телефонов, продаваемых ежегодно, были оснащены по крайней мере одним процессором ARM

Также популярны следующие микро-компьютеры системы-на-чипе (SoC) на базе ARM:

  • Raspberry PI  
  • Arduino Due
  • MK802 (компьютер-флешка)
  • PandaBoard
  • CubieBoard
  • Odroid
  • Virt2Real

ARM и x86

Современные версии процессоров ARM становятся все более схожи с процессорами x86 по тактовые частоте, многоядерности, поддержке виртуализации. Но в отличие от архитектуры x86, которая использует полный набором команд (CISC),  благодаря сокращённому набору команд (RISC), процессоры ARM более дешевы и потребляют меньше энергии и выделяют меньше тепла. Эти факторы очень важны как для мобильных пользователей так и для центров обработки данных (датацентров) так как позволяют использовать альтернативные источники электроэнергии КПД которых значительно ниже чем традиционных источников энергии.  
 
Также в ARM-процессорах принята практика переноса вычислительной нагрузки из процессора в сопроцессоры благодаря чему, например, обработка и воспроизведение видео в высоком разрешении может выполняться без мощного процессора.
 
Однако компьютеры на архитектуре ARM имееют и свои недостатки:  
1. Нет возможности замены компонентов (например, для ремонта и апгрейда):  
- некоторые компоненты интегрированы с процессором
- отсутсвуют слоты, сокеты
2. В большинестве своем имеют место технические ограничения
- размер оперативной памяти ограничен четырьмя гигабайтами
- разрядность ограничена 32-битами
3. Малое присутствие на рынке серверов. В 2012 году продажи серверов на ARM составили менее 1 % рынка серверов.

Перспективы

Ожидается что архитектура ARM в скором будущем продолжит свое развитие как серверная платформа и достигнет новых высот благодаря выходу на рынок новых производителей ARM-процессоров. 

Ожидается что в конце 2014 года компания AMD начнет выпуск серверных ARM-процессоров на ядре Cortex-A57 под кодовым названием "Hierofalcon" со следующими характеристиками:

  • Разрядность: 64bit
  • Количество ядер: 4 или 8  
  • Техпроцесс: 28нм
  • PCI: 3.0
  • Ethernet: 10Gbps
  • TDP: 15-30 Вт.

Cortex-A57

Само по себе процессор Cortex-A57 заслуживает отдельного рассмотрения. Так как является реальным конкурентом процессоров x86.

  • Архитектура: ARMv8 с поддержкой ARMv7
  • Разрядность: 64bit с поддержкой 32bit
  • Количество ядер: 4 или 8  
  • Встроенный графический ускоритель "ARM Mali"
  • Аппаратная виртуализация

Приобретение

Так как ARM-компьютеры не так распространены как сотовые телефоны, в основном их можно заказать только через Интернет-магазин у производителя или у посредника на интернет-аукционе. Некоторые торговые сети предлагают ARM-компьютеры, но их ассортимент зачастую очень скуден.

ARM-компьютеры распространяются в виде системы-на-чипе (SoC) - это подразумевает то что их нельзя будет модернизировать, по этой причине о технических характеристиках нужно задуматься заблаговременно.

Софт и виртуализация

Наибольшее распространение в архитектуре ARM получили операционные семейства Unix а именно Apple iOS (BSD) и GNU/Linux (свободное unix-подобное ядро). Также существуют версии операционной системы Windows поддерживающие ARM: Windows CE, Windows RT, Windows Phone.

Согласно исследованию IDC операционные системы имеют следующие доли рынка смартфонов во втором квартале 2013 года: 

  • Android - 79.3%
  • iOS - 13.2%
  • Windows Phone - 3.7%
  • BlackBerry OS - 2.9%
  • Linux - 0.8%
  • Symbian - 0.2%

Гипервизоры XEN и QEMU портированы на ARM. Благодаря чему возможно создание узлов виртуализации для аппаратной эмуляции процессоров ARM и программной эмуляции процессоров x86.
 
Благодаря низкой стоимости, на основе ARM-устройств можно создавать бюджетные (Beowulf) кластеры. Это позволяет снизить порог входа к знаниям о кластерных и облачных вычислениях:

Вывод

Пока не получили развитие процессоры Cortex 57 и процессоры на его базе, Архитектура ARM еще не может тягаться с архитектурой x86 в секторе виртуализации, однако в скором будущем может все изменится. Несмотря на это, уже сегодня можно собрать бюджетный домашний кластер на базе ARM-компьютеров.