Страницы

суббота, 24 августа 2013 г.

Особенности Ubuntu Linux на системе с процессором AMD Fusion A10-6700. My new Linux desktop

Заметки, по мере улучшения домашней конфигурации, которая вылилась в сборке компьютера на платформе AMD Fusion и установке Ubuntu Linux 13.10.

Собрать систему планировалось в корпусе mini-itx Silverstone FT03-Mini. Это было задающим требованием (для красоты), поэтому платы рассматривались mini-itx.
Таким же требованием было использование процессора AMD A10-6700 Richland.
Требованием также было наличие vga-выхода, dvi-d и hdmi, чтобы подключить существующее оборудование.


Первоначальный состав системного блока получился следующий:
1. Процессор AMD A10-6700 OEM, разъем FM2 (индекс cpubenchmark.net - 4983)
2. Материнская плата Asrock F2A85X-ITX, разъем FM2
3. 8 Гб памяти AMD 1866, одной планкой (одноканальный режим)
4. Охладитель (cooler) Noctua L9a (временно обычный Titan)
5. Старые накопители Sata 2.5" Seagate и Intel.
6. Корпус mini-itx SilverStone FT03-mini
7. Блок питания SFX (125 мм x 100 мм x 64 мм) Inwin IP-S300BN1-0.

Старая система которая подлежала осовремениванию - Intel Celeron 420/Intel D945GCPE (индекс cpubenchmark.net - 457). Простейшая связка, которая выручила, из-за недоступности компьютера Intel i3-3225, на текущей площадке.

Расчётное увеличение индекса производительности - 4983/457 = 10.9 раз.
10 раз, когда ещё такое событие случиться.

Итак, процессор AMD A10-6700 имеет на борту интегрированное графическое ядро HD 8670D, которое грех было бы не использовать в системе и обойтись без отдельной видеокарты (отложить на будущее, при необходимости). Также на будущее откладывается приобретение второй планки памяти, слотового привода Blu-ray и пр. Всё это делается для снижения первоначальной стоимости. Однако получившаяся сборка должна работать сразу, а не лежать на полочке.

Разгон системы не планируется, поэтому выбран процессор AMD A10-6700 Richland с TDP процессора 65 ватт.

Запомню тут характеристики процессора AMD A10-6700, чтобы потом не искать:
- Маркетинговое семейство: Fusion
- Маркетинговое название: A10 6700 Richland
- Серия центрального процессора: 6000
- Модель:  A10-6700 APU with Radeon™ HD 8670D
- Код детали: AD6700OKA44HL, AD6700OKHLBOX
- CPUID:  610F31h
- Маркетинговое название графической части: HD 8670D
- Кодовое название модуля (одного из двух) центрального процессора: piledriver (сваезабивочная машина, ха-ха)
- Поддержка инструкций: MMX, SSE, SSE2, SSE3, SSSE3, SSE4a, SSE4.1, SSE4.2, AMD64, AMD-V, AES, AVX, AVX1.1, XOP, FMA3, FMA4, CVT16, F16C, BMI1 (Bit Manipulation instructions), ABM (Advanced Bit Manipulation), TBM (Trailing Bit Manipulation instructions), Turbo Core 3.0, NX bit
- Количество видимых системой логических процессоров: 4
- Частота базовая: 3.7 ГГц
- Кэш-память инструкций на ядро: 64 КиБ
- Кэш-память данных на ядро: 64 КиБ
- Кэш-память L2: 2x2 МиБ
- Число сопроцессоров плавающей точки (FPU): 2
- Разрядность сопроцессоров плавающей точки (FPU): 128
- Кодовое имя архитектуры графического процессора: Northern Islands
- Архитектура: TerraScale 3 (VLIW4)
- Кодовое инженерное имя: ARUBA (Richland)
- 2D Linux driver: radeon
- 3D Linux driver: r600g
- 2D/3D Linux closed source driver: catalyst
- Код 3d-оборудования: R9xx
- Ядро дисплейное: DCE6.1
- Число вычислительных ядер графического процессора (Radeon cores): 384
- Частота графического процессора: 844МГц
- Частота памяти DDR3: 1866 МГц
- Техпроцесс: 32 нм
- Число транзисторов: ~1,3Гшт
- AMD Turbo Core 3.0
- Частота при использование Turbo: 4.2 ГГц
- AMD Unified Video Decoder: UVD 3.2 (аппаратный видеодекодер H.264,VC-1 (WMV9),MPEG-2, версии 3.2)
- Linux Video Decode (VDPAU/OpenMax/VAAPI) on UVD: да
- AMD Video codec engine: VCE 1.0 (аппаратный кодировщик H.264)
- Linux Video Encode (Video encode (OpenMax) on VCE): ? (требуется доработка)
- AMD Eyefinity- до 4 мониторов (3 выхода на плате Asrock)
- AMD Radeon™ Dual Graphics (добавочная мощность с дискретной картой 6000 серии)
- AMD Radeon™ HD Graphics
- AMD HD Media Accelerator
- AMD Accelerated Video Converter
- AMD Perfect Picture HD ?
- AMD Quick Stream Technology ?
- AMD Steady Video Technology 2.0 ?
- AMD HD3D Technology ?
- Powernow (Cool`n`Quiet)
- AMD PowerPlay в закрытом драйвере Catalyst,
- Максимальная температура:  71.3 °C
- TDP 65 ватт
- Разъём (socket) FM2
- Фирменный цвет AMD: красный, надо бы добавить к черному корпусу немного красного



Первоначальная сложность данной сборки в том, что материнская плата использует специфическую микросхему (контроллер) сетевого интерфейса Realtek 8111E, для которого, вроде бы, пока ещё нет драйвера (примечание: уже есть) в выпущенных версиях Ubuntu.
Тестирование новых материнских плат на поддержку Linux в основной массе обзоров не проводиться, поэтому однозначно сказать как поведёт себя эта конфигурация, я не могу.
Смущает бренд Asrock.

Не могу отнести данную плату к топовой конфигурации, т.к. наличие 3-х разнообразных видеовыходов, подразумевает что использоваться будут разные мониторы (разного поколения). Топовая же версия данной платы выглядела бы так - 4 одинаковых современных интерфейса (APU поддерживает 4 по технологии Eyefinity), например hdmi или Displayport, т.е. подразумевалось, что будут использованы одинаковые мониторы, для полного использования функции AMD Eyefinity. Эту же версию платы можно было назвать Transit, для бюджетного перехода со старой системы, с сохранением существующего оборудования. Плата не раскрывает полностью возможности процессора и чипсета (невозможно CrossFire X), в данном форм-факторе mini-itx. Но это и не требуется.



Компания Realtek предлагает исходные коды драйвера для своих чипсетов, но это приводит к ситуации, при каждом обновлении ядра, надо будет выполнять перекомпиляцию исходных кодов драйвера. Очень не удобно, но по крайней мере путь понятен. Также есть способ автоматической пересборки исходных кодов драйвера, при обновлении ядра.


Поэтому конфигурация попадает в разряд проблемных. Т.е. всё вроде поддерживается, а вот сетевой контроллер подкачал (примечание: не подкачал).
Это было предварительное мнение, основанное на проверке компонентов материнской платы (сетевого и звукового контроллеров) поиском в сети Интернет.

Небыстрый просмотр показал ещё пару mini-itx плат под разъем FM2, но они все, так или иначе содержат сетевой контроллер Realtek GbE, либо имеют недостаточное число видеовыходов.
Многие производители не указывают версию в спецификации, что резко затрудняет подбор конфигурации.

Однако, т.к. целью всё таки является сборка системы AMD Fusion для Linux, то преодоление возможных проблем с контроллером будет решаться с помощью USB-Ethernet адаптера фирмы Apple, который уже неоднократно выручал при проблемах со встроенным сетевым интерфейсом, либо в дальнейшем отдельной сетевой платой, в единственный разъем PCI-e.

Т.к. я попробую загрузить свою существующую систему, которая кстати говоря работает на многих конфигурациях, я заранее установлю последнюю сборку ядра Linux в мою текущую конфигурацию.

Делается это так, в Ubuntu, в ручном режиме.
По ссылке находятся последние ежедневные сборки ядра Linux
http://kernel.ubuntu.com/~kernel-ppa/mainline/daily/current/

Надо скачать 3 файла, для своей архитектуры (у меня amd64 - 64 битная Linux, в том числе и на Intel процессорах), в папку.
linux-headers...., linux-headers....all..., linux-image....

Я использовал терминал и команду wget, которой передал ссылки на файлы (из браузера).

После установка: sudo dpkg -i *.deb
Выполняяется в папке где лежат скачанные пакеты.
Потом перезагрузка.


"Плюсы" полученной конфигурации на процессоре AMD A10-6700 (магия букв APU):
1. Трудности, - а мы их любим
2. Неполная совместимость материнской платы с Linux - это хорошо, каждый дистрибутив будет иметь проблемы с сетью, с каждым надо будет отдельно разбираться
3. Отсутствие понятных явных преимуществ процессора AMD в Linux. Где существенное ускорение операций? Какие программы используют?
4. Завышенная цена, выше чем i3-3225.
5. Бедный выбор материнских плат форм-фактора mini-itx с чипсетем A85X.
6. Неясности со встроенной графикой. Будет вообще работать? Увижу рабочий стол? Будет нормальное ускорение Gnome Shell?
7. Нестандартная высота задней планки (backplate) на материнской плате, из-за чипа, что недаёт возможность крепить некоторые охладители (Noctua L9a). Правда у этого охладителя есть спец. крепление и именно для таких mini-itx плат, но только надо проверять при покупке, либо бесплатно получить у производителя, прислав ему подтверждение. Ну а суть простая, там просто шайбочки, увеличивающие высоту планки.
8. Куча непонятного мусорного ПО на прилагающемся диске, под Windows.



А ведь была и хорошая альтернатива на платформе Intel Ivy bridge:
Intel DQ77KB, две сетевые intel платы, mini-PCIe, So-Dimm и пр.

И всё это работает в Linux без особых проблем, с аппаратным ускорением и пр.


Продолжение последуют тут, после сборки. Интрига сохраняется до получения первых впечатлений. Посмотрю, сможет ли эта сборка превратиться в нормальный Linux-компьютер.

В дальнейшем планах установка Ubuntu 13.10, проверка дисплейного сервера Mir на открытых драйверах AMD/ATI. Проверка мультимониторной конфигурации, проверка стабильности работы в mini-ITX корпусе.

Первый запуск

Итак, первые впечатления после загрузки существующей версии Ubuntu Gnome 13.04, с ядром Linux 3.11 на материнской плате Asrock FM2A85X-ITX с процессором AMD A10-6700 Richland. Открытый стенд, т.к. корпус ещё не приехал и вместо охладителя - какая-то первая попавшаяся под  руку железка.
Комплектация материнской платы бюджетная (4 черных кабеля Sata, задняя плашка, диск с драйверами, книжка по установке), но главное - стильная наклейка Asrock. Это большой плюс, т.к. наклейки к OEM процессору не было, а это минус. Лучше бы к плате добавили наклейку (в черно-золотистых тонах), с указанием разъёмов на плате, как это делает Intel со своим платами. Неплохо было бы заднюю плашку с отверстиями под разъёмы также прокрасить и оформить получше.

Центральный вычислительный модуль (процессор) определился в BIOS(UEFI) нормально. Версия BIOS v.1.4.

Итак, страхи о том, что сетевой контроллер не поддерживается, прошли. Сеть работает. Драйвер используется встроенный в ядро r8169. Насколько стабильно будет, посмотрим.
Также работает выход и вход звука, но не все ещё выходы я смог проверить. Смущает уровень шума на микрофонном входе.

Аппаратное ускорение похоже не запустилось и X использует программный рендеринг (Gallium 0.4 on llvmpipe), т.е. fallback-режим. Правда он тоже достаточно быстрый и интерфейс отзывчивый, однако здесь нет преимуществ APU. Что заметно проигрывает в битве с Intel i3-3225, который работает и ускоряет сразу.

Загрузка с LiveCD Ubuntu daily 13.10 показала, что "там что-то есть" - Gallium 0.4 on AMD Aruba.
Aruba - это кодовое имя для графической части APU. А вот что это даёт, это надо собирать информацию. Да и путаница с этими именами пока присутствует. Мир маркетинга - мир лжи.

Неплохо, неплохо. Похоже это добротная материнская плата для Linux компьютера. В новой версии Ubuntu так вообще, всё будет работать "из коробки" - я надеюсь.

Итак, перспективы хорошие. Они правда, уже лет 10 "хорошие", всё ожидаем, когда же нормально заработает драйвер ATI/AMD на полную мощность.
Причём слабая поддержка открытого драйвера - это на совести руководства AMD. Которое, похоже не видит явного преимущества платформы Intel в Linux, с её открытым драйвером.
APU становиться магистральным направлением и слабая поддержка APU в Linux, это серьезный минус в конкурентной борьбе. Исходя из того, что AMD планирует распространять свои APU в том числе и на планшеты, а на планшетах будет работать Ubuntu Touch и пр. Ubuntu, а графический сервер Mir будет максимально использовать открытые драйверы, то наличие качественного открытого драйвера становиться определяющим, а будет ли вообще AMD в Linux. Сейчас, когда выйгрыш в производительности достигнут более быстрым центральным вычислительным модулем (процессором) ещё можно проводить старую политику выпуска закрытого драйвера для Linux и вяло поддерживать открытый драйвер. Но замедление роста производительности, проистекающее из технологических и архитектурных ограничений, происходящее в отрасли, выведет программную поддержку (драйверы, API и пр.) на первое место и тут Intel опять впереди.

Простыми словами, зачем мне процессор AMD, если даже не работает ускорение двумерной графики в Linux?




Из непосредственно замеченного улучшения - увеличение скорости отображения страниц в броузере Firefox, но что-то подсказывает, что это просто заслуга более быстрого процессора.

Включение поддержки управления питанием драйвера Radeon

Сделал по инструкции [см . Ресурсы п. 2].
Прописывание загрузочной опции ядра radeon.dpm=1 в файл /etc/default/grub и обновление загрузчика update-grub
Загрузка какого-то firmware, у меня получилось TAHITI_smc.bin (возможно это ошибка идентификации, потому что 13.10 использует Aruba) в папку /lib/firmware/radeon . В принципе, все эти файлы можно загрузить, чтобы ядро выбрало нужный.
Перезагрузка.
После этого в выводе dmesg видны power states (режимы питания)
и строка
[drm] radeon: dpm initialized

Включение температурного сенсора графического ядра

Прописывание загрузочной опции ядра radeon.hw_i2c=1
Использование sensors-detect

Непомогло.

Наблюдение за температурными датчика, тахометрами и напряжениями

Используется пакет lm-sensors
Установленный чип Nuvoton NCT5573D определяется как Nuvoton NCT6776F и что-то показывает, драйвер w83627ehf.


AMD UVD 3.2

Важный компонент, поддерживающий аппаратное декодирование видеоформатов MPEG4,
По наследству, поддерживает AMD UVD 1.0, AMD UVD 2.0, AMD UVD 3.0.
Позволяет декодировать H.264, VC-1.

Добавилось ускорение декодирования MPEG-2, MPEG-4 ASF (DivX, Xvid) и MVC (Blue-ray 3D).

Итого, процессор Richland имеет возможности аппаратного декодирования (ускорения) видеопотоков MPEG4 Part 10, MPEG4 part 2, MPEG 2, VC-1 (WMV9) и Linux поддерживает эту возможность, по состоянию на Январь 2015 года.


AMD VCE 1.0 или AMD H.264 encoder

Важный компонент, поддерживающий аппаратное кодирование в h.264. Использовать удобно для преобразования (транскодирования) MP4-файлов, для целевых устройств Android, Apple и т.п.
Поддержка включена в открытом 3d-драйвере, после открытия компанией AMD исходных кодов (Radeon VCE Code).
Требуется тестирование работоспособности.


Впечатления о корпусе Silverstone FT03-Mini

Шикарный корпус. В собранном виде выглядит отлично. Качественные алюминиевые панели, провода упрятаны.

Из особенностей, долгая сборка, "открути то, открути это".
Материнская плата Asrock в темно-золотистых тонах очень хорошо подходит к данному корпусу. В Комплекте к материнской плате - черные кабели SATA, двух видов, 4 штуки, так что "внутри темно".
Блок питания я поставил серого цвета, но это не проблема, т.к. его не видно, только когда снимаешь панели.

Корпусной вентилятор шумноват. Гул "басовитого" движка, однако не раздражающий, похож на автомобильный. Исправиться в следующей итерации возни с корпусом, когда поставлю регулятор, либо менять. Поток воздуха серьезный.
При нагрузке процессора, температура не поднялась выше 54-х градусов, в простое 33-34 градуса. Температура 2.5" диска - 28-30 градусов.
Обычный просмотр Интернет с помощью Firefox - 36-38 градусов.

Также шумят вентиляторы на процессорном охладителе и на блоке питания (тихо). Это всё требует окончательной доводки и полировки.

3.5 дюймовый винчестер достаточно просто снимается и устанавливается в крепёж. Крепеж на 2 винтах и легко доступен.
2.5 дюймовый винчестер помещенный в нижнюю корзину, обдувается проходящим потоком воздуха - очень хорошо и также легко доступен.
Системный ssd диск запрятан глубже, его просто так не достать, без разборки, надо откручивать кучу винтиков, а именно 2+4+4+4 = 14 штук. :-). И соответственно закручивать.

Корпус SilverStone FT03-mini - лучший из корпусов, с которыми я возился. Я не сборщик, я любитель.

Конструкцию можно даже улучшить, но это дело производителя.
Например, сделать подвод кабелей снизу, перевернуть существующую конструкцию. Светодиоды синего цвета заменить на белые, сделать их прямоугольными.


Фотографии не привожу т.к. бардак на столе.


Замеченные неудобства

- Какие-то трудности загрузки диска Ubuntu Live посредством UEFI.
- Шумный корпусный основной вентилятор Silverstone Air Penetrator AP-141, 140x140 не поддерживает регулировку скорости (нет PWM), работает на 1500 об./мин., 30.1 dB(A), а материнская плата имеет 4-контактный разъём для корпусного вентилятора - При уменьшении скорости основного вентилятора, начинает шуметь вентилятор блока питания (80х80х15) при обычной нагрузке (Firefox)
- Используемый блок питания не имеет проводов (6 pin) для дополнительного питания видеокарты
- 10 сентября 2013 года. Заметил глюк связанный с контроллером сети. Если постоянно включить multicast ip-tv видео (телевизор), то после нескольких часов (более 5-6) происходит сброс системы и перезагрузка. Выяснилось это потому, что под обычными воспроизведением видео в цикле сброса не происходит. Это конечно минус сетевого контроллера. Осталось проверить нагрузку обычным трафиком.
- 12 сентября 2013 года. Компьютер работал 2 дня на загрузку и последовательное обновление Ubuntu версии 10.10 на 13.10 на одном из дисков, сбоя не было.

Выводы

APU, как концепция, не работает "из коробки" в системе Linux Ubuntu 13.04, перехожу на следующую.

Что же, попробую с течением времени воспользоваться всеми заложенными технологиями в процессор AMD APU A10-6700. Как первый этап - это использование VDPAU (да-да, ошибки нет) в VLC 2.2.x., GIMP использует ускорение OpenCL в некоторых фильтрах и пр.

Если же ничего не выйдет в обозримое время, то всегда есть возможность задействовать APU в Windows 8, а там множество программ показывающих преимущество APU [Ресурсы п.5].
Если не нужна ОС Windows, то связку (AMD Richland + mini-itx Asrock FM2A85X-ITX) можно преобразовать в сетевое хранилище NAS на платформе  AMD, просто докупив корпус с корзинами под винчестеры, а 7 портов sata III, позволят сделать очень хороший домашний NAS, хотя мне сейчас привлекателен новый HP Proliant Microserver Gen8.


Менять блок питания, либо добиваться тишины от его вентилятора
Уменьшать скорость корпусного вентилятора, либо менять.

Корпус интересный, но недоработки производителя в части питания и охлаждения. Питание - сложно подобрать тихий компактный блок питания, а охлаждение - встроенный вентилятор, при всех его достоинствах, очень шумный.

Борьба красных с синими продолжается.

Ресурсы

1. https://unixblogger.wordpress.com/2011/10/18/the-pain-of-an-realtek-rtl8111rtl8168-ethernet-card/

2. How To Setup Radeon DPM On Ubuntu Linux. http://www.phoronix.com/scan.php?page=news_item&px=MTQyNDE

3. Wikipedia. Сравнение графических процессоров AMD. http://ru.wikipedia.org/wiki/%D0%A1%D1%80%D0%B0%D0%B2%D0%BD%D0%B5%D0%BD%D0%B8%D0%B5_%D0%B3%D1%80%D0%B0%D1%84%D0%B8%D1%87%D0%B5%D1%81%D0%BA%D0%B8%D1%85_%D0%BF%D1%80%D0%BE%D1%86%D0%B5%D1%81%D1%81%D0%BE%D1%80%D0%BE%D0%B2_AMD

4. Wikipedia. http://en.wikipedia.org/wiki/Radeon_HD_6000_Series

5. AMD Developer central. Application showcase. http://developer.amd.com/community/application-showcase/

6.AMD Developer central. Open-source. http://developer.amd.com/tools-and-sdks/open-source/

7. Wikipedia. http://en.wikipedia.org/wiki/List_of_AMD_Accelerated_Processing_Unit_microprocessors

8. Wikipedia. Piledriver architecture. http://en.wikipedia.org/wiki/Piledriver_%28microarchitecture%29

9. Тестирование материнской платы Asrock FM2A85X-ITX. подробные фотографии микросхем. http://www.easycom.com.ua/mboard/asrock_fm2a85x-itx/?lang=ru

10. Overclockers.ru. Обзор и тестирование материнской платы Asrock FM2A85X-ITX. http://www.overclockers.ru/lab/54176_2/Obzor_i_testirovanie_materinskoj_platy_ASRock_FM2A85X-ITX.html

11.  AMD Technologies. http://www.amd.com/us/products/technologies/Pages/technologies.aspx

12. AMD A10-6700 info. http://www.cpu-world.com/CPUs/Bulldozer/AMD-A10-Series%20A10-6700%20-%20AD6700OKA44HL.html

13. Графический стек в Linux.  http://habrahabr.ru/post/148954/

14. Radeon DPM power states. http://www.botchco.com/agd5f/?p=57

15.  Тест Noctua L9a. http://www.overclockers.ru/lab/54761_4/Obzor_i_testirovanie_malogabaritnyh_kulerov_Ice_Hammer_IH-1500A_i_Noctua_NH-L9a.html

16. AMD UVD3. http://www.amd.com/Documents/UVD3_whitepaper.pdf

17. UVD. https://ru.wikipedia.org/wiki/Unified_Video_Decoder


2 комментария:

Dmitriy комментирует...

Замечательная новость касающаяся поддержки VCE Engine 1.0 в Linux (аппаратный блок кодирования H.264) в APU процессорах Trinity & Richland
http://www.phoronix.com/scan.php?page=news_item&px=Radeon-VCE-Trinity-Richland

Dmitriy комментирует...

Очень интересно, сейчас индекс процессора 3074.
Так что, сравнивать сложно.