intel NCS 1代SDK(持续探索)

2022-06-15 16:14:28 浏览数 (1)

前几天我写了这个一代的SDK的内容(好像是两天前),但是意犹未尽,隔靴搔痒,今天继续深入挖掘。

intel NCS 1代SDK<-----传送门

右边是安装的脚本,左边是下载的安装文件,也就是依赖的so库

继续看

API的枚举信息,其实我喜欢C了变得,比CPP纯粹好多

对应的结果

最后返回的结果

v1的API不多,就这几个

初始化的函数里面其实是在USB的接口处做文章

不管怎么说都是一个USB的设备

看一个USB设备的写操作,通过trasfer函数发送出去

代码语言:javascript复制
#define USB_MAX_PACKET_SIZE 1024 * 1024 * 10

以及USB rule的安装

可以写一个简单的demo,调用函数来寻找注册到的设备:

函数的实现

在内部重新的对函数堆栈进行清空

到返回值是OK就可以继续执行以下的程序了。

Python的demo就很简单了

不过这个是V1的API,功能很弱:

代码语言:javascript复制
https://movidius.github.io/ncsdk/ncapi/ncapi2/c_api/readme.html

V2就可以使用了

这个东西的原理大概是,在通用的计算机上构建一个图神经网络模型,就好像是水管一样,真真正正的的耗算力的地方是将数据注入,NCS其实工作就是把这个图模型放到芯片上去单独的运行。这也就是频繁的出现Graph的原因。

0 人点赞