Общие впечатления. Операционная система. Производительность памяти (SD, eMMC, SATA) и сетевых интерфейсов.
Banana Pi BPI-M2U не пользуется большой популярностью среди DIY-сообщества, поэтому для этой платы нет известных образов Armbian и DietPi. Соответственно остается только использовать образы от производителя, которые обычно размещаются на Google Drive. Ссылки на скачивание образов также есть на форуме и в WIKI на gitbooks. Там же на gitbooks собрано много справочных сведений и руководств по Banana Pi M2U.
На сегодняшний день самый свежий официальный образ - это Ubuntu Mate 16.04.3 LTS от 4 января 2018 года с ядром 3.10.108-BPI-M2U-Kernel #1 SMP Sat Nov 11 19:20:49 CST 2017. Графика мне не нужна, но выбора нет, да и лишнее можно впоследствии удалить и почистить. А потестировать плату после покупки, наверно, даже целесообразнее с графикой. Его и накатил на SD-карту и затем перенес ОС на eMMC.
Пользователь pi, пароль bananapi. Пароль для root такой же - bananapi.
Сведения об ОС:
pi@bpi-iot-ros-ai:~$ lsb_release -a
LSB Version: core-9.20160110ubuntu0.2-armhf:core-9.20160110ubuntu0.2-noarch:security-9.20160110ubuntu0.2-armhf:security-9.20160110ubuntu0.2-noarch
Distributor ID: Ubuntu
Description: Ubuntu 16.04.3 LTS
Release: 16.04
Codename: xenial
Ядро:
Linux bpi-iot-ros-ai 3.10.108-BPI-M2U-Kernel #1 SMP Sat Nov 11 19:20:49 CST 2017 armv7l armv7l armv7l GNU/Linux
Сведения о процессоре:
pi@bpi-iot-ros-ai:~$ lscpu
Architecture: armv7l
Byte Order: Little Endian
CPU(s): 4
On-line CPU(s) list: 0-3
Thread(s) per core: 1
Core(s) per socket: 4
Socket(s): 1
Model name: ARMv7 Processor rev 5 (v7l)
CPU max MHz: 1200.0000
CPU min MHz: 480.0000
Hypervisor vendor: (null)
Virtualization type: full
Говернор процессора:
pi@bpi-iot-ros-ai:~$ cat /sys/devices/system/cpu/cpu0/cpufreq/scaling_governor
interactive
Частота ОЗУ:
pi@bpi-iot-ros-ai:~$ cat /sys/devices/1c62000.dramfreq/devfreq/dramfreq/target_freq
576000
Температура процессора в простое (с небольшим радиатором):
pi@bpi-iot-ros-ai:~$ cat /sys/devices/virtual/thermal/thermal_zone0/temp
41
Планировщики для emmc, sd и sata:
pi@bpi-iot-ros-ai:~$ cat /sys/block/mmcblk0/queue/scheduler
noop deadline [cfq]
pi@bpi-iot-ros-ai:~$ cat /sys/block/mmcblk1/queue/scheduler
noop deadline [cfq]
pi@bpi-iot-ros-ai:~$ cat /sys/block/sda/queue/scheduler
noop deadline [cfq]
Устройства хранения и разделы:
pi@bpi-iot-ros-ai:~$ sudo lsblk
NAME MAJ:MIN RM SIZE RO TYPE MOUNTPOINT
sda 8:0 0 55.9G 0 disk
└─sda1 8:1 0 55.9G 0 part
mmcblk0boot0 179:16 0 4M 1 disk
mmcblk0boot1 179:32 0 4M 1 disk
mmcblk0 179:0 0 7.3G 0 disk
├─mmcblk0p1 179:1 0 256M 0 part /media/pi/BPI-BOOT
└─mmcblk0p2 179:2 0 7G 0 part /
mmcblk1 179:48 0 15G 0 disk
├─mmcblk1p1 179:49 0 256M 0 part /media/pi/BPI-BOOT1
├─mmcblk1p2 179:50 0 6.8G 0 part /media/pi/BPI-ROOT
└─mmcblk1p3 179:51 0 7.8G 0 part /media/pi/dbb2e3c4-5223-41cf-9f1b-9ba72cf52c0f
Скорость доступа/чтения:
pi@bpi-iot-ros-ai:~$ sudo hdparm -tT /dev/sda
/dev/sda: SSD Kingstone
Timing cached reads: 1094 MB in 2.00 seconds = 546.68 MB/sec
Timing buffered disk reads: 490 MB in 3.01 seconds = 162.86 MB/sec
pi@bpi-iot-ros-ai:~$ sudo hdparm -tT /dev/mmcblk1
/dev/mmcblk1: SD-карта OV
Timing cached reads: 1100 MB in 2.00 seconds = 550.14 MB/sec
Timing buffered disk reads: 64 MB in 3.00 seconds = 21.32 MB/sec
pi@bpi-iot-ros-ai:~$ sudo hdparm -tT /dev/mmcblk0
/dev/mmcblk0: eMMC Flash
Timing cached reads: 1120 MB in 2.00 seconds = 560.13 MB/sec
Timing buffered disk reads: 122 MB in 3.01 seconds = 40.49 MB/sec
Скорость записи/чтения SSD (Kingstone SKC300S):
pi@bpi-iot-ros-ai:/media/pi/sda$ dd count=1k bs=1M if=/dev/zero of=./test.img status=progress
1073741824 bytes (1.1 GB, 1.0 GiB) copied, 29.8408 s, 36.0 MB/s
pi@bpi-iot-ros-ai:/media/pi/sda$ sudo sh -c "sync && echo 3 > /proc/sys/vm/drop_caches"
pi@bpi-iot-ros-ai:/media/pi/sda$ dd if=./test.img of=/dev/null bs=1M status=progress
1073741824 bytes (1.1 GB, 1.0 GiB) copied, 5.59511 s, 192 MB/s
Скорость записи/чтения eMMC:
pi@bpi-iot-ros-ai:~$ dd count=1k bs=1M if=/dev/zero of=./test.img status=progress
1073741824 bytes (1.1 GB, 1.0 GiB) copied, 125.91 s, 8.5 MB/s
pi@bpi-iot-ros-ai:~$ sudo sh -c "sync && echo 3 > /proc/sys/vm/drop_caches"
pi@bpi-iot-ros-ai:~$ dd if=./test.img of=/dev/null bs=1M status=progress
1073741824 bytes (1.1 GB, 1.0 GiB) copied, 25.6311 s, 41.9 MB/s
Скорость записи/чтения SD (китайская карта бренда OV):
pi@bpi-iot-ros-ai:/media/pi/BPI-ROOT/home/pi$ dd count=1k bs=1M if=/dev/zero of=./test.img status=progress
1073741824 bytes (1.1 GB, 1.0 GiB) copied, 133.303 s, 8.1 MB/s
pi@bpi-iot-ros-ai:/media/pi/BPI-ROOT/home/pi$ sudo sh -c "sync && echo 3 > /proc/sys/vm/drop_caches"
pi@bpi-iot-ros-ai:/media/pi/BPI-ROOT/home/pi$ dd if=./test.img of=/dev/null bs=1M status=progress
1073741824 bytes (1.1 GB, 1.0 GiB) copied, 48.2129 s, 22.3 MB/s
Тестирование скорости сети с помощью iperf3:
Копирование по сети (SMB и sata):
В ходе тестирования зависаний, kernel panic не ловил. Проверял загрузку с SD и с eMMC - все хорошо. Грузиться чисто с sata еще не пробовал.
Выводы.
Плюсы:
Минусы:
Итог:
Неоднозначная плата. Строго рекомендовать к покупке не стал бы, в особенности для задач NAS в виду низких скоростей (впрочем то же самое можно сказать и обо всех остальных одноплатниках, не предназначены они все-таки для NAS). А вот для целей сервера УД это вполне годный вариант.