今天继续带着大家揭秘Seeed公司这台可以插入4个Jetson NANO/NX模组的系统。
大家应该还记得这台系统的长相吧,巴掌大的空间可以组成一个Jetson集群?让我来揭秘(1)
今天的任务就是要试着把这台系统装起来,跑起来!
电源
首先第一个要解决电源供电的问题。要能带动4个模组,还是通过Type-C供电,到底是需要什么样子的电源呢?
Seeed说:65W PD
我们用的是这款:
注意能输出12V/3A是关键!!!
需要用到一根Type C公头对Type C公头的线
这样接才是正确的打开方式——不要问我是怎么知道的....
安装模组
接下来就是装模组了。
我们是从3个Jetson NANO B01版本开发套件上分别拆了3个模组,所以是带TF卡的。同时又拆了1个Jetson Xavier NX开发套件上的模组,所以这块也是带TF卡的。
注意:Jetson NANO 2GB开发套件的模组和Jetson NANO 4GB A02版本开发套件的模组都不支持这个载板!市场上单独销售的Jetson NANO模组和Jetson Xavier NX模组,也就是自带16G eMMc都是支持的。
安装后是这个样子:
有开发者之前给我留言问是必须插入4个才能工作么?目前测试是不管插入1个,2个,还是3个都可以工作,任何组合都可以。
注意这四个节点,分1个主节点和3个从节点。
系统USB口对应的节点如图:
刷机
就用NVIDIA官方镜像刷机包就可以,正常刷TF卡,没有什么特别的地方,所以这里就不讲了。
开机
接电源,会看到风扇转起,闪着迷人的光芒
从这个观察孔可以看到4个节点的指示灯也亮起来了。
插入网线获取P
这个步骤是获得每个节点的网络IP,以便于可以SSH访问到每个节点,进行登陆与管理。
如何获取IP我们跳过不说,因为每个人的网路环境可能都不一样,讲起来也复杂。
获取好每个节点的IP后,我们就可以SSH了,比如SSH到主节点,看到
我们主节点插的是Jetson Xavier NX开发套件里的模组,刷的是JetPack 4.4.1
然后分别SSH到3个从节点,可以看到从节点我们插入的是Jetson NANO开发套件的模组,刷的是Jetpack 4.4DP .
可见小版本号不一致也没什么影响。
安装集群环境
我们开始安装MPI环境,
sudo apt-get update
sudo apt-get -y install openssh-server git htop python3-pip python-pip nano mpich mpi-default-dev
(可以左右滑动代码)
注意是需要SSH到每个节点进行安装。
接着需要生成一个SSHkey
先要在主节点上生成一个Key
ssh-keygen
然后用下面这个指令复制到各个节点(包括主节点)
ssh-copy-id <IP-ADDRESS>
最后在主节点上生成一个集群文件,一行一个节点,比如这样:
192.168.1.51
192.168.1.52
等等
测试
我们通过运行NVIDIA simpleMP的例子,来看看我们有没有成功。
这个截图显示了我们在一个NANO上执行的结果,你会看到花费了29秒;同时在3个NANO上跑,花费了12秒。
这个截图显示了在主节点,也就是NX上跑,花费是4秒。但是当我们将4个节点全部运行起来,同时让NX执行6份任务,每个NANO执行1份任务时候,花费时间是5秒。
运行结果是这样子的。
表明集群配置是成功的。
总结:
能在如此小的空间里实现4个节点集群,确实很让人惊叹。对于搭建小规模集群来说,节省了很多的线路,比如电源线和网线。
大风扇的设计,十分炫酷,目前看来散热是稳定的。也没有什么噪音。
用MPI搭建集群配置环境并不复杂。
根据Seeed公司透露的消息,这套系统(不含模组)售价不到200美金,极具性价比。据说将在本月上市销售。