Обзор UP TWL AI Dev Kit – Бенчмарки, тестирование возможностей и AI-нагрузки на Ubuntu 24.04

В начале этого месяца я начал обзор AI-комплектов для разработки на базе Intel UP с распаковки одноплатных компьютеров UP TWL, UP Squared Pro TWL и UP Xtreme ARL. Теперь у меня было время протестировать первую модель — одноплатный компьютер UP TWL размером с банковскую карту на базе Intel Processor N150 с 64 ГБ флеш-памяти eMMC и предустановленной Ubuntu 24.04.

Как обычно, будет запущено несколько тестов производительности и проверены ключевые аппаратные функции платы, но основное внимание уделяется AI-части, поскольку именно для этого предназначен комплект. Следует отметить, что UP TWL AI Dev Kit является решением начального уровня, и все AI-нагрузки будут выполняться на CPU или встроенном GPU, поскольку в данной модели нет выделенного AI-ускорителя или слота M.2 для его добавления. В следующих частях обзора UP Squared Pro TWL добавляет AI-ускоритель Hailo-8L, а UP Xtreme ARL обеспечивает до 83 TOPS благодаря 14-ядерному процессору Intel Core Ultra 5 225H «Arrow Lake».

UP TWL AI Dev Kit Review

Системная информация UP TWL SBC

Четырехъядерный одноплатный компьютер UP TWL поставляется с предустановленной Ubuntu 24.04.3 LTS на 64 ГБ (62.6 ГБ) флеш-памяти eMMC, а система также оснащена 8 ГБ оперативной памяти.

UP TWL Ubuntu 24.04 About

Больше информации можно получить с помощью утилиты inxi:

devkit@devkit-UP-TWL01:~$ sudo inxi -Fc0
System:
  Host: devkit-UP-TWL01 Kernel: 6.14.0-32-generic arch: x86_64 bits: 64
  Console: pty pts/2 Distro: Ubuntu 24.04.3 LTS (Noble Numbat)
Machine:
  Type: Desktop Mobo: AAEON model: UP-TWL01 v: V1.0 serial: 250163462
    UEFI: American Megatrends LLC. v: UPTWAM10 date: 03/31/2025
CPU:
  Info: quad core model: Intel N150 bits: 64 type: MCP cache: L2: 2 MiB
  Speed (MHz): avg: 700 min/max: 700/3600 cores: 1: 700 2: 700 3: 700 4: 700
Graphics:
  Device-1: Intel Alder Lake-N [Intel Graphics] driver: i915 v: kernel
  Device-2: Sunplus Innovation FHD Camera driver: snd-usb-audio,uvcvideo
    type: USB
  Display: server: X.org v: 1.21.1.11 with: Xwayland v: 23.2.6 driver:
    gpu: i915 tty: 80x24 resolution: 1920x1080
  API: EGL v: 1.5 drivers: iris,swrast platforms: gbm,surfaceless,device
  API: OpenGL v: 4.6 compat-v: 4.5 vendor: mesa v: 25.0.7-0ubuntu0.24.04.2
    note: console (EGL sourced) renderer: Mesa Intel Graphics (ADL-N), llvmpipe
    (LLVM 20.1.2 256 bits)
Audio:
  Device-1: Intel Alder Lake-N PCH High Definition Audio driver: snd_hda_intel
  Device-2: Sunplus Innovation FHD Camera driver: snd-usb-audio,uvcvideo
    type: USB
  API: ALSA v: k6.14.0-32-generic status: kernel-api
Network:
  Device-1: Realtek RTL8111/8168/8211/8411 PCI Express Gigabit Ethernet
    driver: r8169
  IF: enp1s0 state: up speed: 1000 Mbps duplex: full mac: 00:07:32:c9:bc:3e
  IF-ID-1: docker0 state: down mac: d2:f7:7f:d5:38:a3
Drives:
  Local Storage: total: 58.32 GiB used: 12.75 GiB (21.9%)
  ID-1: /dev/mmcblk0 model: TY2964 size: 58.32 GiB type: Removable
Partition:
  ID-1: / size: 56.07 GiB used: 12.74 GiB (22.7%) fs: ext4 dev: /dev/mmcblk0p2
  ID-2: /boot/efi size: 1.05 GiB used: 6.1 MiB (0.6%) fs: vfat
    dev: /dev/mmcblk0p1
Swap:
  ID-1: swap-1 type: file size: 4 GiB used: 0 KiB (0.0%) file: /swap.img
Sensors:
  Src: lm-sensors+/sys Message: No sensor data found using /sys/class/hwmon
    or lm-sensors.
Info:
  Memory: total: 8 GiB available: 7.51 GiB used: 1.26 GiB (16.8%) igpu: 60 MiB
  Processes: 218 Uptime: 15m Init: systemd target: graphical (5) Shell: Sudo
    inxi: 3.3.34

Все основные функции, включая Gigabit Ethernet и подключенную USB-камеру, определяются корректно.

Тесты производительности

Поскольку производительность Intel Processor N150 и других процессоров Intel Alder Lake-N/Twin Lake в целом хорошо известна, в этом обзоре был запущен только sbc-bench.sh:

devkit@devkit-UP-TWL01:~$ sudo ./sbc-bench.sh -r
Starting to examine hardware/software for review purposes...

sbc-bench v0.9.72

Installing needed tools: apt-get -f -qq -y install powercap-utils links mmc-utils smartmontools stress-ng, p7zip 16.02, 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 (12 minutes elapsed).

Results validation:

  * Measured clockspeed not lower than advertised max CPU clockspeed
  * No swapping
  * Background activity (%system) OK
  * Too much other background activity: 5% avg, 26% max -> https://tinyurl.com/mr2wy5uv
  * Powercap detected. Details: "sudo powercap-info -p intel-rapl" -> https://tinyurl.com/4jh9nevj

# AAEON UP-TWL01 V1.0 / N150

Tested with sbc-bench v0.9.72 on Sun, 09 Nov 2025 08:58:05 +0100.

### General information:

    Information courtesy of cpufetch:

    Name:                Intel(R) N150
    Microarchitecture:   Alder Lake
    Technology:          10nm
    Max Frequency:       3.600 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

    N150, 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    3600       -
      1        0        1      700    3600       -
      2        0        2      700    3600       -
      3        0        3      700    3600       -

7688 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 48.0°C:

    cpu0: OPP: 3600, Measured: 2983     (-17.1%)

After at 44.0°C:

    cpu0: OPP: 3600, Measured: 3581

### Performance baseline

  * memcpy: 3491.0 MB/s, memchr: 5190.3 MB/s, memset: 4130.4 MB/s
  * 16M latency: 203.5 151.3 200.2 146.6 190.7 149.6 132.7 138.7
  * 128M latency: 212.6 182.1 212.4 180.5 207.3 210.6 181.6 166.3
  * 7-zip MIPS (3 consecutive runs): 6603, 6906, 6920 (6810 avg), single-threaded: 3144
  * `aes-256-cbc     741172.07k  1056420.27k  1143840.09k  1174898.35k  1181171.71k  1185300.48k`
  * `aes-256-cbc     763600.11k  1068320.73k  1157893.89k  1180891.14k  1186084.18k  1191701.16k`

### PCIe and storage devices:

  * Realtek RTL8111/8168/8211/8411 PCI Express Gigabit Ethernet: Speed 2.5GT/s, Width x1, driver in use: r8169,
  * 58.3GB "Kingston TY2964" HS400 Enhanced strobe eMMC 5.1 card as /dev/mmcblk0: date 05/2025, manfid/oemid: 0x000070/0x0100, hw/fw rev: 0x0/0x5b00000000000000
  * Winbond W25Q256JW 32MB SPI NOR flash, drivers in use: spi-nor/intel-spi

### Swap configuration:

  * /swap.img on /dev/mmcblk0p2: 4.0G (0K used) on MMC storage

### Software versions:

  * Ubuntu 24.04.3 LTS (noble)
  * Compiler: /usr/bin/gcc (Ubuntu 13.3.0-6ubuntu2~24.04) 13.3.0 / x86_64-linux-gnu
  * OpenSSL 3.0.13, built on 30 Jan 2024 (Library: OpenSSL 3.0.13 30 Jan 2024)  

### Kernel info:

  * `/proc/cmdline: BOOT_IMAGE=/boot/vmlinuz-6.14.0-32-generic root=UUID=eaca6cca-80e9-4aab-9a74-10fa0e135c4a ro quiet splash vt.handoff=7`
  * Vulnerability Reg file data sampling:    Mitigation; Clear Register File
  * Vulnerability Spec store bypass:         Mitigation; Speculative Store Bypass disabled via prctl
  * Vulnerability Spectre v1:                Mitigation; usercopy/swapgs barriers and __user pointer sanitization
  * Kernel 6.14.0-32-generic / CONFIG_HZ=1000

Waiting for the device to cool down...................................... 31.0°C^C

UP TWL работает очень холодно благодаря встроенному кулеру, и радиатор постоянно остается прохладным. Однако плата довольно шумная, как и большинство других аппаратных платформ от AAEON. Они проектируют оборудование для промышленного рынка, поэтому низкий уровень шума может быть не так важен, как в потребительских устройствах.

С точки зрения производительности, UP TWL SBC показал в среднем 6810 MIPS в тесте 7-zip, что сравнимо с 9730 MIPS на Zimaboard 2 с тем же однокристальных системой Intel N150 и довольно слабым охлаждением.

Разницу можно объяснить лимитами мощности PL1/PL2:

devkit@devkit-UP-TWL01:~$ sudo powercap-info -p intel-rapl
enabled: 1
Zone 0
  name: package-0
  enabled: 1
  max_energy_range_uj: 262143328850
  energy_uj: 9205598137
  Constraint 0
    name: long_term
    power_limit_uw: 6000000
    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
    max_power_uw: 0

PL1 установлен на 6 Вт, а PL2 на 25 Вт, что сравнимо с 12 Вт и 20 Вт для Zimaboard 2 и 6 Вт и 12 Вт для бесшумного мини-ПК MINIX Z100 0dB на базе Intel N100 . Результаты сильно различаются. Тест был запущен повторно, на этот раз без фоновой активности, и результаты остались прежними. Была попытка изменить PL1 на 12 Вт в BIOS…

UP TWL BIOS Power Limits

… и запущено снова:

devkit@devkit-UP-TWL01:~$ sudo ./sbc-bench.sh -r
Starting to examine hardware/software for review purposes...

sbc-bench v0.9.72

Installing needed tools: distro packages already installed. 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

# AAEON UP-TWL01 V1.0 / N150

Tested with sbc-bench v0.9.72 on Sun, 16 Nov 2025 11:41:18 +0100.

### General information:

    Information courtesy of cpufetch:
    
    Name:                Intel(R) N150
    Microarchitecture:   Alder Lake
    Technology:          10nm
    Max Frequency:       3.600 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
    
    N150, 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    3600   Alder Lake
      1        0        1      700    3600   Alder Lake
      2        0        2      700    3600   Alder Lake
      3        0        3      700    3600   Alder Lake

7687 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 41.0°C:

    cpu0: OPP: 3600, Measured: 3586 

After at 60.0°C:

    cpu0: OPP: 3600, Measured: 3586 

### Performance baseline

  * memcpy: 8114.0 MB/s, memchr: 13553.3 MB/s, memset: 7975.7 MB/s
  * 16M latency: 151.8 120.6 152.6 121.1 151.1 123.5 110.6 118.4 
  * 128M latency: 183.2 145.0 183.6 144.9 182.1 176.8 146.7 136.9 
  * 7-zip MIPS (3 consecutive runs): 12706, 11158, 11208 (11690 avg), single-threaded: 3775
  * `aes-256-cbc     940630.29k  1246782.57k  1288999.85k  1299980.29k  1302861.14k  1301763.41k`
  * `aes-256-cbc     955755.29k  1246943.87k  1289035.35k  1300072.45k  1301504.00k  1303341.74k`

### PCIe and storage devices:

  * Realtek RTL8111/8168/8211/8411 PCI Express Gigabit Ethernet: Speed 2.5GT/s, Width x1, driver in use: r8169, 
  * 931.5GB "JMicron JMS583" as /dev/sda: USB, Driver=uas, 10Gbps (capable of 12Mbps, 480Mbps, 5Gbps, 10Gb/s Symmetric RX SuperSpeedPlus, 10Gb/s Symmetric TX SuperSpeedPlus)
  * 58.3GB "Kingston TY2964" HS400 Enhanced strobe eMMC 5.1 card as /dev/mmcblk0: date 05/2025, manfid/oemid: 0x000070/0x0100, hw/fw rev: 0x0/0x5b00000000000000
  * Winbond W25Q256JW 32MB SPI NOR flash, drivers in use: spi-nor/intel-spi

### Challenging filesystems:

The following partitions are NTFS: sda2 -> https://tinyurl.com/mv7wvzct

### Swap configuration:

  * /swap.img on /dev/mmcblk0p2: 4.0G (0K used) on MMC storage

### Software versions:

  * Ubuntu 24.04.3 LTS (noble)
  * Compiler: /usr/bin/gcc (Ubuntu 13.3.0-6ubuntu2~24.04) 13.3.0 / x86_64-linux-gnu
  * OpenSSL 3.0.13, built on 30 Jan 2024 (Library: OpenSSL 3.0.13 30 Jan 2024)    

### Kernel info:

  * `/proc/cmdline: BOOT_IMAGE=/boot/vmlinuz-6.14.0-35-generic root=UUID=eaca6cca-80e9-4aab-9a74-10fa0e135c4a ro quiet splash vt.handoff=7`
  * Vulnerability Reg file data sampling:    Mitigation; Clear Register File
  * Vulnerability Spec store bypass:         Mitigation; Speculative Store Bypass disabled via prctl
  * Vulnerability Spectre v1:                Mitigation; usercopy/swapgs barriers and __user pointer sanitization
  * Vulnerability Vmscape:                   Mitigation; IBPB before exit to userspace
  * Kernel 6.14.0-35-generic / CONFIG_HZ=1000

Waiting for the device to cool down.......... 34.0°C^C

11 410 MIPS в 7-zip — это уже больше похоже на правду. Следует отметить, что все последующие тесты проводились с PL1, установленным на 6 Вт (по умолчанию), а не на 12 Вт. Это не первый раз, когда AAEON устанавливает для своей платы консервативное значение PL1 , возможно, для повышения стабильности в условиях высоких температур, и они позволяют клиентам выбрать оптимальное значение в BIOS по мере необходимости.

Проверка функций UP TWL SBC

Ключевые аппаратные функции UP TWL SBC были проверены следующим образом:

  • HDMI – Видео: OK, Аудио: OK
  • Накопитель – Флеш-память eMMC: OK: 317 МБ/с последовательное чтение, 230 МБ/с последовательная запись.
    devkit@devkit-UP-TWL01:~$  iozone -e -I -a -s 100M -r 4k -r 16k -r 512k -r 1024k -r 16384k -i 0 -i 1 -i 2
                                                                        random    random      bkwd     record     stride                                        
                  kB  reclen    write    rewrite      read    reread      read     write      read    rewrite       read    fwrite  frewrite     fread   freread
              102400       4     57547     62208     41194     40885     37905     60357                                                                
              102400      16    131062    131451    117222    116387     84337    126055                                                                
              102400     512    202151    205965    256896    257999    251971    198250                                                                
              102400    1024    216926    214023    283977    283782    281250    212573                                                                
              102400   16384    230982    229794    317011    317484    317168    229200

    [Format Time: 0.0005 seconds]

  • Gigabit Ethernet – OK (iperf3 DL: 942 Мбит/с, UL: 942 Мбит/с, полный дуплекс: 938/935 Мбит/с)
  • USB-порты протестированы с внешним корпусом для NVMe SSD ORICO (раздел EXT-4), USB-мышью, RF-адаптером для беспроводной клавиатуры и USB-камерой
    • Комбинированный разъем USB 3.0
      • Верхний – 10 Гбит/с; протестировано до 999 МБ/с с iozone3
      • Нижний – 10 Гбит/с; протестировано до 1 007 МБ/с с iozone3
    • USB 3.0 на комбинированном разъеме Ethernet – 10 Гбит/с – протестировано до 1 009 МБ/с с iozone3
  • RTC – OK
    devkit@devkit-UP-TWL01:~$ sudo apt install util-linux-extra
    devkit@devkit-UP-TWL01:~$ timedatectl
                   Local time: Sun 2025-11-16 04:52:59 CET
               Universal time: Sun 2025-11-16 03:52:59 UTC
                     RTC time: Sun 2025-11-16 03:52:59
                    Time zone: Europe/Amsterdam (CET, +0100)
    System clock synchronized: yes
                  NTP service: active
              RTC in local TZ: no
    devkit@devkit-UP-TWL01:~$ sudo hwclock -r
    2025-11-16 04:53:08.509478+01:00

    [Format Time: 0.0004 seconds]

  • GPIO – OK – См. также распиновку 40-контактного GPIO-заголовка для всех плат UP .
    devkit@devkit-UP-TWL01:~$ ls /dev/gpiochip*
    /dev/gpiochip0  /dev/gpiochip1
    devkit@devkit-UP-TWL01:~$ sudo apt install libgpiod-dev gpiod
    devkit@devkit-UP-TWL01:~$ sudo gpioinfo 0
    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 
    ...
    devkit@devkit-UP-TWL01:~$ 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 
    ...

    [Format Time: 0.0008 seconds]

Все работает так, как и ожидалось по результатам этих тестов.

AI-тестирование на UP TWL с Intel N150 SBC

Поскольку это AI-комплект для разработки, на системе было запущено несколько AI-нагрузок с использованием Network Optix Nx Meta и AAEON UP AI toolkit

Network Optix Nx Meta

Началось с Nx AI Certification Test . Сначала его необходимо установить:

sudo apt dist-upgrade
sudo apt install python3-pip python3-venv
mkdir nxai_test
cd nxai_test
wget https://artifactory.nxvms.dev/artifactory/nxai_open/NXAITest/nxai_test.tgz
tar -xvf nxai_test.tgz
python3 -m venv ./ 
source ./bin/activate # activate python venv
pip3 install -r requirements.txt
./Utilities/install_nxai_manager.sh
python3 Utilities/install_acceleration_library.py
python3 Utilities/download_models.py

Последняя команда загрузит модели (около 3.5 ГБ данных) и может занять некоторое время. Теперь можно запустить все тесты:

python3 all_suites.py

Все происходит в терминале, визуализации нет. Есть две основные части: тесты производительности и тесты стабильности.

Вот конец лога AI-тестов производительности:

...
###################################################
All model benchmarks completed.
Benchmark results:
	 	Model-Yolov8s-[640x640]: 	2.02 FPS
	 	Model-ViT-Tiny: 	32.84 FPS
	 	Model-Yolov4-[1280x1280]: 	0.98 FPS
	 	Model-Yolov9-e-[640x640]: 	0.60 FPS
	 	Model-Yolov9-e-converted-[640x640]: 	0.32 FPS
	 	Model-Emotion-Recognizer: 	301.84 FPS
	 	Model-Yolov9-c-[640x640]: 	0.38 FPS
	 	Postprocessor-Illegal-Dumping: 	4.05 FPS
	 	Model-Yolov7-Tiny-[1280x1280]: 	1.05 FPS
	 	Pipeline-Feature-Extraction: 	79.20 FPS
	 	Model-Face-Locator: 	91.45 FPS
	 	80-classes-object-detector[640x640]: 	3.91 FPS
	 	Model-Yolov4-[320x320]: 	15.25 FPS
	 	Model-Resnet-50: 	8.77 FPS
	 	80-classes-object-detector[320x320]: 	15.24 FPS
	 	Model-Yolo5su-[640x640]: 	2.35 FPS
	 	Quantized-INT8: 	9.29 FPS
	 	Model-Resnet-18: 	19.32 FPS
	 	Model-Regnet-Y: 	69.17 FPS
	 	Model-Yolov7x-[1280x1280]: 	0.10 FPS
	 	Model-Yolov8l-[640x640]: 	0.44 FPS
	 	Model-Yolo5su-[1280x1280]: 	0.57 FPS
	 	Model-Yolov4-[128x128]: 	68.55 FPS
	 	Model-Yolov7-Tiny-[640x640]: 	4.12 FPS
	 	Quantized-FP32: 	9.09 FPS
	 	Model-Yolo5su-[256x256]: 	14.10 FPS
	 	Model-Densenet: 	0.33 FPS
	 	Pipeline-Direct: 	12.75 FPS
	 	Model-Yolov9-m-converted-[640x640]: 	0.79 FPS
	 	Model-Clip: 	6.28 FPS
	 	Model-Yolov4-[640x640]: 	3.90 FPS
	 	Multi-Model: 	19.08 FPS
	 	Quantized-FP16: 	6.24 FPS
	 	Model-Mobilenet-V3: 	48.45 FPS
	 	Empty-Small: 	789.06 FPS
	 	Pipeline-Conditional: 	189.31 FPS
	 	Model-Yolov9-[640x640]: 	0.61 FPS
	 	Model-Yolov9-converted-[640x640]: 	0.61 FPS
	 	Model-Yolov7x-[640x640]: 	0.36 FPS
	 	Model-Yolov9-m-[640x640]: 	0.66 FPS
	 	Empty-Large: 	103.27 FPS
	 	Model-PPE: 	9.37 FPS
	 	postprocessor-python-example: 	14.98 FPS
	 	postprocessor-c-example: 	15.73 FPS
	 	postprocessor-python-image-example: 	14.77 FPS
	 	postprocessor-c-image-example: 	14.75 FPS

Некоторые тесты выполняются с приемлемой скоростью, в то время как другие работают со скоростью менее 1 кадра/с. Эти данные о производительности будут использоваться для сравнения с результатами для Intel N150+Hailo-8L и Intel Core Ultra 5 225H в следующих частях обзора. При желании можно ознакомиться с полным логом тестов производительности .

Тест стабильности прошел успешно:

...
---------------------------------------------------
Running test:  multi_model_multi_stream_test
Creating backup settings file...
Loading test settings...
Creating Unix socket server...
Starting Edge AI Manager
Sending socket input
Messages: 413503        Rate 0: 5.66    Rate 1: 109.2
Sclblmod Memory:        8.32 MB         Relative to start: 100%
Sclbld Memory:  108.18 MB       Relative to start: 101%
Stopping Edge AI Manager
Terminated AI Manager: 0
Test completed succesfully.
Restoring backup settings file...
Test completed without unhandled exception.
---------------------------------------------------

-------------------------------------------------------

Tests passed: 6 / 6

Для этой части также сохранен полный лог .

Демонстрации AAEON UP AI toolkit

Во второй части AI-демонстраций будут использоваться примеры UP AI toolkit, доступные на GitHub .

Вот шаги для установки и запуска AAEON UP AI toolkit:

cd ~
git clone https://github.com/up-division/up-ai/
cd up-ai
chmod +x prepare.sh start_app.sh
./prepare.sh
sudo reboot
cd ~/up-ai 
./start_app.sh

Для меня все прошло не совсем гладко, так как в первый раз команда prepare завершилась следующим образом:

raise ReadTimeoutError(self._pool, None, "Read timed out.")
pip._vendor.urllib3.exceptions.ReadTimeoutError: HTTPSConnectionPool(host='files.pythonhosted.org', port=443): Read timed out.
Error setting up workers: /home/devkit/up-ai/demos/edge-ai-sizing-tool/workers/dlstreamer/venv/bin/python -m pip install -r requirements.txt exited with code 2
An error occurred: Command failed with exit code 1
npm notice
npm notice New major version of npm available! 10.9.4 -> 11.6.2
npm notice Changelog: https://github.com/npm/cli/releases/tag/v11.6.2
npm notice To update run: npm install -g npm@11.6.2
npm notice
Running driver installation script...
[sudo] password for devkit: 
Driver is already installed !
Enviroment Installation is Complete! Please Reboot!

Произошла ошибка загрузки, но если прочитать только последние несколько строк, может показаться, что установка прошла успешно, хотя это было не так (OpenVino не был установлен). Поэтому пришлось запустить команду снова, и во второй раз прогресс пошел дальше, но столкнулись с еще одним таймаутом (дважды), когда скрипт пытался загрузить TensorFlow. Возможно, полезно изменить зеркало pip, но в Таиланде найти не удалось. Тем не менее, в четвертый раз установка прошла (почти) успешно:

v, nvidia-cusolver-cu12, matplotlib, jsonschema-specifications, IPython, torch, seaborn, pymoo, keras, jsonschema, fastapi, ultralytics-thop, torchvision, tensorflow, nncf, ultralytics
ERROR: Could not install packages due to an OSError: [Errno 28] No space left on device

Error setting up workers: /home/devkit/up-ai/demos/edge-ai-sizing-tool/workers/object-detection/venv/bin/python -m pip install -r requirements.txt exited with code 1
An error occurred: Command failed with exit code 1
Running driver installation script...

Оказалось, что все эти AI-демонстрации занимают много места, и 64 ГБ флеш-памяти eMMC немного маловато:

devkit@devkit-UP-TWL01:~$ du -h --max-depth 1 | grep ai
3.2G	./nxai_test
25G	./up-ai

Поэтому были удалены nxai_test, некоторые кэшированные файлы из pip, и, наконец, установка прошла успешно:

Skipping npm install (node_modules already exists)
Skipping npm run build (build directory already exists)
Skipping setup-workers (venv folders already exist)
Checking for existing PM2 EAST application...
false
Starting EAST application with PM2...
pm2
[ 'start', 'npm', '--name', '"EAST"', '--', 'start' ]
[PM2] Starting /usr/bin/npm in fork_mode (1 instance)
[PM2] Done.
┌────┬────────────────────┬──────────┬──────┬───────────┬──────────┬──────────┐
│ id │ name               │ mode     │ ↺    │ status    │ cpu      │ memory   │
├────┼────────────────────┼──────────┼──────┼───────────┼──────────┼──────────┤
│ 0  │ "EAST"             │ fork     │ 0    │ online    │ 0%       │ 35.3mb   │
└────┴────────────────────┴──────────┴──────┴───────────┴──────────┴──────────┘
Running driver installation script...
Driver is already installed !
Enviroment Installation is Complete! Please Reboot!

Каталог up-ai занимает 33 ГБ после завершения установки:

devkit@devkit-UP-TWL01:~$ du -h --max-depth 1 | grep ai
33G	./up-ai

Это не включает несколько ГБ, необходимых для пакетов pip. По мере использования AI-демонстраций возникали дополнительные проблемы с емкостью хранилища, и в конечном итоге был подключен USB SSD для временного перемещения некоторых файлов на него, чтобы завершить этот обзор. 64 ГБ флеш-памяти явно недостаточно для AI-комплекта для разработки.

После перезагрузки можно попробовать приложение, запустив команду:

cd ~/up-ai
./start_app.sh

Здесь ожидалось меню, но вместо этого был запущен Firefox и открыт localhost:8080, предоставив доступ к UP Edge AI Sizing Tool.

UP Edge AI Sizing Tool dashboard

Это инструмент настройки без кода, который позволяет пользователям легко настраивать AI-приложения, выбирая входные данные, ускорители, режимы производительности и AI-модели прямо из веб-браузера. Чтобы начать, нажмите кнопку Add demo на левой панели. Затем можно выбрать демонстрацию Computer Vision, Natural speed или Audio demo. Была выбрана демонстрация Computer Vision для Object Detection с использованием USB-камеры UP. Было добавлено одно демо Yolo8s с использованием CPU Intel N150 и другое идентичное демо, использующее «Intel Graphics (GPU)».

UP Edge AI Sizing Tool Add demo

Можно нажать на демонстрацию на левой панели, чтобы запустить ее, и вывод камеры появится с рамками для выделения обнаруженных объектов. На панели управления также отображается частота кадров, около 1.25 кадра/с на CPU.

UP TWL DLStreamer object detection CPU framerate

Также можно проверить использование CPU, GPU и памяти во время выполнения AI-нагрузки. Здесь использование CPU близко к 100%, и на скриншоте ниже частота кадров упала до 1.04 кадра/с.

Up Edge AI Sizing Tool CPU object detection CPU GPU usage

Переключение на обнаружение объектов с ускорением на GPU улучшает скорость вывода до примерно 6-7 кадров/с.

UP TWL DLStreamer object detection GPU framerate

Использование CPU все еще близко к 100%, и GPU теперь используется немного больше. Использование памяти примерно такое же — 39% (от ~8 ГБ).

Up Edge AI Sizing Tool GPU object detection CPU GPU usage

После просмотра кода скрипта стало понятно, что нужно добавить параметр (любой), чтобы получить меню:

./start_app.sh menu
=============================
	Function Menu
=============================
1. Object detect -- Video
2. Object detect -- Camera
3. Chatbot
0. Exit
=============================
Please input :

Первый вариант будет использовать видео, хранящиеся во флеш-памяти eMMC, но поскольку камера подключена, был выбран вариант 2 для запуска обнаружения объектов с USB-камерой, поэтому он должен быть аналогичен вышеописанному, просто не в веб-браузере:

Intel N150 Camera Object detection installation Было сообщено, что OpenVino Object Detect уже установлен, но, поскольку этот тест никогда ранее не запускался, скрипту было предложено удалить и переустановить его. После завершения предлагается выбрать оборудование (единственным вариантом был Intel Device), и где его запускать — на CPU или GPU, был выбран последний.

Intel GPU Object Detection

Откроется окно с выводом камеры, рамками обнаружения и красным текстом с временем вывода (38.8 мс) и частотой кадров (25.9 кадра/с). Это намного быстрее, чем в веб-браузере…

GPU Object detection Intel N150

Также можно нажать клавишу «a», чтобы увидеть использование CPU и памяти.

UP TWL AI Object Detection CPU memory usage

Было возвращено в меню для установки Chatbot. Снова сообщили, что он уже установлен, поэтому продолжили без запроса новой установки, и она завершилась неудачей из-за отсутствующей демо-среды…

UP TWL AI Dev Kit Chatbot installation failed Поэтому был переустановлен OpenVino Chatbot, выбран Intel Device и tiny-llama-1b-chat — единственные предложенные варианты.

UP TWL Chatbot installation

Теперь Chatbot запущен и работает в веб-браузере. Скорость не слишком плохая, поскольку это всего лишь модель с 1 миллиардом параметров, но не стоит ожидать от нее больших знаний… Она может быть полезна для небольших пользовательских языковых моделей.

OpenVino tiny llama 1b chat chatbot

Потребляемая мощность

Поскольку это часто запрашивают, также было измерено энергопотребление комплекта для разработки с помощью настенного ваттметра:

  • Выключено – 1.6 -1.7 Вт
  • Простой – 5.2 – 5.5 Вт (вентилятор активен постоянно)
  • Стресс-тест (stress -c 4)
    • 18.2 – 18.6 Вт
    • 16.7 – 16.8 Вт
  • Обнаружение объектов – Камера + GPU – 17.6 – 18.1 Вт

Примечания: PL1 был установлен на 12 Вт. К плате были подключены HDMI-монитор ( Eazeye Radiant ), кабель Ethernet, USB-мышь и беспроводной USB-адаптер. Также была добавлена USB-камера UP для теста обнаружения объектов.

Заключение

UP TWL AI Dev Kit — это AI-комплект для разработки начального уровня, использующий только CPU и GPU однокристальной системы Intel Processor N150 Twin Lake. Это явно не мощная AI-платформа, но она может подойти для некоторых AI-нагрузок. Система поставляется с поддержкой Meta Nx, а также AAEON UP AI toolkit для легкого экспериментирования с AI-нагрузками. Основным недостатком стало то, что 64 ГБ флеш-памяти eMMC могут быстро заполниться, а UP TWL SBC не предлагает вариантов расширения хранилища, кроме как через порты USB 3.2 (10 Гбит/с).

В остальном все работает так, как и ожидалось, включая Gigabit Ethernet, относительно быструю флеш-память eMMC, HDMI-видео и аудиовыход, все три порта USB 10 Гбит/с, RTC, GPIO и т.д. Как обычно, компания довольно консервативна с лимитами мощности, и можно извлечь больше производительности, изменив лимиты мощности в BIOS, как было показано в этом обзоре.

Следующей будет UP Squared Pro TWL AI Dev Kit, также на базе однокристальной системы Intel N150 с 8 ГБ ОЗУ и 64 ГБ флеш-памяти eMMC, но поставляющаяся с модулем AI-ускорителя Hailo-8L M.2 для более высокой AI-производительности. Также будет обязательно установлен NVMe SSD M.2, чтобы избежать проблем с хранилищем, которые были с UP TWL AI Dev Kit.

Выражаю благодарность AAEON за предоставленный для обзора UP TWL AI Dev Kit. Его можно приобрести за 279 долларов в магазине UP . Комплект включает плату, блок питания 12В/5А и USB-камеру.

Выражаем свою благодарность источнику, с которого взята и переведена статья, сайту cnx-software.com.

Оригинал статьи вы можете прочитать здесь.

0 0 votes
Article Rating
Подписаться
Уведомление о
guest

Этот сайт использует Akismet для борьбы со спамом. Узнайте, как обрабатываются ваши данные комментариев.

0 Комментарий
Oldest
Newest Most Voted
Inline Feedbacks
View all comments