UP 7000 – это одноплатный компьютер формата кредитной карты на базе Alder Lake-N , который может служить альтернативой Raspberry Pi 5 для промышленных применений. AAEON предоставил модель с процессором Intel Processor N100, 8 ГБ LPDDR5 и 64 ГБ eMMC-памяти. В первой части обзора была проведена распаковка, сравнение механического дизайна с предыдущей моделью UP 4000 и Raspberry Pi 5, а также установка Ubuntu 22.04, так как плата UP 7000 поставлялась без ОС и первоначально загружалась в UEFI shell. UP 7000 – это одноплатный компьютер формата кредитной карты на базе Alder Lake-N
обзор UP 4000 с Ubuntu 22.04 , проведенный в прошлом году, с дополнительными тестами GPIO. обзор UP 4000 с Ubuntu 22.04
После обновления Ubuntu 22.04 актуальными пакетами получены следующие данные о системе UP 7000:
Конфигурация системы: 4-ядерный процессор Intel N100 с тактовой частотой 700 МГц / 3.4 ГГц (Turbo), 7.5 ГБ ОЗУ и корневой раздел 56.61 ГБ под Ubuntu 22.04.3 с ядром Linux 6.2. Температура в режиме простоя составляет 54°C.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 |
jaufranc@UP-ADLN01-CNX:~$ lsb_release -a No LSB modules are available. Distributor ID: Ubuntu Description: Ubuntu 22.04.3 LTS Release: 22.04 Codename: jammy jaufranc@UP-ADLN01-CNX:~$ uname -a Linux UP-ADLN01-CNX 6.2.0-26-generic #26~22.04.1-Ubuntu SMP PREEMPT_DYNAMIC Thu Jul 13 16:27:29 UTC 2 x86_64 x86_64 x86_64 GNU/Linux jaufranc@UP-ADLN01-CNX:~$ df -h Filesystem Size Used Avail Use% Mounted on tmpfs 768M 2.3M 766M 1% /run /dev/mmcblk0p2 57G 13G 42G 24% / tmpfs 3.8G 0 3.8G 0% /dev/shm tmpfs 5.0M 4.0K 5.0M 1% /run/lock /dev/mmcblk0p1 511M 6.1M 505M 2% /boot/efi tmpfs 768M 108K 768M 1% /run/user/1000 jaufranc@UP-ADLN01-CNX:~$ free -mh total used free shared buff/cache available Mem: 7.5Gi 1.0Gi 632Mi 275Mi 5.8Gi 5.9Gi Swap: 2.0Gi 1.0Mi 2.0Gi jaufranc@UP-ADLN01-CNX:~$ sudo inxi -Fc0 System: Host: UP-ADLN01-CNX Kernel: 6.2.0-26-generic x86_64 bits: 64 Console: pty pts/2 Distro: Ubuntu 22.04.3 LTS (Jammy Jellyfish) Machine: Type: Desktop System: AAEON product: UP-ADLN01 v: V1.0 serial: N/A Mobo: AAEON model: UP-ADLN01 v: V1.0 serial: 230249162 UEFI: American Megatrends LLC. v: UPADAM12 date: 06/02/2023 CPU: Info: quad core model: Intel N100 bits: 64 type: MCP cache: L2: 2 MiB Speed (MHz): avg: 800 min/max: 700/3400 cores: 1: 800 2: 800 3: 800 4: 800 Graphics: Device-1: Intel driver: i915 v: kernel Display: server: X.org v: 1.21.1.4 with: Xwayland v: 22.1.1 driver: gpu: i915 note: X driver n/a tty: 80x24 Message: GL data unavailable in console for root. Audio: Device-1: Intel driver: snd_hda_intel Sound Server-1: ALSA v: k6.2.0-26-generic running: yes Sound Server-2: PulseAudio v: 15.99.1 running: yes Sound Server-3: PipeWire v: 0.3.48 running: yes Network: Device-1: Realtek RTL8111/8168/8411 PCI Express Gigabit Ethernet driver: r8169 IF: enp1s0 state: up speed: 1000 Mbps duplex: full mac: 00:07:32:b3:f8:05 Drives: Local Storage: total: 58.32 GiB used: 12.62 GiB (21.6%) ID-1: /dev/mmcblk0 model: TY2964 size: 58.32 GiB Partition: ID-1: / size: 56.61 GiB used: 12.62 GiB (22.3%) fs: ext4 dev: /dev/mmcblk0p2 ID-2: /boot/efi size: 511 MiB used: 6.1 MiB (1.2%) fs: vfat dev: /dev/mmcblk0p1 Swap: ID-1: swap-1 type: file size: 2 GiB used: 1.2 MiB (0.1%) file: /swapfile Sensors: System Temperatures: cpu: 54.0 C mobo: N/A Fan Speeds (RPM): N/A Info: Processes: 231 Uptime: 5h 56m Memory: 7.5 GiB used: 1.55 GiB (20.6%) Init: systemd runlevel: 5 Shell: Sudo inxi: 3.3.13 |
Тестирование функций UP 7000 на Ubuntu 22.04
Проверена работа основных портов (за исключением некоторых непроверяемых коннекторов, таких как 10-контактный USB/UART разъем), чтобы убедиться в корректной работе аппаратных возможностей платы под Ubuntu 22.04:
HDMI – Видео: OK, Аудио: OK
- Порты USB 3.0/2.0 – Протестированы с RF-адаптерами для беспроводных мыши и клавиатуры, а также с
- ORICO NVMe SSD enclosure (скорость чтения/записи: 836/927 МБ/с, EXT-4) ORICO NVMe SSD enclosure
- RTC – OK
- jaufranc@UP-ADLN01-CNX:~$ timedatectl
Local time: ศ. 2023-12-08 21:30:57 +07
Universal time: ศ. 2023-12-08 14:30:57 UTC
RTC time: ศ. 2023-12-08 14:30:57
Time zone: Asia/Bangkok (+07, +0700)
System clock synchronized: yes
NTP service: active
RTC in local TZ: no
jaufranc@UP-ADLN01-CNX:~$ sudo hwclock -r2023-12-08 21:31:09.922105+07:00
1[Время форматирования: 0.0003 секунды]
Ввод/вывод – См. раздел ниже. - В отличие от обзора UP 4000 SBC, тест с двумя дисплеями не проводился, так как UP 7000 не имеет USB-C порта, присутствующего на UP 4000, и поддерживает только один дисплей с разрешением до 4Kp30. Технических ограничений для добавления этого порта нет, поэтому его отсутствие – это дизайнерское решение, вероятно, из-за низкого спроса на данную функцию…
Тестирование GPIO на UP 7000
Как и другие платы серии UP, UP 7000 оснащена 40-контактным GPIO-разъемом, в основном совместимым с разъемом Raspberry Pi.
Разъем UP 7000 поддерживает интерфейсы GPIO, I2C, UART, SPI, PWM, ADC и I2S. Без подключения внешнего оборудования проверена только работоспособность драйверов.
Дополнительная информация о управлении GPIO доступна в wiki , где рекомендуется установить драйвер pinctrl для активации всех линий ввода/вывода.
1 2 3 4 |
sudo apt install dkms wget https://github.com/up-division/pinctrl-upboard/releases/download/v1.1.3/pinctrl-upboard_1.1.3_all.deb sudo dpkg -i pinctrl-upboard_1.1.3_all.deb sudo reboot |
Проверка GPIO
Наличие GPIO-чипов можно проверить через устройства:
1 2 3 |
jaufranc@UP-ADLN01-CNX:~$ ls -l /dev/gpiochip* crw------- 1 root root 254, 0 ธ.ค. 9 11:33 /dev/gpiochip0 crw------- 1 root root 254, 1 ธ.ค. 9 11:33 /dev/gpiochip1 |
Также доступны пользовательские инструменты:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 |
sudo apt install libgpiod-dev gpiod jaufranc@UP-ADLN01-CNX:~$ sudo gpioinfo 0 [sudo] password for jaufranc: gpiochip0 - 360 lines: line 0: unnamed unused input active-high line 1: unnamed unused input active-high line 2: unnamed unused input active-high line 3: unnamed unused input active-high line 4: unnamed unused input active-high line 5: unnamed unused input active-high line 6: unnamed unused input active-high line 7: unnamed unused input active-high line 8: unnamed unused input active-high line 9: unnamed unused input active-high line 10: unnamed unused input active-high line 11: unnamed unused input active-high line 12: unnamed unused input active-high ... jaufranc@UP-ADLN01-CNX:~$ sudo gpioinfo 1 gpiochip1 - 28 lines: line 0: unnamed unused input active-high line 1: unnamed unused input active-high line 2: unnamed unused input active-high line 3: unnamed unused input active-high line 4: unnamed unused input active-high line 5: unnamed unused input active-high line 6: unnamed unused input active-high line 7: unnamed unused input active-high line 8: unnamed unused input active-high line 9: unnamed unused input active-high line 10: unnamed unused input active-high line 11: unnamed unused input active-high line 12: unnamed unused input active-high |
Быстрый тест включал включение и выключение зеленого пользовательского светодиода на плате:
1 2 |
sudo sh -c 'echo 1 > /sys/class/leds/upboard\:green\:/brightness' sudo sh -c 'echo 0 > /sys/class/leds/upboard\:green\:/brightness' |
AAEON сообщает, что прерывания также поддерживаются, и предоставляет тестовый пример:
1 2 3 4 5 |
wget https://github.com/up-board/up-community/raw/main/scripts/irqtest.zip unzip irqtest.zip sudo apt install python3-pip sudo -H pip3 install python-periphery sudo python3 irqtest.py |
Однако этот пример не сработал:
1 2 3 4 5 6 7 8 9 |
jaufranc@UP-ADLN01-CNX:~$ sudo python3 irqtest.py OSError: [Errno 22] Invalid argument During handling of the above exception, another exception occurred: Traceback (most recent call last): File "/usr/local/lib/python3.10/dist-packages/periphery/gpio_sysfs.py", line 63, in _open with open("/sys/class/gpio/export", "w") as f_export: OSError: [Errno 22] Invalid argument |
Интерфейсы UART
Проверим интерфейс UART. В sysfs доступны два порта: /dev/ttyS4 и /dev/ttyS5
1 2 3 4 5 6 |
jaufranc@UP-ADLN01-CNX:~$ ls /sys/bus/pci/devices/0000\:00\:1e.?/dw-apb-uart.*/tty '/sys/bus/pci/devices/0000:00:1e.0/dw-apb-uart.3/tty': ttyS4 '/sys/bus/pci/devices/0000:00:1e.1/dw-apb-uart.4/tty': ttyS5 |
dw-apb-uart.8 — это UART на 10-контактном разъеме, а dw-apb-uart.9 — на 40-контактном GPIO-заголовке (Tx: пин 8, Rx: пин 10). Пришлось немного изучить sysfs, чтобы найти порт, но установка утилиты BootTerm упрощает этот процесс:
1 2 3 4 5 |
jaufranc@UP-ADLN01-CNX:~/bootterm$ sudo bt -l port | age (sec) | device | driver | description ------+------------+------------+------------------+---------------------- 0 | 1870 | ttyS4 | dw-apb-uart | * 1 | 1870 | ttyS5 | dw-apb-uart | |
Интерфейсы I2C и настройки GPIO в BIOS
Поддерживается I2C, в sysfs доступны два интерфейса:
1 2 3 4 5 |
jaufranc@UP-ADLN01-CNX:~$ ls /sys/bus/pci/devices/*/i2c_designware.?/ | grep i2c /sys/bus/pci/devices/0000:00:15.0/i2c_designware.1/: i2c-0 /sys/bus/pci/devices/0000:00:15.1/i2c_designware.2/: i2c-1 |
Можно установить пользовательские инструменты I2C для отображения устройств:
1 |
sudo apt-get install i2c-tools |
На I2C-0 и I2C-1 ничего не обнаружено, так как они подключены к 40-контактному GPIO-заголовку, а подходящего модуля I2C под рукой не оказалось.
1 2 3 4 5 6 7 8 9 10 |
jaufranc@UP-ADLN01-CNX:~$ sudo i2cdetect -y -r 0 0 1 2 3 4 5 6 7 8 9 a b c d e f 00: -- -- -- -- -- -- -- -- 10: -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- 20: -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- 30: -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- 40: -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- 50: -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- 60: -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- 70: -- -- -- -- -- -- -- -- |
Однако на I2C-3, который, вероятно, является внутренней шиной, обнаружены устройства:
1 2 3 4 5 6 7 8 9 10 |
jaufranc@UP-ADLN01-CNX:~$ sudo i2cdetect -y -r 3 0 1 2 3 4 5 6 7 8 9 a b c d e f 00: -- -- -- -- -- -- -- -- 10: -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- 20: -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- 30: -- -- -- -- -- -- -- 37 -- -- 3a -- -- -- -- -- 40: -- -- -- -- -- -- -- -- -- -- 4a 4b -- -- -- -- 50: 50 -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- 60: -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- 70: -- -- -- -- -- -- -- -- |
Все пины поддерживают несколько функций, включая GPIO и специальные режимы, а их поведение по умолчанию можно настроить в BIOS, в том числе для I2C. Для входа в BIOS нужно нажать клавишу «Del» и ввести пароль при запросе.
В меню Advanced можно выбрать HAT Pins Configurations.
Здесь можно включить/отключить I2C, SPI, UART или I2S-контроллеры, а также ADC, чтобы задать режим по умолчанию для каждого GPIO-пина. Если выбран режим GPIO, можно определить, будет ли пин входом или выходом с высоким или низким уровнем.
В документации упоминается пароль инженерного BIOS (upassw0rd), который открывает дополнительные настройки. Согласно wiki, скорость I2C можно выбрать от 100 кГц до 3 МГц в LPSS Configuration, но эта опция не была найдена в BIOS UP 7000 даже в режиме администратора с указанным паролем.
Основные настройки находятся в CRB Setup, хотя некоторые новые параметры также отображаются во вкладке Advanced. PCH-UI Configuration — лишь небольшая часть опций CRB Setup.
Доступен обширный список параметров, большинство из которых неочевидны. AAEON предупреждает, что изменение некоторых расширенных параметров BIOS может привести к выходу платы из строя, после чего потребуется перепрошивка BIOS с помощью SPI-программатора.
Интерфейсы SPI
Благодаря установленному DKMS-драйверу pinctrl в пользовательском пространстве доступны два интерфейса SPI:
1 2 3 |
jaufranc@UP-ADLN01-CNX:~$ ls -l /dev/spidev1.* crw------- 1 root root 153, 0 ธ.ค. 9 14:38 /dev/spidev1.0 crw------- 1 root root 153, 1 ธ.ค. 9 14:38 /dev/spidev1.1 |
Для настройки можно использовать spi-tools в Ubuntu.
1 2 3 4 5 |
sudo apt install spi-tools jaufranc@UP-ADLN01-CNX:~$ sudo spi-config -d /dev/spidev1.0 -q /dev/spidev1.0: mode=0, lsb=0, bits=8, speed=1000000, spiready=0 jaufranc@UP-ADLN01-CNX:~$ sudo spi-config -d /dev/spidev1.1 -q /dev/spidev1.1: mode=0, lsb=0, bits=8, speed=1000000, spiready=0 |
Управление PWM
В sysfs доступны два интерфейса PWM:
1 2 3 4 |
jaufranc@UP-ADLN01-CNX:~$ ls /sys/class/pwm/pwmchip0 device export npwm power subsystem uevent unexport jaufranc@UP-ADLN01-CNX:~$ ls /sys/class/pwm/pwmchip1 device export npwm power subsystem uevent unexport |
Согласно документации, pwmchip0 использует pwm0 на пине 32, pwm1 на пине 33, pwm2 отсутствует, а pwm3 — на пине 16. Информации о pwmchip1 нет.
При выполнении от имени root следующие команды должны генерировать прямоугольный импульс частотой 293 Гц на пине 32 с коэффициентом заполнения около 50% (PWM0):
1 2 3 4 |
echo 0 > /sys/class/pwm/pwmchip0/export echo 3413333 > /sys/class/pwm/pwmchip0/pwm0/period echo 1706667 > /sys/class/pwm/pwmchip0/pwm0/duty_cycle echo 1 > /sys/class/pwm/pwmchip0/pwm0/enable |
Однако выполнение завершилось ошибкой ввода-вывода для второй и четвертой команд:
1 2 3 4 5 |
jaufranc@UP-ADLN01-CNX:~$ sudo sh -c 'echo 3413333 > /sys/class/pwm/pwmchip0/pwm0/period' sh: 1: echo: echo: I/O error jaufranc@UP-ADLN01-CNX:~$ sudo sh -c 'echo 1706667 > /sys/class/pwm/pwmchip0/pwm0/duty_cycle' jaufranc@UP-ADLN01-CNX:~$ sudo sh -c 'echo 1 > /sys/class/pwm/pwmchip0/pwm0/enable' sh: 1: echo: echo: I/O error |
Известно о подобных проблемах с PWM, но в другом контексте три года назад. Необходимо уточнить решение у AAEON.
Активация ADC
В wiki нет информации о пине ADC, но некоторые сведения можно найти на форумах для оригинальной UP Board.
1 2 |
jaufranc@UP-ADLN01-CNX:~$ ls /sys/bus/iio/devices/ jaufranc@UP-ADLN01-CNX:~$ |
ADC должен быть доступен, но интерфейс пуст. Однако, если вернуться к настройкам HAT в BIOS (раздел I2C), ADC был отключен. После активации ADC на GPIO 3 (пин 7) в BIOS:
В Ubuntu 22.04 интерфейс ADC действительно активен на UP 7000 и доступен в sysfs:
1 2 3 4 |
jaufranc@UP-ADLN01-CNX:~$ ls /sys/bus/iio/devices/iio\:device0 buffer dev in_voltage_scale scan_elements uevent buffer0 firmware_node name subsystem waiting_for_supplier current_timestamp_clock in_voltage_raw power trigger |
С его помощью можно считать сырое значение напряжения:
1 2 |
jaufranc@UP-ADLN01-CNX:~$ cat /sys/bus/iio/devices/iio\:device0/in_voltage_raw 234 |
Тесты UP 7000 в Ubuntu 22.04
Запустим скрипт SBC-bench.sh от Thomas Kaiser:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 |
jaufranc@UP-ADLN01-CNX:~$ sudo ./sbc-bench.sh -r Starting to examine hardware/software for review purposes... Average load and/or CPU utilization too high (too much background activity). Waiting... Too busy for benchmarking: 20:53:23 up 5:59, 4 users, load average: 0.09, 0.30, 0.22, cpu: 0% sbc-bench v0.9.59 Installing needed tools: apt -f -qq -y install gcc make build-essential curl git sysstat powercap-utils binutils mmc-utils smartmontools stress-ng p7zip, tinymembench, ramlat, mhz, cpufetch, cpuminer. Done. Checking cpufreq OPP. Done. Executing tinymembench. Done. Executing RAM latency tester. Done. Executing OpenSSL benchmark. Done. Executing 7-zip benchmark. Done. Throttling test: heating up the device, 5 more minutes to wait. Done. Checking cpufreq OPP again. Done (11 minutes elapsed). Results validation: * Measured clockspeed not lower than advertised max CPU clockspeed * No swapping * Background activity (%system) OK * Powercap detected. Details: "sudo powercap-info -p intel-rapl" -> https://tinyurl.com/4jh9nevj Full results uploaded to http://sprunge.us/GAfPMA # AAEON UP-ADLN01 V1.0 / N100 Tested with sbc-bench v0.9.59 on Fri, 08 Dec 2023 21:07:39 +0700. Full info: [http://sprunge.us/GAfPMA](http://sprunge.us/GAfPMA) ### General information: Information courtesy of cpufetch: Name: Intel(R) N100 Microarchitecture: Alder Lake Technology: 10nm Max Frequency: 3.400 GHz Cores: 4 cores AVX: AVX,AVX2 FMA: FMA3 L1i Size: 64KB (256KB Total) L1d Size: 32KB (128KB Total) L2 Size: 2MB L3 Size: 6MB Peak Performance: 435.20 GFLOP/s N100, Kernel: x86_64, Userland: amd64 CPU sysfs topology (clusters, cpufreq members, clockspeeds) cpufreq min max CPU cluster policy speed speed core type 0 0 0 700 3400 N100 1 0 1 700 3400 N100 2 0 2 700 3400 N100 3 0 3 700 3400 N100 7678 KB available RAM ### Policies (performance vs. idle consumption): Status of performance related policies found below /sys: /sys/module/pcie_aspm/parameters/policy: [default] performance powersave powersupersave ### Clockspeeds (idle vs. heated up): Before at 62.0°C: cpu0: OPP: 3400, Measured: 3391 After at 90.0°C: cpu0: OPP: 3400, Measured: 3391 ### Performance baseline * memcpy: 8277.6 MB/s, memchr: 13678.5 MB/s, memset: 8046.5 MB/s * 16M latency: 147.9 124.3 146.0 124.3 144.9 122.6 117.2 124.3 * 128M latency: 159.4 143.6 159.0 143.0 158.7 170.6 135.0 139.0 * 7-zip MIPS (3 consecutive runs): 12358, 13148, 13178 (12890 avg), single-threaded: 3719 * `aes-256-cbc 925607.32k 1179105.28k 1218741.85k 1229284.69k 1232393.56k 1232218.79k` * `aes-256-cbc 935266.61k 1179486.23k 1219242.50k 1229681.32k 1232303.45k 1231454.21k` ### PCIe and storage devices: * Realtek RTL8111/8168/8411 PCI Express Gigabit Ethernet: Speed 2.5GT/s (ok), Width x1 (ok), driver in use: r8169 * 58.3GB "TY2964" HS400 Enhanced strobe eMMC 5.1 card as /dev/mmcblk0: date 05/2023, manfid/oemid: 0x000070/0x0100, hw/fw rev: 0x0/0x5b00000000000000 * Winbond W25Q256JW 32MB SPI NOR flash, drivers in use: spi-nor/intel-spi ### Swap configuration: * /swapfile on /dev/mmcblk0p2: 2.0G (2.8M used) on MMC storage ### Software versions: * Ubuntu 22.04.3 LTS * Compiler: /usr/bin/gcc (Ubuntu 11.4.0-1ubuntu1~22.04) 11.4.0 / x86_64-linux-gnu * OpenSSL 3.0.2, built on 15 Mar 2022 (Library: OpenSSL 3.0.2 15 Mar 2022) ### Kernel info: * `/proc/cmdline: BOOT_IMAGE=/boot/vmlinuz-6.2.0-26-generic root=UUID=8896b933-4cba-45ff-9006-edda9c33f347 ro quiet splash vt.handoff=7` * Vulnerability Spec store bypass: Mitigation; Speculative Store Bypass disabled via prctl * Vulnerability Spectre v1: Mitigation; usercopy/swapgs barriers and __user pointer sanitization * Kernel 6.2.0-26-generic / CONFIG_HZ=250 Waiting for the device to cool down...................................... 63.0°C |
Тест проводился при температуре окружающей среды около 28°C. Максимальная температура CPU, зафиксированная скриптом, составила 99.0°C в тесте CPU miner. Хотя троттлинг не был явно обнаружен, частота временно падала до 1800 МГц, что указывает на его наличие. Радиатор сильно нагревается (прикосновение без перчаток возможно не более секунды), что свидетельствует о его эффективной работе.
Обнаружен powercap, проверим ограничения мощности, как рекомендует скрипт:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 |
jaufranc@UP-ADLN01-CNX:~$ sudo powercap-info -p intel-rapl [sudo] password for jaufranc: enabled: 1 Zone 0 name: package-0 enabled: 1 max_energy_range_uj: 262143328850 energy_uj: 458390733 Constraint 0 name: long_term power_limit_uw: 9125000 time_window_us: 27983872 max_power_uw: 6000000 Constraint 1 name: short_term power_limit_uw: 25000000 time_window_us: 2440 max_power_uw: 0 Constraint 2 name: peak_power power_limit_uw: 78000000 time_window_us: 0 max_power_uw: 0 Zone 0:0 name: core enabled: 0 max_energy_range_uj: 262143328850 energy_uj: 97230036 Constraint 0 name: long_term power_limit_uw: 0 time_window_us: 976 Zone 0:1 name: uncore enabled: 0 max_energy_range_uj: 262143328850 energy_uj: 131591 Constraint 0 name: long_term power_limit_uw: 0 time_window_us: 976 |
PL1 установлен на 9.125 Вт, а PL2 — на 25 Вт.
Ниже приведена сравнительная таблица, и для справки: результат 7-zip (12 890 баллов) почти в два раза выше, чем у UP 4000 и примерно на 28% выше, чем у Raspberry Pi 5 . Однако одноплатные компьютеры на Rockchip RK3588, такие как Rock 5B или Khadas Edge2 Pro , по-прежнему значительно опережают UP 7000 как по пропускной способности памяти, так и по производительности в 7-zip. Эти результаты также немного ниже, чем у активно охлаждаемого мини-ПК ( Beelink EQ12 ), который набирает чуть более 14 000 баллов .


В BIOS доступны настройки производительности, поэтому временно изменил параметр «AAEON Smart Boost» с «Smart Boost» на «Maximum Performance». Также есть опция «Good Stability», которая может быть полезна при высоких температурах окружающей среды, но стоит отметить, что проблем со стабильностью не наблюдалось ни в режиме «Smart Boost», ни в «Maximum Performance».
После настройки снова запустил sbc-bench.sh:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 |
jaufranc@UP-ADLN01-CNX:~$ sudo ./sbc-bench.sh sbc-bench v0.9.59 Installing needed tools: Done. Checking cpufreq OPP. Done (results will be available in 7-10 minutes). Executing tinymembench. Done. Executing RAM latency tester. Done. Executing OpenSSL benchmark. Done. Executing 7-zip benchmark. Done. Checking cpufreq OPP again. Done (6 minutes elapsed). Results validation: * Measured clockspeed not lower than advertised max CPU clockspeed * No swapping * Background activity (%system) OK * Powercap detected. Details: "sudo powercap-info -p intel-rapl" -> https://tinyurl.com/4jh9nevj Memory performance memcpy: 8352.2 MB/s memset: 8127.6 MB/s 7-zip total scores (3 consecutive runs): 13419,13469,13489, single-threaded: 3711 OpenSSL results: type 16 bytes 64 bytes 256 bytes 1024 bytes 8192 bytes 16384 bytes aes-128-cbc 985115.51k 1595641.05k 1669379.16k 1688595.46k 1694485.16k 1694302.21k aes-128-cbc 978993.37k 1595295.27k 1669095.59k 1688521.05k 1693837.99k 1694750.04k aes-192-cbc 968636.25k 1356166.66k 1409023.83k 1422894.76k 1426576.73k 1427319.47k aes-192-cbc 968685.81k 1356332.91k 1409301.76k 1422617.94k 1427218.43k 1427330.39k aes-256-cbc 935245.75k 1179406.81k 1218691.67k 1229451.61k 1232399.02k 1232683.01k aes-256-cbc 935156.19k 1179266.35k 1218664.79k 1229249.88k 1232461.82k 1232704.85k Unable to upload full test results. Please copy&paste the below stuff to pastebin.com and provide the URL. Check the output for throttling and swapping please. |
Ссылка на полные результаты тестирования . Информация о лимитах мощности при установке PL1 и PL2 на 25 Вт:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 |
jaufranc@UP-ADLN01-CNX:~$ sudo powercap-info -p intel-rapl enabled: 1 Zone 0 name: package-0 enabled: 1 max_energy_range_uj: 262143328850 energy_uj: 4470116913 Constraint 0 name: long_term power_limit_uw: 25000000 time_window_us: 27983872 max_power_uw: 6000000 Constraint 1 name: short_term power_limit_uw: 25000000 time_window_us: 2440 max_power_uw: 0 Constraint 2 name: peak_power power_limit_uw: 78000000 time_window_us: 0 max_power_uw: 0 Zone 0:0 name: core enabled: 0 max_energy_range_uj: 262143328850 energy_uj: 2485182358 Constraint 0 name: long_term power_limit_uw: 0 time_window_us: 976 Zone 0:1 name: uncore enabled: 0 max_energy_range_uj: 262143328850 energy_uj: 755796 Constraint 0 name: long_term power_limit_uw: 0 time_window_us: 976 |
Производительность немного выше, но стоит учесть, что температура в помещении была около 26°C, что на 2°C ниже, чем в первом тесте. Оставшаяся часть обзора выполнена с опцией «Smart Boost».
Набор тестов Phoronix используется реже из-за сложности сравнений из-за изменяющихся флагов компилятора и кода, но поскольку он применялся для UP 4000, тест повторили и для UP 7000:
1 |
phoronix-test-suite benchmark 2210164-NE-2209103NE94 |
UP 7000 быстрее UP 4000 во всех тестах и конкурирует с Khadas Edge2 Pro на Rockchip RK3588S. Полные результаты доступны на сайте openbenchmarking.org .
Производительность накопителя
Производительность накопителя — важный компонент общей производительности системы, поэтому для тестирования eMMC использовалась утилита iozone3:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 |
jaufranc@UP-ADLN01-CNX:~$ iozone -e -I -a -s 100M -r 4k -r 16k -r 512k -r 1024k -r 16384k -i 0 -i 1 -i 2 Iozone: Performance Test of File I/O Version $Revision: 3.489 $ Compiled for 64 bit mode. Build: linux-AMD64 random random bkwd record stride kB reclen write rewrite read reread read write read rewrite read fwrite frewrite fread freread 102400 4 46498 50303 32527 32835 27971 47807 102400 16 99640 112581 82896 82797 65445 109254 102400 512 202289 198320 243251 244647 236905 185960 102400 1024 216086 209006 268205 269402 267238 208432 102400 16384 227434 232576 309627 310762 310502 228986 iozone test complete. |
Последовательная скорость чтения и записи около 309 МБ/с и 227 МБ/с отличные для eMMC и значительно выше, чем у UP 4000 (234/191 МБ/с). Результаты случайного ввода-вывода также хорошие и лучше, чем у UP 4000.
Тестирование 3D-графики
Для тестирования 3D-графики в Linux использовался стандартный Unigine Heaven Benchmark 4.0.
Результат — 258 баллов или 10.2 кадра в секунду при разрешении 1920×1080. Для сравнения: UP 4000 на Atom x7-E3950 набрал 131 балл, а одноплатный компьютер DFI GHF51 на Ryzen Embedded R1606G показал 135 баллов . Таким образом, улучшение значительное.
Воспроизведение видео в YouTube и Kodi 19.4
Воспроизведение видео в Firefox на YouTube при 1920×1080 60 кадров/с происходило с небольшим количеством потерянных кадров в начале,
но 4Kp60 было очень прерывистым с множеством потерянных кадров.
В Chrome воспроизведение 1080p60 было плавным, хотя в начале и периодически при движении мыши терялись кадры,
а при 2160p (4K) было много потерянных кадров, и часто появлялся индикатор загрузки, несмотря на почти полный сетевой буфер.
При переключении на другое 4K-видео с 30 кадрами/с результаты были значительно лучше: видео воспроизводилось плавно с потерей только одного кадра в начале.
Все видео использовали кодек VP9.
Для воспроизведения локальных 4K-видео в Kodi 19.4 был подключен USB 3.0 HDD.
- HD.Club-4K-Chimei-inn-60mbps.mp4 (H.264, 30 кадров/с) — OK
- MHD_2013_2160p_ShowReel_R_9000f_24fps_RMN_QP23_10b.mkv (10-битный HEVC) — OK
- BT.2020.20140602.ts (соответствует Rec.2020 ; 36 Мбит/с; 59.97 Гц) — OK
- big_buck_bunny_4k_H264_30fps.mp4 — OK
- Fifa_WorldCup2014_Uruguay-Colombia_4K-x265.mp4 (4K, H.265, 60 кадров/с) — OK
- -4K.mp4 (10-битный H.264; 120 Мбит/с) — воспроизведение через программный декодер со скоростью около 8-10 кадров/с
- tara-no9-vp9.webm (4K VP9 с YouTube @ 60 кадров/с, аудио Vorbis) — OK
- The.Curvature.of.Earth.4K.60FPS-YT-UceRgEyfSsc.VP9.3840×2160.OPUS.160K.webm (4K VP9 @ 60 кадров/с + аудио opus) — OK, хотя видео замирало на первые две секунды, затем воспроизводилось идеально плавно.
Все видео воспроизводились с аппаратным декодированием и низкой загрузкой CPU (около 20% или меньше на всех ядрах), кроме 4K 10-битного H.264, который обрабатывался программно, и процессор не справлялся с достижением ~24 кадров/с.
Потребление энергии
Потребление энергии измерялось с помощью настольного ваттметра:
- Выключен — 1.4–1.5 Вт
- Простой — 4.2–4.3 Вт
- Воспроизведение Full HD 60 кадров/с в YouTube через Firefox — 9.2–11.4 Вт
- Воспроизведение Full HD 60 кадров/с в YouTube через Chrome — 7.3–10.1 Вт
- Нагрузочный тест «stress -c 4» — 16.5–17 Вт
Примечание: к плате были подключены HDMI-монитор, RF-адаптеры для беспроводных клавиатуры и мыши, а также кабель Ethernet. Другие периферийные устройства отсутствовали.
Заключение
Как и одноплатный компьютер UP 4000, новая плата UP 7000 на базе Intel Processor N100 — надежное устройство, где все работает «из коробки» в Ubuntu 22.04, с стабильной работой и примерно вдвое большей производительностью, чем у предыдущей модели. Однако в новой модели отсутствует USB-C порт, что ограничивает подключение одним дисплеем, а также были замечены проблемы с прерываниями и ШИМ, но они могут быть исправлены после обратной связи от производителя. Воспроизведение 4Kp60 на YouTube с этим процессором не плавное, хотя 4Kp30 и 1080p60 работают нормально, а 4Kp60 в Kodi с аппаратным декодированием воспроизводится хорошо. По производительности UP 7000 находится между Raspberry Pi 5 и одноплатными компьютерами на Rockchip RK3588, хотя в некоторых тестах опережает последние.
По сравнению с ARM-платформами, включая Raspberry Pi, UP 7000 предлагает отличную поддержку Linux, а BIOS предоставляет множество настроек, хотя назначение многих из них неочевидно. Поддержка на хорошем уровне благодаря сообществу UP , включающему форум и вики. Читатели могли заметить, что недавно тестировалась плата Youyeetoo X1 x86 с проверкой GPIO и других функций в Ubuntu 22.04 , которая может быть более дешевой альтернативой UP 7000, но AAEON предлагает более высокую производительность и лучше подходит для промышленного использования благодаря бесшумному охлаждению и долгосрочной поддержке до 2038 года.
Благодарю AAEON за предоставление UP 7000 x86 для обзора. Тестируемая модель с Intel Processor N100, 8 ГБ LPDDR5 и 64 ГБ eMMC доступна за $251.99 с блоком питания 12В/5А в магазине UP, где также можно приобрести аксессуары, такие как USB 2.0 кабель для 10-контактного разъема, и услуги установки ОС: Windows 10 IoT Enterprise 2021 ($47.99 с лицензией) и Debian 12 ($17.99).
Выражаем свою благодарность источнику, с которого взята и переведена статья, сайту cnx-software.com.
Оригинал статьи вы можете прочитать здесь.