您现在的位置是:首页 > 正文

Firefly支持AI引擎Tengine,性能提升,轻松搭建AI计算框架

2024-01-30 23:56:48阅读 0

Tengine&RK3399介绍

Tengine

OADI/Tengine | github

Tengine 是OPEN AI LAB 为嵌入式设备开发的一个轻量级、高性能并且模块化的引擎。
Tengine在嵌入式设备上支持CPU,GPU,DLA/NPU,DSP异构计算的计算框架,实现异构计算的调度器,基于ARM平台的高效的计算库实现,针对特定硬件平台的性能优化,动态规划计算图的内存使用,提供对于网络远端AI计算能力的访问支持,支持多级别并行,整个系统模块可拆卸,基于事件驱动的计算模型,吸取已有AI计算框架的优点,设计全新的计算图表示。

RK3399

Firefly-RK3399 | Firefly
Firefly-RK3399资料下载 | Firefly

作为Firefly新一代的顶级开源平台,Firefly-RK3399采用了六核64位“服务器级”处理器Rockchip RK3399,拥有2GB/4GB DDR3和16G/32GB eMMC, 并新增DP 1.2、PCIe 2.1 M.2、Type-C、USB3.0 HOST等高性能数据传输和显示接口。Firefly-RK3399强大的性能配置将给VR、全景拍摄、视觉识别、服务器、3D等前沿技术带来里程碑的变革。

RK3399系统烧录

系统烧录是玩开发板重要的一步,学会如何为开发板烧录系统,就可以无所畏惧地瞎捣鼓——玩坏了大不了就重刷系统!
参考RK3399资料 | Firefly论坛

  1. 下载烧录工具和系统镜像
    烧录工具下载地址 | 百度云
    系统镜像下载地址 | 百度云
    系统镜像选择Firefly-RK3399-ubuntu16.04-20180416112819,下载下来是一个tar压缩包,解压后得到一个img镜像文件;
    烧录工具的压缩包解压后包含一个AndroidTool的烧录工具以及一个DriverAssitant驱动程序;
  2. 按照USB驱动
    解压DriverAssitant_v4.5的压缩包,运行其中的Driverinstall.exe程序,点击“驱动安装”,按照步骤安装即可;

    系统烧录-驱动安装

  3. 使RK3399进入升级模式
    用USB线连接PC和RK3399,Type-A端接PC,Type-C端接RK3399;
    RK3399断电,按住RECOVERY键并接上电源(或在通电情况下,按住RECOVERY然后轻按RESET重启),保持两三秒后松开RECOVERY键,此时启动PC的设备管理器(快捷键Win+X,可以找到设备管理器入口),如果看到多出一个Class for rockusb devices设备说明RK3399成功进入升级模式
  4. 系统烧录
    运行AndroidTool.exe,切换到“升级固件”选项卡,点击“固件”并选择下载的镜像文件(扩展名为.img),然后点击“升级”开始烧录,右边的log会输出相关的信息,直到“下载固件成功”以及“重启设备成功”说明成功完成烧录。
    镜像烧录成功

RK3399远程访问

有时候专门为RK3399外接显示器和键鼠不大方便,我们可以通过ssh或vnc来远程访问;
首先让RK3399连接上网络(有线或无线),然后快捷键ctrl+alt+t呼出终端,输入指令ifconfig查看当前的网络配置——

 

ifconfig


其中eth0wlan0分别是有线和无线网络的配置信息,我这里连接的是无线网,可以看到wlan0下有一项inet addr,这是设备在无线网络上的ip地址,把后边这串地址192.168.50.176记下来待会用得上。(如果你接的是有线网络,那么也可以在eth0下找到相应的inet addr地址)
推荐一个非常实用的免费远程连接工具:MobaXterm

 

ssh

烧录的系统镜像本身自带一个ssh服务器openssh-server,不需要我们额外安装。直接打开MobaXterm,点击左上角的Session
Mobaxterm_ssh1

按照下图进行配置——
Mobaxterm_ssh2

配置完就可以通过远程连接到RK3399的终端上——
Mobaxterm_ssh3

既可以直接在PC上远程执行指令,也可以方便地在PC和RK3399之间传输文件。

vnc

ssh只能连接到RK3399上的纯文本模式的终端,如果你需要进一步控制RK3399的界面,可以额外安装vnc服务;
打开终端,刷新apt源:

sudo apt-get update

安装x11vnc:

sudo apt-get install x11vnc

为vnc服务生成密码(按照提示输入密码,并写入文件):

x11vnc -storepasswd

添加服务:

sudo vim /lib/systemd/system/x11vnc.service

为x11vnc.service添加以下内容然后保存&#

网站文章

  • 街上第一台电子计算机是,2010年计算机等级考试公共基础知识模拟试题

    街上第一台电子计算机是,2010年计算机等级考试公共基础知识模拟试题

    学校 姓名 班级马街中学初中信息技术学业水平测试卷(考试时间:50分钟 满分:100分)一、 单项选择题(20题,每小题3分,共60分)1、王明收到某大学录取通知书时,该大学已经开学一个月了,王明因为错过了报到时间,而被取消了入学资格,这说明信息具有__________。A:时效性 B:共享性 C:真伪性 ...

    2024-01-30 23:56:19
  • 人人可用的开源数据可视化分析工具-DataEase

    人人可用的开源数据可视化分析工具-DataEase

    DataEase是一种开源的关系型数据库管理系统,旨在帮助用户创建和管理各种类型的数据。它是一种易于使用的工具,适用于各种规模的企业和组织,从个人使用到大型公司使用。GitHub - dataease...

    2024-01-30 23:56:11
  • Excel表格如何上传到服务器

    接口的写法 HttpPostedFile file = null; foreach (string upload in Request.Files.AllKeys) { if (Request.Files[upload] == null) { continue; } ...

    2024-01-30 23:56:04
  • Django学习之Forms组件一

    1>概念 django框架提供了一个Form类,来进行web开发中的表单提交数据的处理工作。 form组件的2大功能: 1 对用户提交的内容进行验证(from表单/Ajax,显示错误信息) 2 保留用户上次输入的信息 -- 可以生成html标签 先看一下创建一个Form表单实现校验功能的基本语法,如下, 自定义的类要继...

    2024-01-30 23:55:35
  • Qt 常用函数一

    Qt 常用函数一

    Qt 常用函数一.QWidget1.setWindowTitle()2.setWindowModality()3.setWindowFlags() 一.QWidget 1.setWindowTitle...

    2024-01-30 23:55:30
  • Java中List和ArrayList的区别及使用

    Java中List和ArrayList的区别 List是一个接口,而ArrayList是List接口的一个实现类 ArrayList类继承并实现了List接口 因此,List接口不能创建实例对象,但是...

    2024-01-30 23:55:23
  • 【华为机试真题 Python实现】华为机试题整理(已更新211篇) 热门推荐

    拆分输出字符串 求n阶方阵里所有数的和 合法的三角形个数 整型数组求整数对最小和 机器人走迷宫【2022 Q1 Q2 |200分】 数格子 两个超大整型数相加 字符串格式化输出【2022 Q1 Q2 ...

    2024-01-30 23:55:17
  • buffer和cache的区别

    buffer和cache的区别

    一,计算机硬件组成 转载自: buffer和cache的区别. 计算机硬件组成:CPU,存储器,输入输出设备(I/O),其他(主板,电源等) CPU:运算器,控制器 存储器:内部存储器(ROM/RAM...

    2024-01-30 23:54:48
  • 测试用例设计方法

    测试用例设计方法

    测试用例设计方法如何全面系统地组织测试等价类是建立在这种思想之上——即我们不可能进行穷举测试,那么我们就 必须对输入进行分类,而这种分类是建立在我们知道计算机程序设计原理和 计算机处理单元的工作原理基...

    2024-01-30 23:54:41
  • JDK的安装与环境变量配置

    JDK安装与环境变量配置JDK介绍JDK (JAVA Development Kit) 是整个Java的核心,包括Java运行环境、Java工具和Java基础的类库。当用户要对Java程序进行编译时,...

    2024-01-30 23:54:34