[Из песочницы] Udoo x86 для гиков или не только?

На днях в мои руки попала любопытная железка. Признаться я давно её ждал со времени анонса на кикстартере. И даже чуть-чуть отчаялся дождаться (т.к. мне слили причины, почему задерживался выпуск, та еще санта-барбара была). А заполучив её, будет преступлением не сделать хоть какой-нибудь обзор.

image


Что собой представляет Udoo x86?

Это мини-компьютер с 4х ядерным процессором на х86 архитектуре, имеет внушительный потенциал, который может выделить её среди сородичей. Есть 4 версии, различающиеся моделью процессора, размером оперативной памяти и наличием встроенного EMMC диска на 32GB.

→ Подробнее на сайте производителя.

Мне досталась версия Advanced с 4х ядерным процессором Intel Celeron N3160, EMMC на 32GB и 4GB DDR3L двухканальной оперативной памяти (что меня больше всего расстроило, хотелось-то все 8).

f21c35900c5c4b0984248b4fcd5ec26f.png

Из разъемов железка имеет:

  • разъем питания 12V.
  • стандартный SATA
  • Gigabit Ethernet
  • 3 x USB 3.0 type-A
  • 1x HDMI
  • 2x miniDP++
  • Microphone + Headphone combo
  • 2x UART ports
  • IR interface
  • Digital I/O Pins Up to 20 extended GPIOs
  • Arduino 101-Compatible:
  • Digital I/O Pins 14 (PWM)
  • Analog I/O Pins 6 (10 Bits of resolution)
  • и еще много чего, подробнее здесь.


В интернете уже есть видео обзор достоинств от производителя в сравнении с Raspberry Pi3, но хочется самому поиграться.

Итак, запускаем:

e0fb798d80d849fbb52cdd9a3865f047.png

Первым делом конечно же был нажат Esc при запуске и просмотрен BIOS.

Esc
05336e55555f4af4b778a04e58600558.png


По моему скромному мнению (с коим вы, конечно, можете быть не согласны в корне) количество всевозможных настроек BIOS в некоторой степени коррелирует с количеством действий, которые можно произвести с железкой. Исходя из перечисленного выше, я был готов увидеть возможность «включить/выключить» порты, но разделы Advanced меня немного шокировали обилием переключателей режимов работы и выбора объемов памяти. А наблюдательные читатели увидят курсор мыши. Да, на этом сине-белом экране она работает.
Далее была исследована возможность «с чего бы такого загрузиться?» и самое главное «как?».
Ответом на этот вопрос подсказали «Boot manager» и «Boot From File». Последний открывает удобное меню выбора необходимого файла с путешествием по каталогам.

BootFile
18ceae957f6141db945bb4351ebc2406.png
c8cc9384211b433d8776e79832301c74.png


Boot Manager видит встроенный жесткий на 32Гб, флешки и диски на SATA-шлейфе. Так же есть слот под microSD карту и mini PCI-E, с которых загрузится скорее всего тоже получится.
Доступна загрузка как в режиме UEFI так и Legacy.

UEFI&Legacy
484444238dfa48d9b860a7cab620aedd.png


А Возможные операционные системы варьируются в пределах от Win7 до Win10, любого Linux и Android x86. Проверим.

  • Валявшаяся рядом флешка на 8 гб с Ubuntu 14 версии тут же была воткнута в USB порт и загружена без установки за 60 секунд. Думаю может и быстрее если использовать не самую дешевую как я. Пробуем втыкаем Ethernet провод, запускаем огненного лиса и… интернет есть, видео работает вплоть до 1080р онлайн хотя и не идеально (имхо), и я не Линуксовод, поэтому прошу прощения не знаю как и чем еще по тестировать, но мне понравилось, работает из коробки.
  • Далее из ящика стола был извлечен 2.5 SATA диск, оставшийся у меня после замены сотрудникам их на SSD из-за начавшегося процесса осыпания. Пока ошибок не много, и он живой, но количество их увеличивается. Но тут производители чуть-чуть подвели, ибо разъем для питания этого диска от платки предполагает наличие вот такого переходника, 269dd1173f51471ab8e214461f302abd.jpg
    коего в обычных компьютерных магазинах я не нашел, но зато их полно на aliexpress. Можно конечно и самому сделать как здесь, и даже подцепить HDD 3.5.

    Цепляем диск, цепляем загрузочную флешку с win10×64 и за несколько кликов и несколько минут получаем установленную на 2.5 диск Windows 10. Автоматическая установка драйверов Win10 работает медленно, но работает, и пока я ставил драйвера на видеокарту, количество неопределенных потихоньку уменьшалось. обновления, … мдааа. Тут я понял что нескоро я смогу получить возможность полноценно работать. Причиной этого, как вы уже догадались, является вот этот процесс:

    Обновление
    0deb6243fba24df8ad2233d87459efa9.png

    Как и в убунте сходу заработала сетевая карта и видео с ютуба в 1080р открылось. И показывало на отлично, без подтормаживаний и фризов. Глаз шутерного геймера очень быстро выцеплял микрофризы при запуске видео 1080р в убунте, и так бесившие меня еще в мелких видео-проигрывателях на слабых процессорах с встроенными декодерами. Но здесь сколько я не пытался, но подобного поведения не увидел. Но что нам один монитор? С одним каждый может. И я заказал переходнички DisplayPort=>DVI, а по получении стянул со столов коллег их мониторы для теста на пол часа. Чтобы уж совсем хардкорно, было запущено 3 окна хрома с видео на ютубе в качестве 1080р. Результат:
    Chrome
    4c124c21b7a8443ca49b09ef68a1d554.png

    Вполне работает и даже так как надо, без замедления, но периодически, раз в 3–4 секунды микролаги на 5–10 кадров проскакивают на одном из экранов. С чем это связано не знаю. Пробую запустить скачанный 1080р мультик через Player Classic с набором кодеков:
    Classic
    a6d741ada14e4faaa7bf60b4c53d39ae.png

    Красиво, хорошо, но проблема та же. Изрядно перебрав варианты нашел решение: исчезают микролаги только если оставить два одинаковых приложения, а в третье окно запустить другое, например стандартный виндовый Media Player. В таком виде все три монитора показывают разное видео в 1080р без каких-либо тормозов и лагов вообще.

    Тестить качественно 4К возможности нет, по причине отсутствия доступа к мониторам и телевизорам такого разрешения. На этих же с ютуба в 4К ролики запускаются, но проигрываются медленно. А скачанное демо в 4К Player Classic показывал только на 10–15 fps. Виндовый же его не осилил вовсе. Просто рабочий стол же с разрешением в 4К думаю подключится без проблем.

  • Поигравшись с Win10 и вызвав немало зависти у сотрудников, проходящих мимо, я отдал мониторы и перезагрузил устройство… и пропустил момент выбора boot загрузчика. С HDD загрузилась Win7×64, которая работала 2 года на ноутбуке и не была потерта на другом разделе. А загрузилась по причине установки Win7 в legacy, а Win10 в UEFI режимах. Загрузчик же для Win10 записался на 32 гб встроенный диск. Это оставило загрузчик семерки на HDD и позволило Win7 беспрепятственно загрузится. Увидев приглашение войти в систему, я очень удивился живучести Win7, запустившейся на совершенно другом железе, и даже обрадовался, но рано. Мышь и клавиатуры не работали. Windows устройства на USB 3.0 без драйверов не желала воспринимать. Но чтобы попытаться скормить ей драйвера нужно зайти в систему. Что делать? А нужно зайти снова в биос и выбрать USB mose/keyboard = Enable.

    2fc35460f146465ba0f82919b44ac7bc.png

    После этих манипуляций система позволила ввести пароль и пустила внутрь. Активация слетела, это понятно, но тут меня поджидало другое разочарование: большинства драйверов для WIN7 нет.

    Полностью драйвера есть только для win10, все остальные версии окошек вполне могут запускаться, но вот пользоваться всеми плюшками просто так не получится (по крайней мере на данный момент и из коробки). На форуме есть темы где люди успешно подсовывают драйвера для USB 3.0, Ethernet’а и т.д. или можно самому попытаться нарыть подходящий и скормить.


Ещё меня очень интересовал процессор. 4 ядра х86 архитектуры в такой крошке с заявленной неплохой производительностью? Проверим, сравним. Для сравнения далеко ходить не нужно, моя рабочая лошадка PC башенного типа с процессором Intel Core i5 760 (2.8 Ghz по умолчанию), старенький pentium D 2.8 Ghz нашего инженера, и вполне свежий чистокровный китаец планшетка-нетбук 4Good с процессором Atom Z3735F.Т. к. на Core i5 собрана суровая рабочая станция в коробке размера Full Tower, энергопотреблением 95W на процессор и 450W на всю машину, то она по-умолчанию будет олицетворять комфортную работу всего что только нужно. Atom Z3735F главный конкурент в этом споре с потреблением 2.2W, а Pentium D покажет насколько далеко мы эволюционировали за 10 лет (95W). Для справки Celeron N3160 2.24 Ghz имеет около 6W энергопотребления. Чтобы более-менее равноценно сравнить я взял AIDA64 Extreme 520 (что было под рукой), и запустил тесты на всех машинках. Результаты занес в таблицу:

120c5b54614c43c0a8f46685949a7d75.png

Т.к. тесты разные, где-то мб/с, где-то ns, а где-то цифры в попугаях, то я привел результаты к процентному виду, взяв Core i5 за 100%.

4e114c5a1f3b4c47a94c6ebd9de89d44.png

Все тестировались на одной версии операционной системы Win7×64 (кроме планшетки 4Good на Win10).

Здесь из обще массы выбились: планшет с Atom Z3735F по параметру задержки памяти показал 311ns, уж не знаю почему, но он показал себя хуже даже чем старенький Pentium c DDR2 памятью, задержки на которой должны били быть закономерно больше, а Udoo x86 показал минимальные задержки в 71ns.

Еще интересным моментом оказался тест на AES шифрование, по которому «малыши» обогнали рабочий ящик. А всё потому что новые поколения процессоров имеют инструкцию AES, которая позволяет показывать большую производительность именно на этой операции.

Следующим этапом было решено тестировать EMMC, в ход пошла уже знакомая флешка с Ubintu 14. 20 минут и ОС готова к работе. Холодный старт с EMMC теперь уже занимает 27 секунд.

Возможно в своей заточенной ОС они и добились в своем видео загрузки в 17 секунд, но у меня под рукой был обычный дистрибутив для десктопа со всем сопутствующим.

Udoo x86 имеет Arduino-совместимые выводы. За это отвечает второй процессор Intel Quark SE core 32 MHz plus 32-bit ARC core 32 MHz или проще Intel Curie. Как я понял из даташита, в нём то как раз и спрятан акселерометр с гироскопом. На плате они маркированы в таком порядке:

ef94fbc275164f6a801fec3e5f644a00.png

ab26b273da4b4fb8a0adc1dc9979c4c6.png

В документации в таком:

b3e9bd5e17e940f381375a06c4ea06cd.png

Нагляднее всего показано здесь.

Подключается же он к основной системе через USB, это видно в BIOS в разделе управления USB портами. Это даёт возможность работать обоим процессорам асинхронно. Чтобы работать с Curie нам понадобится Arduino IDE желательно последней версии и модуль для ядра Curie. Но если рассказывать о тестах Arduino — это потянет на отдельную статью.

про IDE
Первое я попробовал поставить из репозитория убунты, но версия была далека от актуальной, и не было возможности добавить хоть какой-либо процессор кроме имеющихся. Тогда я пошел длинным путем: скачал архив для linux отсюда и установил его.
Внимание

Тем кто пойдёт этим путем, у меня скрипт установки ругался ошибками, кои пришлось править вручную путем замены в install.sh на . А после каждой перезагрузки эта программа всё равно отказывается запускаться, приходится переустанавливать. Возможно какая-то беда с правами. Кто знает как это побороть прошу оставить в комментариях.



Итоги: железка мне лично очень понравилась, крошка имеет внушительную вычислительную мощность, внушительную кучку всевозможных портов и разъемов плюс внушительные графические возможности, может потягаться с моим персональному компьютером на Core-i5, и хотя Udoo уступает ему, но если сравнить размер: с ладошку VS железный ящик на столе, и сравнить энергопотребление 6W против 95W, это не только простительно, но и вызывает у меня немало восхищения. Да та таких два десятка внутрь моего компа влезет! А если их кластер собрать? И у меня есть еще много идей куда её пристроить. Из минусов: требуется доп.питание 12V., требуется коробочка, и если подключать sata-диск то требуется переходник для питания или нужно делать его самому. На главный же вопрос ответ напрашивается сам собой: Udoox86 интересна для гиков, и довольно проста в освоении для большинства умеющих держать мышь и следовать инструкциям. В случае windows всё ставится и работает из коробки, в случае linux тоже работает из коробки, хотя и могут быть подводные камни (как я столкнулся при попытке подключить убунте 3 монитора).

© Geektimes