В июле этого года появилась первая часть обзора SBC Khadas VIM3 с процессором Amlogic A311D и примерно месяц назад этот одноплатный компьютер был протестирован с Android, а также было рассмотрено в какие игры на нем можно играть.
Производительность графики и общие результаты тестов в Android были довольно хорошие, особенно те результаты, которые были получены с радиатором для охлаждения, поскольку они соответствовали собственным результатам Khadas с радиатором + вентилятором. Поэтому сейчас будет установлена последняя версия Ubuntu 18.04, доступная на тот момент (19 июля) для того, чтобы повторить все тесты в Linux и посмотреть, какие будут результаты.
Системная информация в Ubuntu 18.04:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 |
khadas@Khadas:~$ cat /etc/lsb-release DISTRIB_ID=Ubuntu DISTRIB_RELEASE=18.04 DISTRIB_CODENAME=bionic DISTRIB_DESCRIPTION="Ubuntu 18.04.2 LTS" khadas@Khadas:~$ uname -a Linux Khadas 4.9.179 #73 SMP PREEMPT Fri Jul 19 09:56:46 CST 2019 aarch64 aarch64 aarch64 GNU/Linux khadas@Khadas:~$ df -h Filesystem Size Used Avail Use% Mounted on udev 305M 0 305M 0% /dev tmpfs 187M 9.5M 177M 6% /run /dev/rootfs 15G 2.6G 12G 19% / tmpfs 931M 0 931M 0% /dev/shm tmpfs 5.0M 4.0K 5.0M 1% /run/lock tmpfs 931M 0 931M 0% /sys/fs/cgroup tmpfs 187M 12K 187M 1% /run/user/1000 khadas@Khadas:~$ free -m total used free shared buff/cache available Mem: 1861 358 1100 10 402 1479 Swap: 930 0 930 |
Была попытка установить armbianmonitor, чтобы нарисовать несколько хороших графиков температуры, как это было сделано с Raspberry Pi 4:
1 2 3 4 5 6 |
wget https://github.com/armbian/build/raw/master/packages/bsp/common/usr/bin/armbianmonitor sudo cp armbianmonitor /usr/bin/ sudo chmod +x /usr/bin/armbianmonitor sudo apt-key adv --recv-keys --keyserver keyserver.ubuntu.com 2C0D3C0F sudo wget http://goo.gl/vewCLL -O /etc/apt/sources.list.d/rpimonitor.list sudo armbianmonitor -r |
Но при установке появилась ошибка:
1 2 3 4 |
sudo armbianmonitor -r Installing RPi-Monitor. This can take up to 5 minutes. Be patient please/usr/bin/armbianmonitor: line 189: /etc/armbian-release: No such file or directory Now you're able to enjoy RPi-Monitor at http://192.168.1.8:8888 |
И не смотря на то, что можно загрузить веб-страницу с отображением верхнего меню, она не будет показывать никаких данных, поскольку, вероятно, она работает только на Armbian.
SBC Bench на Khadas VIM3
Теперь давайте скачаем SBC Bench:
1 |
wget https://raw.githubusercontent.com/ThomasKaiser/sbc-bench/master/sbc-bench.sh |
Обратите внимание, что пришлось закомментировать CheckLoad в скрипте, потому что среднее значение процессора Amlogic будет сходиться к 1,0 вместо 0,0 в режиме бездействия. Это происходило и на ODROID-N2. Теперь можно запустить тест на VIM3 с предустановленным радиатором:
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 |
sudo /bin/bash ./sbc-bench.sh -c sbc-bench v0.6.8 Installing needed tools. This may take some time... Done. Checking cpufreq OPP... Done. Executing tinymembench. This will take a long time... Done. Executing OpenSSL benchmark. This will take 3 minutes... Done. Executing 7-zip benchmark. This will take a long time... Done. Executing cpuminer. This will take 5 minutes... Done. Checking cpufreq OPP... Done. ./sbc-bench.sh: line 802: [: too many arguments ./sbc-bench.sh: line 805: 80 67817 - 80 532 : syntax error in expression (error token is "67817 - 80 532 ") ATTENTION: Throttling might have occured on CPUs 0-3. Check the log for details. ./sbc-bench.sh: line 802: [: too many arguments ./sbc-bench.sh: line 805: 84 28235 - 84 69 : syntax error in expression (error token is "28235 - 84 69 ") ATTENTION: Throttling might have occured on CPUs 4-5. Check the log for details. Memory performance (big.LITTLE cores measured individually): memcpy: 2130.6 MB/s memset: 7418.0 MB/s memcpy: 5036.1 MB/s memset: 8135.3 MB/s (0.9%) Cpuminer total scores (5 minutes execution): 6.91,6.90,6.89,6.88,6.87,6.86,6.85,6.84,6.82,6.79,6.76,6.71,6.64 kH/s 7-zip total scores (3 consecutive runs): 5754,5448,5306 OpenSSL results (big.LITTLE cores measured individually): type 16 bytes 64 bytes 256 bytes 1024 bytes 8192 bytes 16384 bytes aes-128-cbc 158465.23k 470183.21k 901837.14k 1210448.55k 1344091.48k 1352657.58k aes-128-cbc 359546.09k 862461.76k 1355292.42k 1570375.34k 1650657.96k 1652086.10k aes-192-cbc 149392.59k 415316.37k 736699.48k 933361.66k 1011316.05k 1016801.96k aes-192-cbc 330477.60k 734483.16k 1031148.89k 1200931.16k 1248881.32k 1238275.41k aes-256-cbc 146340.63k 382336.90k 638294.87k 780882.94k 834742.95k 838423.89k aes-256-cbc 309884.73k 654790.34k 929396.14k 1037305.51k 1057524.39k 1061644.97k 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. |
Были некоторые ошибки, но тест завершен и полные результаты можно посмотреть здесь. Выглядит не очень, с большим количеством пропусков тактов (троттлинга):
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 |
System health while running 7-zip multi core benchmark: Time big.LITTLE load %cpu %sys %usr %nice %io %irq Temp 19:29:07: 2208/1398MHz 5.87 4% 0% 3% 0% 0% 0% 72.0°C 19:29:29: 1000/1000MHz 6.26 84% 1% 83% 0% 0% 0% 73.0°C 19:29:50: 1000/1000MHz 6.40 91% 1% 90% 0% 0% 0% 72.9°C 19:30:11: 1200/1200MHz 6.64 87% 2% 85% 0% 0% 0% 72.6°C 19:30:32: 1000/1000MHz 6.38 86% 1% 85% 0% 0% 0% 72.7°C 19:30:53: 1200/1000MHz 6.29 87% 0% 86% 0% 0% 0% 72.7°C 19:31:13: 1000/1000MHz 6.24 88% 1% 86% 0% 0% 0% 72.8°C 19:31:33: 1000/1200MHz 6.66 93% 2% 91% 0% 0% 0% 72.7°C 19:31:55: 1000/1000MHz 6.47 85% 1% 84% 0% 0% 0% 72.5°C 19:32:15: 1200/1200MHz 6.23 86% 1% 85% 0% 0% 0% 72.3°C 19:32:35: 1000/1200MHz 6.58 87% 1% 85% 0% 0% 0% 72.5°C 19:32:56: 1000/1200MHz 6.82 94% 2% 92% 0% 0% 0% 72.4°C System health while running cpuminer: Time big.LITTLE load %cpu %sys %usr %nice %io %irq Temp 19:33:06: 2208/1398MHz 6.53 7% 0% 6% 0% 0% 0% 72.7°C 19:33:27: 1000/1000MHz 6.80 99% 0% 99% 0% 0% 0% 72.7°C 19:33:49: 1000/1000MHz 6.86 100% 0% 99% 0% 0% 0% 72.2°C 19:34:10: 1000/1000MHz 6.96 100% 0% 99% 0% 0% 0% 72.5°C 19:34:32: 1200/1000MHz 7.10 100% 0% 99% 0% 0% 0% 72.6°C 19:34:53: 1200/1200MHz 7.07 100% 0% 99% 0% 0% 0% 72.6°C 19:35:14: 1000/1000MHz 7.12 100% 0% 99% 0% 0% 0% 72.6°C 19:35:36: 1000/1000MHz 7.08 100% 0% 99% 0% 0% 0% 72.1°C 19:35:57: 1200/1200MHz 7.17 100% 0% 99% 0% 0% 0% 72.5°C 19:36:18: 1000/1200MHz 7.20 100% 0% 99% 0% 0% 0% 72.5°C 19:36:40: 1000/1000MHz 7.14 100% 0% 99% 0% 0% 0% 72.6°C 19:37:01: 1000/1000MHz 7.17 100% 0% 99% 0% 0% 0% 72.5°C 19:37:23: 1000/1000MHz 7.33 100% 0% 99% 0% 0% 0% 72.2°C 19:37:45: 1200/1000MHz 7.23 100% 0% 99% 0% 0% 0% 72.2°C Throttling statistics (time spent on each cpufreq OPP) for CPUs 0-3: 1800 MHz: 730.53 sec 1704 MHz: 1.87 sec 1608 MHz: 0.63 sec 1512 MHz: 2.49 sec 1398 MHz: 11.03 sec 1200 MHz: 264.31 sec 1000 MHz: 672.85 sec 667 MHz: 0 sec 500 MHz: 0 sec 250 MHz: 0 sec 100 MHz: sec Throttling statistics (time spent on each cpufreq OPP) for CPUs 4-5: 2208 MHz: 962.30 sec 2100 MHz: 72.99 sec 2016 MHz: 51.18 sec 1908 MHz: 47.23 sec 1800 MHz: 9.68 sec 1704 MHz: 5.51 sec 1608 MHz: 8.84 sec 1512 MHz: 9.15 sec 1398 MHz: 2.29 sec 1200 MHz: 232.89 sec 1000 MHz: 281.66 sec 667 MHz: 0 sec 500 MHz: 0 sec 250 MHz: 0 sec 100 MHz: sec |
Если сравнить результаты с Raspberry Pi 4 с радиатором и без него, то видно, что-то не так с многопоточным 7-zip тестом:
результаты memset и memcpy довольно хороши, поскольку являются однопоточными, а вот AES примерно в 10 раз быстрее на VIM3.
Если вам интересно, почему так, вот подсказка:
1 2 |
file /usr/bin/apt /usr/bin/apt: ELF 64-bit LSB shared object, ARM aarch64, version 1 (SYSV), dynamically linked, interpreter /lib/ld-, for GNU/Linux 3.7.0, BuildID[sha1]=3beb63c750eae93ef7ee09743cb01578d5f32262, stripped |
Khadas VIM3 работает под управлением Ubuntu 18.04 64-бит, тогда как RPi 4 под Debian 10 32-бит, это означает, что он может использовать криптографические расширения Armv8, тогда как плата Raspberry Pi не может. Стоит обратить внимание, что это может повлиять только в некоторых решениях.
Самое удивительно, что температура никогда не поднималась выше 73°C и компания Khadas утверждает, что у платы может начаться троттлинг, если температура достигает 75°C. По каким-то причинам система с радиатором работает на полную в Android, но в Linux, похоже, нужно дополнительно охлаждении. Для справки: процессор Broadcom BCM2711 в Raspberry Pi может нагреваться до 85°C, поэтому пока не понятно, проявляет ли компания Amlogic особую предосторожность в данном случае.
Установка вентилятора на Khadas VIM3
Тем не менее, компания предлагает опционально охлаждающий вентилятор 3705, который был специально разработан для их плат VIM и Edge. Он продается в их магазине за $14.95.
Вентилятор имеет четыре провода, поскольку он управляется с помощью ШИМ, это означает, что его можно отключить и / или можно регулировать скорость в зависимости от температуры или пользовательских настроек.
Он поставляться с четырьмя винтами, которые нужны для крепления к радиатору.
Далее радиатор нужно установить на SBC, а также подключить кабель к 4-контактному разъему вентилятора.
Теперь можно установить верхнюю крышку корпуса и прикрутить ее. Для примечания, плата не использовалась некоторое время, поэтому давайте попробуем обновить систему следующим образом:
1 2 3 |
sudo apt update sudo apt dist-upgrade sudo reboot |
Система обновилась с Ubuntu 18.04.2 до Ubuntu 18.04.3 и начала загружаться, но с некоторыми забавными цветами на дисплее.
Оказывается, это все было потому, что пакет u-boot изменил имя и не был автоматически обновлен. Поэтому был переустановлен вручную:
1 2 |
sudo apt install --reinstall linux-u-boot-vim3-vendor sudo reboot |
После переустановки тест был запущен снова:
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 |
sudo /bin/bash ./sbc-bench.sh -c [sudo] password for khadas: sbc-bench v0.6.8 Installing needed tools. This may take some time... Done. Checking cpufreq OPP... Done. Executing tinymembench. This will take a long time... Done. Executing OpenSSL benchmark. This will take 3 minutes... Done. Executing 7-zip benchmark. This will take a long time... Done. Executing cpuminer. This will take 5 minutes... Done. Checking cpufreq OPP... Done. ATTENTION: Throttling might have occured on CPUs 4-5. Check the log for details. Memory performance (big.LITTLE cores measured individually): memcpy: 2049.4 MB/s memset: 7360.1 MB/s memcpy: 5037.7 MB/s memset: 9321.2 MB/s (1.0%) Cpuminer total scores (5 minutes execution): 13.10,13.09,13.08,13.07,13.05,12.99 kH/s 7-zip total scores (3 consecutive runs): 8589,8589,8588 OpenSSL results (big.LITTLE cores measured individually): type 16 bytes 64 bytes 256 bytes 1024 bytes 8192 bytes 16384 bytes aes-128-cbc 158488.14k 470345.41k 902567.51k 1210803.88k 1344648.53k 1353383.94k aes-128-cbc 391893.01k 963920.28k 1460022.19k 1667237.21k 1752132.27k 1758445.57k aes-192-cbc 150968.87k 418386.50k 736863.49k 933591.72k 1012277.25k 1017271.64k aes-192-cbc 363905.69k 858793.26k 1226616.66k 1399928.83k 1461602.99k 1466078.55k aes-256-cbc 146373.89k 385097.66k 638347.43k 781122.56k 835392.85k 837626.54k aes-256-cbc 351193.97k 784096.90k 1094371.67k 1208373.93k 1253968.55k 1257248.09k Full results uploaded to http://ix.io/1U7s. Please check the log for anomalies (e.g. swapping or throttling happenend) and otherwise share this URL. |
Это больше похоже на то, что sbc-bench обнаружил троттлинг в big ядрах:
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 |
System health while running 7-zip multi core benchmark: Time big.LITTLE load %cpu %sys %usr %nice %io %irq Temp 10:28:41: 2208/1800MHz 5.83 12% 0% 12% 0% 0% 0% 51.2°C 10:29:02: 2208/1800MHz 6.00 77% 1% 75% 0% 0% 0% 65.1°C 10:29:22: 2208/1800MHz 6.36 85% 1% 84% 0% 0% 0% 66.1°C 10:29:43: 2208/1800MHz 6.17 84% 1% 83% 0% 0% 0% 71.3°C 10:30:03: 2208/1800MHz 6.56 85% 1% 83% 0% 0% 0% 69.7°C 10:30:24: 2208/1800MHz 6.44 87% 1% 86% 0% 0% 0% 62.3°C 10:30:45: 2208/1800MHz 6.26 79% 1% 78% 0% 0% 0% 69.6°C 10:31:05: 2208/1800MHz 5.89 81% 1% 79% 0% 0% 0% 63.2°C System health while running cpuminer: Time big.LITTLE load %cpu %sys %usr %nice %io %irq Temp 10:31:24: 2208/1800MHz 6.27 18% 0% 18% 0% 0% 0% 59.5°C 10:31:45: 2208/1800MHz 6.54 99% 0% 99% 0% 0% 0% 71.3°C 10:32:06: 2208/1800MHz 6.67 100% 0% 99% 0% 0% 0% 71.5°C 10:32:26: 2208/1800MHz 6.77 100% 0% 99% 0% 0% 0% 71.3°C 10:32:47: 2208/1800MHz 6.91 100% 0% 99% 0% 0% 0% 71.3°C 10:33:08: 2208/1800MHz 6.93 100% 0% 99% 0% 0% 0% 71.2°C 10:33:29: 2208/1800MHz 7.03 100% 0% 99% 0% 0% 0% 71.2°C 10:33:50: 2208/1800MHz 7.02 100% 0% 99% 0% 0% 0% 71.2°C 10:34:11: 2208/1800MHz 7.02 100% 0% 99% 0% 0% 0% 71.2°C 10:34:31: 2208/1800MHz 7.01 100% 0% 99% 0% 0% 0% 71.1°C 10:34:52: 2208/1800MHz 7.01 100% 0% 99% 0% 0% 0% 71.1°C 10:35:13: 2208/1800MHz 7.14 100% 0% 99% 0% 0% 0% 71.2°C 10:35:34: 2208/1800MHz 7.10 100% 0% 99% 0% 0% 0% 71.2°C 10:35:55: 2208/1800MHz 7.07 100% 0% 99% 0% 0% 0% 71.2°C 10:36:16: 2208/1800MHz 7.05 100% 0% 99% 0% 0% 0% 71.1°C Throttling statistics (time spent on each cpufreq OPP) for CPUs 4-5: 2208 MHz: 1721.62 sec 2100 MHz: 0 sec 2016 MHz: 0 sec 1908 MHz: 0.07 sec 1800 MHz: 0 sec 1704 MHz: 0 sec 1608 MHz: 0 sec 1512 MHz: 0 sec 1398 MHz: 0 sec 1200 MHz: 0 sec 1000 MHz: 0 sec 667 MHz: 0 sec 500 MHz: 0 sec |
Если посмотреть внимательно на детали, то троттлинга на самом деле не произошло, поскольку частота упала до 1908 МГц только на семь десятых секунды, а температура не превысила 72°C.
После загрузки системы вентилятор в основном выключен и по мере увеличения рабочей нагрузки скорость и шум возрастают. Чтобы полностью избежать троттлинга, нужно отредактировать файл /boot/env.txt и изменив “auto” на “high”, и после перезагрузиться. Это заставит вентилятор вращаться постоянно с высокой скоростью.
Давайте посмотрим, как выглядят новые результаты по сравнению с Raspberry Pi 4 как на частоте 1.5 ГГц, так и на разогнанной до 2.0 ГГц. На этот раз, как и ожидалось, Khadas VIM3 опередил Raspberry Pi 4 в тесте 7-zip, благодаря своему вентилятору. Результаты memset и memcpy также стали немного лучше.
Результаты теста OpenSSL / AES также показали, что Khadas VIM3 почти в 20 раз быстрее, чем Raspberry Pi 4 на стандартной частоте, благодаря 64-битному пользовательскому пространству.
Speedometer 2.0
SBC bench отлично подходит для тестирования безголовых сценариев использования, но для людей, которые планируют использовать плату в настольных сценариях, таких как просмотр веб-страниц, был запущен тест Speedometer 2.0 на Khadas VIM3 с радиатором и вентилятором, используя предварительно загруженный Chromium.
Как видите, результаты в значительной степени стабильны и VIM3 достигает 25.6 запусков в минуту. Давайте посмотрим, на что способен Raspberry Pi 4, разогнанный до 2.0 ГГц.
Khadas VIM3 действительно быстрее,но не значительно. Обратите внимание, что Speedometer 2.0 работает по протоколу https, поэтому используется SSL / TLS, но это лишь небольшая часть рабочей нагрузки.
Также была попытка протестировать производительность графического процессора, но Ubuntu 18.04.3 на Khadas VIM3, похоже, пока не поддерживает его, либо могли возникнуть какие-то проблемы во время обновления:
1 2 |
es2gears EGLUT: failed to initialize EGL display |
Как только тест заработает, будет сделан отдельный обзор о производительности графического процессора.
Обратите внимание, что Khadas VIM3 (2 ГБ ОЗУ) продается за $99, тогда как эквивалентный Raspberry Pi 4 (2 Гб) стоит всего $45. Однако VIM3 имеет и другие преимущества с точки зрения воспроизведения мультимедиа и надлежащей поддержки HDMI 2.0 (поддерживается 4K YUV420).
Выражаем свою благодарность источнику из которого взята и переведена статья, сайту cnx-software.com.
Оригинал статьи вы можете прочитать здесь.