一次国产化搭配:麒麟V10、FT2000/4、华为Atlas200

一次国产化搭配:麒麟V10、FT2000/4、华为Atlas200

一次国产化搭配:麒麟V10、FT2000/4、华为Atlas200

这次工程实践对象硬件由FT2000/4(主芯片)、华为Atlas200(从设备)组成,在FT2000/4安装麒麟V10 Server操作系统。目标是在这套设备设备上运行AI推理模型并进行软件开发。

FT2000/4是兼容ARM V8指令集的国产CPU,采用ARM交叉编译的程序可以直接在这款芯片运行。麒麟V10 Server是采用CentOS内核的国产操作系统,现在由于CentOS停服,他开始采用华为开源的OpenEuler作为内核。

首先,我们得有一个通过PCIE交互的FT2000/2、华为Atlas200板卡。

1 Atlas200驱动和固件安装

驱动版本:Atlas-200-npu-driver_21.0.4_linux-aarch64.run

固件版本:Atlas-200-npu-firmware_1.80.22.2.220.run

首次安装按照先驱动后固件的顺序。

./Atlas-200-npu-driver_21.0.4_linux-aarch64.run --full
./Atlas-200-npu-firmware_1.80.22.2.220.run --full

完成安装可通过npu-smi info能查看到设备信息。

接下来将按照EP模式开发的AI推理代码在开发环境完成ARM交叉编译后放到设备上即可运行。

2 麒麟V10下安装常用软件

没想到在麒麟V10 Server上安装g++、qt5和VNC花了非常多时间。在麒麟V10上安装软件最好通过yum install,但是最近几天完全连不上源,甚至麒麟的官网也无法打开。解决方法就是等,或者通过devtoolset7下载部分rpm手动安装。

2.1 配置静态IP

安装的麒麟V10系统配置静态IP和CentOS类似。

编辑文件 /etc/sysconfig/network-scripts/ifcfg-xxxx

TYPE=Ethernet //以太网
PROXY_METHOD=none
BROWSER_ONLY=no
BOOTPROTO=static //静态IP
IPADDR=192.168.137.101 //IP地址
NETMASK=255.255.255.0 //子网掩码
GATEWAY=192.168.137.1 //网关
DNS1=8.8.8.8 //dns 域名解析
DNS2=114.114.114.114
DNS3=119.29.29.29
DEFROUTE=yes
IPV4_FAILURE_FATAL=no
IPV6INIT=yes
IPV6_AUTOCONF=yes
IPV6_DEFROUTE=yes
IPV6_FAILURE_FATAL=no
IPV6_ADDR_GEN_MODE=stable-privacy
NAME=enaphyt4i0
UUID=129a0897-321e-4bba-ba5e-f1932164e403
DEVICE=enaphyt4i0
ONBOOT=yes //设置为yes,表示系统启动时激活网络接口

配置后重启网络

systemctl restart network

2.2 设置系统时间

一开始系统时间是2019年,这造成编译代码出错提示时间问题。

采用date命令修改系统时间

date -s "2022-08-12 9:13:20"

再采用hwclock命令将系统时间同步到硬件时间,确保硬件重启后时间依然有效。其中"-u"表示将时间转换为UTC格式。

hwclock -uw

2.3 更新源

下面是麒麟v10的源,在官网正常后该源恢复使用。

/etc/yum.repos.d/kylin_aarch64.repo

[ks10-adv-os]
name = Kylin Linux Advanced Server 10 - Os
baseurl = http://update.cs2c.com.cn:8080/NS/V10/V10SP2/os/adv/lic/base/$basearch/
gpgcheck = 1
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-kylin
enabled = 1

[ks10-adv-updates]
name = Kylin Linux Advanced Server 10 - Updates
baseurl = http://update.cs2c.com.cn:8080/NS/V10/V10SP2/os/adv/lic/updates/$basearch/
gpgcheck = 1
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-kylin
enabled = 1

[ks10-adv-addons]
name = Kylin Linux Advanced Server 10 - Addons
baseurl = http://update.cs2c.com.cn:8080/NS/V10/V10SP2/os/adv/lic/addons/$basearch/
gpgcheck = 1
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-kylin
enabled = 0

清楚源缓存

yum clean all

生成源缓存

yum makecache

可通过下面的命令查看已安装及可安装的包。其中带@的是已安装包。

yum list

2.4 安装软件

安装c++

yum install gcc-c++

安装qt5

yum install qt5-qtbase qt5-qtbase-devel qt5-qtquickcontrols2-devel qtcreator

安装vnc

yum install tigervnc-server

2.5 配置vnc和qt5

VNC是远程控制软件,在设备上安装VNC-SERVICE,在电脑上安装VNC-Viewer,就能通过VNC-Viewer远程链接设备。连接后呈现一个可视化窗口,我们变可以在可视化窗口启动 qtcreator 进行软件开发。参考链接[3]进行配置。

通过此命令设置开机自启动VNC服务

systemctl start vncserver@:1.service
systemctl enable vncserver@:1.service
systemctl status vncserver@:1.service

我们使用qtcreator创建工程,先通过VNC连接到设备,然后在VNC中打开终端输入 qtcreator 启动。

在VNC打开终端

打开qtcreator

打开qtcreator

在打开的qt工程中配置qt路径

配置qt路径

配置调试选项,避免一debug就弹出SIGSTOP。

配置debugger GDB

完:)

订阅快讯

通过快讯订阅,您将及时收到我们的信息更新通知。