今天,我们团队感受了一下在树莓派3B的主板上运行64bit系统的感觉!那种感觉您如果有幸感受的话,您一定会说:这才是我要的树莓派3B!
体验Debian 9 arm64版本的感觉总结如下:
作为一个专业的用户,我们必须从专业的角度来做一次真实的评测。
硬件测试环境:
- RaspberryPi 3 Model B
- 16GB Class 10 TF卡
- 5v2.5A电源
- 以太网网线及能连外网路由设备
软件测试环境:
- GEEEKPI-64bit-beta(内核移植版)
操作系统是基于Debian 9的arm64位源码,Debian 9目前还没发布,目前属于beta版,RaspberryPi 官方也没有发布64bit操作系统的计划,但是我们迫切需要64bit的性能!
另外,只有pi3有64bit的CPU,所以只有Raspberry Pi 3B可以跑这个系统。
评测参照组硬件环境与之前提到的环境一致,软件环境为:
Raspbian-2017-03-02 该系统为32bit
此次评测的关键是看64位系统对树莓派速度的提升,同时关注树莓派的温度,开机速度,CPU性能,数据库性能,网络性能,内存性能和多线程性能。
- 首先开机后联网,两台设备全部进入字符界面(console)模式,外部不连接任何外设,通过ssh远程登录到两台主机上,然后安装sysbench软件进行压力测试,并通过htop简单的进行观察。
- 执行命令为:
sudo apt-get update && sudo apt-get –y install sysbench htop iperf3
- 首先我们进行对照组的评测
进入系统检查系统版本及硬件架构信息:
系统仍然保留了ext4文件系统,同时看到shell环境bash的软件结构为32bit。
3.1测试CPU性能:
Raspbian-2017-03-02-jessie
sysbench —test=cpu —num-threads=1 —max-requests=10000 run
结果:
Debian-9-arm64bit-beta
sysbench —test=cpu —num-threads=1 —max-requests=10000 run
结果:
总结:
367.2971/25.1195=14.622倍
4 线程测试:
Raspbian-2017-03-02-jessie
sysbench —test=cpu —num-threads=4 —max-requests=100000 run
结果:
Debian-9-arm64bit-beta
sysbench —test=cpu —num-threads=4 —max-requests=100000 run
结果:
总结结果:
测试4线程的结果是:1017/62=16.40 倍,64位系统仍然占据领先优势
8线程测试:
Raspbian-2017-03-02-jessie
sysbench —test=cpu —num-threads=8 —max-requests=100000 run
结果:
Debian-9-arm64bit-beta
sysbench —test=cpu —num-threads=8 —max-requests=100000 run
结果:
3.2 测试内存性能
内存随机测试:
Raspbian-2017-03-02-jessie
sysbench —test=memory --memory-block-size=1K –memory-total-size=1G --memory-access-mode=rnd run
结果:
Debian-9-arm64bit-beta
sysbench --test=memory --memory-block-size=1K --memory-total-size=1G --memory-access-mode=rnd run
结果:
内存连续测试:
Raspbian-2017-03-02-jessie
sysbench —test=memory --memory-block-size=1K –memory-total-size=1G --memory-access-mode=seq run
结果:
Debian-9-arm64bit-beta
sysbench --test=memory --memory-block-size=1K --memory-total-size=1G --memory-access-mode=seq run
结果:
3.3 测试网络性能:
Raspbian-2017-03-02-jessie
Debian-9-arm64bit-beta
3.4 八线程测试:
Raspbian-2017-03-02-jessie
sysbench --test=threads --num-threads=1000 --thread-yields=1000 --thread-locks=8 run
结果:
Debian-9-arm64bit-beta
sysbench --test=threads --num-threads=1000 --thread-yields=1000 --thread-locks=8 run
结果:
在进行多线程测试的时候,我选择了1000线程共享8个锁。
3.5 互斥锁测试
Raspbian-2017-03-02-jessie
sysbench --test=mutex --mutex-num=4096 --mutex-locks=50000 --mutex-loops=10000 run
结果:
Debian-9-arm64bit-beta
sysbench --test=mutex --mutex-num=4096 --mutex-locks=50000 --mutex-loops=10000 run
结果:
3.6 文件连续读写:
Raspbian-2017-03-02-jessie
sysbench --test=fileio --file-num=2 --file-total-size=64M --file-test-mode=seqrewr run
结果:
Debian-9-arm64bit-beta
sysbench --test=fileio --file-num=2 --file-total-size=64M --file-test-mode=seqrewr run
结果:
随机文件读写:
Raspbian-2017-03-02-jessie
sysbench --test=fileio --file-num=2 --file-total-size=64M --file-test-mode=rndwr run
结果:
失败了,不支持随机读写。
Debian-9-arm64bit-beta
sysbench --test=fileio --file-num=2 --file-total-size=64M --file-test-mode=rndwr run
结果:
4.进入系统检查系统版本信息及硬件架构平台信息
发现架构已经是64bit,并且新增了一款f2fs文件系统,F2FS是三星与华为一起开发的针对TF卡,SSD,EMMC等等闪存优化的文件系统,对延长设备使用寿命,提升设备性能有很大的帮助,同时支持传统的ext4文件系统。
总结:
下面通过一张表来进行对比:
测试项目 | Raspbian
2017-03-03 |
Debian 9 Arm64bit | 提升倍数 |
系统信息 | Arm 32bit/ext4文件系统 | Aarm64bit/f2fs文件系统 | 见文件系统测试 |
CPU单线程 | 367.2971 | 25.1195 | 14.62倍
|
四线程 | 1017.6742 | 62.6079 | 16.40倍 |
八线程 | 1920.0601 | 62.6711 | 30.64倍 |
内存随机 | 5.7678 | 2.1925 | 2.63倍 |
内存连续 | 6.3309 | 2.9392 | 2.15倍 |
网络性能 | 74.6Mbps | 94.3Mbps | 1.26倍 |
文件连续读写 | 5.7655 | 7.1506 | 见下文说明 |
文件随机读写 | 不支持 | 21.8336 | 无 |
互斥锁性能 | 0.0231s | 0.0186s | 1.24倍 |
最后总结:
文件系统采用了三星与华为合力开发的f2fs,针对mmc和emmc还有tf存储进行了优化,除了大大提升了性能之外,还增加了TF卡的使用寿命,提供了意外断电文件系统的保护,大大避免意外断电导致的文件系统崩溃的情况。
其中由于TF卡的细微差异,导致文件连续读写出现了反转,实际上通过测试文件连续读写的性能方面,f2fs更加优化,超越ext4很多倍。
总体上,64位的系统提供了更好的使用体验,我身边曾经抱怨树莓派跑opencv性能不能够够超越nanopi的小伙伴也逐渐改变了他们的看法,很多朋友表示,曾经在家吃灰的树莓派终于等到了扬眉吐气的这一天!
我个人觉得这次的树莓派性能提升虽然不是硬件层面的提升,但是带来的体验已经超越了以前的各种开发板平台,从树莓派官方的表现来看,今年树莓派官方没有发布新款树莓派设备,而是努力完善了操作系统,在另一个层面上也展示了其对树莓派生态的关注,软件系统的提升将会让树莓派的运行性能和效率上升到一个新的层次,虽然目前的Debian 9 Arm64bit的beta版未能提供图形界面的环境,但是作为服务器端的应用更加明显了,感谢这次提供测试系统的GEEEKPI团队所有成员,为树莓派3B的测试提供了非常好的测试环境和测试硬件!相信未来的树莓派3B上会有更多更好的应用展现出来!让我们拭目以待!
可是说了这么多了~有下载的地方么。。。。
你好,我烧写完64bit的系统后,系统无法启动。不知道你遇到过这个问题么。
** Unable to read “uboot.env” from mmc0:1 **
Using default environment
In: serial
Out: lcd
Err: lcd
Net: Net Initialization Skipped
No ethernet found.
starting USB…
USB0: Core Release: 2.80a
scanning bus 0 for devices… 3 USB Device(s) found
scanning usb for storage devices… 0 Storage Device(s) found
scanning usb for ethernet devices… 1 Ethernet Device(s) found
Hit any key to stop autoboot: 0
switch to partitions #0, OK
mmc0 is current device
Scanning mmc 0:1…
Found EFI removable media binary efi/boot/bootaa64.efi
reading efi/boot/bootaa64.efi
606208 bytes read in 73 ms (7.9 MiB/s)
libfdt fdt_check_header(): FDT_ERR_BADMAGIC
## Starting EFI application at 0x01000000 …
Scanning disks on usb…
Scanning disks on mmc…
MMC Device 1 not found
MMC Device 2 not found
MMC Device 3 not found
Found 5 disks
Welcome to GRUB!
error: terminal `gfxterm’ isn’t found.
EFI stub: Booting Linux Kernel…
EFI stub: UEFI Secure Boot is enabled.
EFI stub: Using DTB from configuration table
EFI stub: Exiting boot services and installing virtual address map…
看上去像是无法读取 uboot.env这个文件,你用的是什么镜像? 烧录在什么设备上?
识别不了mmc设备,内核编译的有问题。
64bit的系统是有的,但是图形支持不是很好,如果你不介意字符界面操作也是很好的。