11

lgl · 9月14日

云芯一号上手体验和性能测试

正准备将之前淘汰了的笔记本改装为家庭服务器的时候,在极术社区的公众号上看到云芯一号的申请页面,抱着试试的心态填了申请,没想到居然通过了。特别感谢极术社区给的机会。星期天晚上收到了云芯一号,这里记录一下开箱体验和板子的性能。

开箱体验

快递箱挺大,打开后面一个小盒子,再俄罗斯套娃了两个小盒子,一个装的主板一个装的是电源,另外附带了一条Type-c的线。先上张图:
image.png
image.png
板子大小为10CM*6.8CM, 布线紧凑,接口丰富。

硬件

SOC

瑞星微 RK3399
CPU: Cortex-A72x2(2GHz)+Cortex-A53x4(1.5GHz)
GPU: Mali-T864, Open GL ES1.1/2.0/3.0/3.1, Open CL, DX11, AFBC
Multi-Media: VP9/VP8/H264/H265/VC-1/MPEG-1/2/4 decoder, H264/VP8 Encoder

存储

内存: 4G LPDDR4
Flash: eMMC 5.1 16G
microSD Slot 1

网络接口

千兆以太网接口 X 1
WIFI 802.11a/b/g/n/ac
蓝牙 4.1

视频

HDMI
USB Type-c
摄像头接口

音频

3.5双声道耳机输出出
HDMI输出
2Pin 2.54 ADC
MIC接口

USB

USB 2.0 Host A x 2
USB 3.0 Host A x 1
USB 3.0 Type-C x 1

供电

12V x 2A

其它接口

PCI-E x1
GPIO x40
RTC接口
UART

上电使用

原本想的是用串口看一下能否直接登录,丝印上标明的UART是2.0的PIN间距,没有合适的连接线。2.54的UART接口和ADC混在一起,PCB上没有丝印,不想测试了,就直接上网线ssh连接吧。

接上电源,连上网线,到路由里面去找jishu设备名,看对应的IP,就是板子DHCP到的IP,例如我的就是192.168.101.100
image.png
电脑上通过SSH连接192.168.101.100, windows上SSH客户端有很多,我用的是MobaXterm
image.png
Remote host中填入192.168.101.100, usename里面填入jishu,点OK之后按照步骤输入密码jishu5368即可。登录后如下:
image.png
好了,现在可以欢快的玩板子了。

最最最基础的设施

文件传输

云芯一号总共16G emmC, 直接被系统管理的8G
image.png
其中/dev/mmcblk1p9开机不会自动mount,需要在ssh下使用下面命令手动mount

mkdir ~/dat
sudo mount -t ext4 /dev/mmcblk1p9 ~/dat

目标虽然是将其当作家庭服务器,但一开始肯定迫不及待的要做一些事情,要从windows向上拷贝一些东西但又没功夫去假设ftp,nfs,samba之类,这里就用用到另外一个神器SCP,windows上常用的客户端WinSCP,安装后打开点击新建会话,按如下选择填写:
image.png
SCP使用的就是ssh协议所以填写的登录信息和ssh一样,登录后就可以看到板子上~下的内容了,你可以看见mount上的dat文件夹
image.png
注意这时直接向dat/内拷贝文件会提示无权限,在ssh下执行下面命令给予dat/权限

chmod 777 -R ~/dat/

之后就可以在两边拖动进行文件传输了。

安装编译环境

因为后面性能测试需要编译一些东西所以需要安装编译环境,这里只会用到gcc和make,在ssh下执行

sudo apt-get install gcc
sudo apt-get install make

我收到的板子源已经默认改到repo.huaweicloud.com和sdk.aijishu.com,速度还不错,不用修改源。

性能测试

UnixBench

UnixBench是一款开源的测试unix 系统基本性能的工具,是比较通用的测试VPS性能的工具。UnixBench会执行一系列的测试,包括2D和3D图形系统的性能衡量,测试的结果不仅仅只是CPU,内存,或者磁盘为基准,还取决于硬件,操作系统版本,编译器。

下载编译

https://github.com/kdlucas/by...~/dat,执行下面命令解压缩编译

tar -zxvf unixbench-5.1.3.tar.gz
cd ~/dat/byte-unixbench-5.1.3/UnixBench
make

编译后运行会提示错误"you may need to install the Time::HiRes module"原因是没用装prel module,解决方法如下

sudo apt-get install perl-modules

测试

执行下面命令即可开始测试

./Run

测试结果如下
image.png
image.png
测试的时候会提示找不到3dinfo,这和我在Ubuntu真机上测试是一样的,比较遗憾的是Unixbench在云芯一号上不能认识多核,只认识到一核,实际测试过程中通过htop观察,确实也只用了一核
image.png
测试的结果还是让人比较惊讶居然和我i5-8250低压U的单核性能相当
image.png
image.png

Sysbench

SysBench是一个模块化的、跨平台、多线程基准测试工具,这里用它来测试云芯1号的CPU/内存/文件IO

安装

sudo apt install sysbench

测试

测试CPU,将6个核占满测试

sysbench --test=cpu --cpu-max-prime=200000 --threads=6 run

image.png
image.png

测试内存

sysbench --test=memory run

image.png

测试IO

sysbench --test=fileio --file-test-mode=seqwr run

image.png

信息查看

查看软件信息

lsb_release -a
uname -a

image.png

硬件信息查看

sudo apt-get install lshw
sudo lshw

得到信息如下:
可以看到6个CPU核心,4G memory 6个USB host,1个未启用的wifi网卡,一个千兆网卡

jishu
    description: Computer
    product: Rockchip RK3399 Excavator Board (Linux Opensource)
    serial: s230200701c3yahubd
    width: 64 bits
    capabilities: smp cp15_barrier setend swp
  *-core
       description: Motherboard
       physical id: 0
     *-cpu:0
          description: CPU
          product: cpu-map
          physical id: 0
          bus info: cpu@0
          size: 408MHz
          capacity: 1416MHz
          capabilities: fp asimd evtstrm aes pmull sha1 sha2 crc32 cpufreq
     *-cpu:1
          description: CPU
          product: cpu
          physical id: 1
          bus info: cpu@1
          size: 408MHz
          capacity: 1416MHz
          capabilities: fp asimd evtstrm aes pmull sha1 sha2 crc32 cpufreq
     *-cpu:2
          description: CPU
          product: cpu
          physical id: 2
          bus info: cpu@2
          size: 408MHz
          capacity: 1416MHz
          capabilities: fp asimd evtstrm aes pmull sha1 sha2 crc32 cpufreq
     *-cpu:3
          description: CPU
          product: cpu
          physical id: 3
          bus info: cpu@3
          size: 408MHz
          capacity: 1416MHz
          capabilities: fp asimd evtstrm aes pmull sha1 sha2 crc32 cpufreq
     *-cpu:4
          description: CPU
          product: cpu
          physical id: 4
          bus info: cpu@4
          size: 1800MHz
          capacity: 1800MHz
          capabilities: fp asimd evtstrm aes pmull sha1 sha2 crc32 cpufreq
     *-cpu:5
          description: CPU
          product: cpu
          physical id: 5
          bus info: cpu@5
          size: 1800MHz
          capacity: 1800MHz
          capabilities: fp asimd evtstrm aes pmull sha1 sha2 crc32 cpufreq
     *-cpu:6 DISABLED
          description: CPU
          product: cpu
          physical id: 6
          bus info: cpu@6
     *-cpu:7 DISABLED
          description: CPU
          product: idle-states
          physical id: 7
          bus info: cpu@7
     *-memory
          description: System memory
          physical id: 8
          size: 3845MiB
  *-usbhost:0
       product: Generic Platform OHCI controller
       vendor: Linux 4.4.194 ohci_hcd
       physical id: 1
       bus info: usb@3
       logical name: usb3
       version: 4.04
       capabilities: usb-1.10
       configuration: driver=hub slots=1 speed=12Mbit/s
  *-usbhost:1
       product: EHCI Host Controller
       vendor: Linux 4.4.194 ehci_hcd
       physical id: 2
       bus info: usb@4
       logical name: usb4
       version: 4.04
       capabilities: usb-2.00
       configuration: driver=hub slots=1 speed=480Mbit/s
  *-usbhost:2
       product: xHCI Host Controller
       vendor: Linux 4.4.194 xhci-hcd
       physical id: 3
       bus info: usb@6
       logical name: usb6
       version: 4.04
       capabilities: usb-3.00
       configuration: driver=hub slots=1 speed=5000Mbit/s
  *-usbhost:3
       product: xHCI Host Controller
       vendor: Linux 4.4.194 xhci-hcd
       physical id: 4
       bus info: usb@5
       logical name: usb5
       version: 4.04
       capabilities: usb-2.00
       configuration: driver=hub slots=1 speed=480Mbit/s
  *-usbhost:4
       product: Generic Platform OHCI controller
       vendor: Linux 4.4.194 ohci_hcd
       physical id: 5
       bus info: usb@2
       logical name: usb2
       version: 4.04
       capabilities: usb-1.10
       configuration: driver=hub slots=1 speed=12Mbit/s
  *-usbhost:5
       product: EHCI Host Controller
       vendor: Linux 4.4.194 ehci_hcd
       physical id: 6
       bus info: usb@1
       logical name: usb1
       version: 4.04
       capabilities: usb-2.00
       configuration: driver=hub slots=1 speed=480Mbit/s
  *-network:0 DISABLED
       description: Wireless interface
       physical id: 7
       logical name: wlan0
       serial: b0:02:47:81:a4:69
       capabilities: ethernet physical wireless
       configuration: broadcast=yes driver=wl driverversion=0 multicast=yes wireless=IEEE 802.11
  *-network:1
       description: Ethernet interface
       physical id: 8
       logical name: eth0
       serial: 00:0e:c6:f7:ca:a1
       size: 1Gbit/s
       capacity: 1Gbit/s
       capabilities: ethernet physical tp aui bnc mii fibre 10bt 10bt-fd 100bt 100bt-fd 1000bt 1000bt-fd autonegotiation
       configuration: autonegotiation=on broadcast=yes driver=st_gmac driverversion=March_2013 duplex=full ip=192.168.101.100 link=yes multicast=yes port=MII speed=   1Gbit/s

小结

云芯一号的接口非常丰富,作为家庭服务器足够。从benchmark测试来看性能也不错,有待后续搭建应用后进一步测试。能找到的硬件资料偏少,希望社区能多放一些诸如接口定义或者原理图还有SOC Spec之类的资料,同时能提供GPIO/I2C/SPI等SOC片上驱动,让其可玩性更强。

后续将外挂1T的硬盘,并架设samba,nfs,ftp,http server,git server,简单作为家庭开发的资料存储中心。

更多云芯一号的玩法请关注Arm微服务器专栏。
11 阅读 216
推荐阅读
0 条评论
关注数
70
内容数
71
低成本Arm微服务器开发平台“云芯1号”教程及应用,欢迎关注
目录
极术微信服务号
关注极术微信号
实时接收点赞提醒和评论通知
Arm中国学堂公众号
关注Arm中国学堂
实时获取免费 Arm 教学资源信息
Arm中国招聘公众号
关注Arm中国招聘
实时获取 Arm 中国职位信息