0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

如何使用NVIDIA建立纯声波图像

星星科技指导员 来源:NVIDIA 作者:Yuval Borenstein 2022-04-27 10:12 次阅读

Pure SONiC 是 SONiC 的版本,它消除了对供应商的依赖。社区开发、公开可用和 100% 开源使您能够构建与所需社区分支同步的纯 SONiC 映像。这意味着 SONiC 的每一行代码和 SAI ( switch abstraction interface )的 NVIDIA 实现只需点击一下 主映像 。

NVIDIA 当您选择 Pure SONiC 时,我们将致力于您的成功。为了确保 Pure SONiC 得到强化和限定, NVIDIA 建议使用特定的公共哈希来构建映像,这是一种在特定时间点对 Git 存储库进行快照的机制。通过广泛的 QA ,在所有 NVIDIA 平台上验证传递给用户的每个公共散列。此外, NVIDIA 承认需要有价值的文件。发行说明和用户手册与特定的公共哈希绑定。

建立一个纯粹的声波图像

下面是我如何建立我的纯声波图像,包括 ZTP ,运行在我的 NVIDIA Mellanox Spectrum 开放式以太网交换机上。我的解决方案受到了关于 GitHub 的 构建 SONiC 交换机映像 教程的启发。默认情况下,在回购的 生成配置文件 中禁用 ZTP 。

Spectrum 交换机预装了 ONIE ( open network install environment ),这是一个引导加载程序,提供了在裸机交换机系统上安装任何网络操作系统的环境。 ONIE 允许最终用户自动安装网络操作系统,作为数据中心配置的一部分,类似于 ONIE 交换机管理 Linux 服务器的方式。

我的构建服务器由 24 核 CPU 、 250 GB 构建存储和 64 GB RAM 组成,运行在 Ubuntu16.04 上, Docker 版本 18.03.0-ce 、 Python 和 jinja2 。我发现我的构建配置至少需要 100 GB 的可用磁盘空间。最终的构建目录消耗了大约 30gb 。在构建时间对业务至关重要的情况下,我建议升级 CPU 和 RAM 以允许更多的内核并行工作,从而缩短构建时间。

出于自动化和代码重用的目的,我将代码分为三个短文件:

build.cfg :初始化公共环境变量并由其他文件进行源处理。

gitsonic.sh :获取公共 git 存储库源代码。

build.sh :执行生成。

运行脚本执行构建过程。

第一步:创建 build.cfg

# An example to hash that was qualified by NVIDIA
SONICBRANCH=201911
COMMITHASH="bea968b"
BLDBRANCH="${SONICBRANCH}"
BUILD_NUMBER="00005"
let BLDNUM="${BUILD_NUMBER}"

#ZTP is disabled by default per community decision. I found it useful to enable in my build, more
#options are available in the file ./rules/config
ENABLE_ZTP="y"

SONIC_IMAGE_VERSION="SONIC.${SONICBRANCH}.${BLDNUM}-${COMMITHASH}_Internal"
SONIC_OVERRIDE_BUILD_VARS='
SONICIMAGE_VERSION=SONIC.${SONICBRANCH}.${BLDNUM}-${COMMITHASH}_Internal
BUILD_NUMBER=${BLDNUM} ENABLE_ZTP=y'
BLDDIR="./sonic-buildimage_${BLDBRANCH}_${BUILD_NUMBER}_${COMMITHASH}_ZTP"

第二步:创建 sonicgit.sh

#!/bin/bash
source ./build.cfg

if [ -d "${BLDDIR}" ];then
 echo "directory sonic-buildimage already exists, aborting git"
 exit 1
fi

# git clone the top-level
# source code from the public repository, SONICBRANCH=201911

git clone -b ${SONICBRANCH} https://github.com/Azure/sonic-buildimage.git

# move the cloned source to a build-specific named directory
# avoid overwriting earlier versions that you may need.
mv ./sonic-buildimage "${BLDDIR}"

# If you are making any changes to the latest checked in branch, you must make
# changes to the configuration.
# Because you are making changes, create a build branch based on the specific commit hash
#this git branch information shows up in the build image,
#when you run command $show version from the switch command line.

cd "${BLDDIR}"
git checkout -b "${BLDBRANCH}" ${COMMITHASH}

# the git clone step only pulls the top-level module.
# the underlying submodules must be recursively
# init-ed and updated.

git submodule update --init --recursive

#display the status
echo "${BLDDIR}"
git status | grep branch

第 3 步:创建 build.sh

#!/bin/bash

source ./build.cfg

#Helper functions start###
function checkErrors()
{
 X=`grep -i -c "${1}" "${2}"`
 if [ "${X}" != "0" ];then
 grep -i -n "${1}" "${2}"
 fi
}

function doSetup()
{
 CONFIGZTP="ENABLE_ZTP=${ENABLE_ZTP}"
 CONFIGSONIC="{$CONFIGZTP}"
}

function doMakeConfig()
{
 #Execute make configure once to configure ASIC
 #make configure PLATFORM=[ASIC_VENDOR]
 make configure PLATFORM=mellanox
}

# Build SONiC image
function doMake()
{
 LOGFILE="../logs/${BLDDIR}.log"
 echo "time make
SONIC_BUILD_JOBS=24 ${SONIC_OVERRIDE_BUILD_VARS}
target/sonic-mellanox.bin" > "${LOGFILE}"
 time make SONIC_BUILD_JOBS=24 ${SONIC_OVERRIDE_BUILD_VARS} target/sonic-mellanox.bin | tee "${LOGFILE}"
 checkErrors "fail" "${LOGFILE}"
 checkErrors "warning" "${LOGFILE}"
 checkErrors "error" "${LOGFILE}"
}
#Helper functions end###

cd "${BLDDIR}"
doSetup
doMakeConfig
doMake

概括

步骤 1-3 中描述的构建过程将生成启用 ZTP 的纯声波图像。一些人会认为,这张图片展示了开放网络的最佳状态:构建一个开源操作系统,消除对供应商的依赖。

关于作者

Yuval Borenstein 是 NVIDIA 的以太网交换机产品经理。在此之前的几年里, Borenstein 先生在 NVIDIA 担任过多个芯片设计职位,负责开发 InfiniBand 和以太网交换机。尤瓦尔拥有以色列理工学院电子工程学士学位和特拉维夫大学和西北大学的联合工商管理硕士学位。

审核编辑:郭婷

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • cpu
    cpu
    +关注

    关注

    68

    文章

    10442

    浏览量

    206560
  • RAM
    RAM
    +关注

    关注

    7

    文章

    1321

    浏览量

    113705
  • 服务器
    +关注

    关注

    12

    文章

    8116

    浏览量

    82509
收藏 人收藏

    评论

    相关推荐

    NVIDIA Omniverse中的物理模拟功能

    NVIDIA Omniverse™ Simulation 作为 NVIDIA Omniverse™ 平台的关键组件之一,由 NVIDIA 技术提供动力支持,包括 PhysX®、Flow、Blast 和 AI 等技术。
    的头像 发表于 03-08 11:30 314次阅读
    <b class='flag-5'>NVIDIA</b> Omniverse中的物理模拟功能

    NVIDIA ADAS-英伟达硬件芯片Orin解析

    2020年4月上市的小鹏汽车P7,成为首款搭载 NVIDIA DRIVE AGX Xavier 自动驾驶平台的量产车型,小鹏 P7 配备了13 个摄像头、5 个毫米波雷达、12 个超声波雷达,集成开放式的 NVIDIA DRIV
    发表于 12-25 09:54 3169次阅读
    <b class='flag-5'>NVIDIA</b> ADAS-英伟达硬件芯片Orin解析

    NVIDIA 知乎精彩问答甄选 | 查看关于 NVIDIA Omniverse 的相关精彩问答

    NVIDIA 带来知乎精彩问答甄选系列,将为您精选知乎上有关 NVIDIA 产品的精彩问答。 本期为问答甄选第十八期 ——  查看关于 NVIDIA Omniverse 的相关精彩问答 以下两个
    的头像 发表于 12-01 18:40 224次阅读
    <b class='flag-5'>NVIDIA</b> 知乎精彩问答甄选 | 查看关于 <b class='flag-5'>NVIDIA</b> Omniverse 的相关精彩问答

    NVIDIA GPU的核心架构及架构演进

    在探讨 NVIDIA GPU 架构之前,我们先来了解一些相关的基本知识。GPU 的概念,是由 NVIDIA 公司在 1999 年发布 Geforce256 图形处理芯片时首先提出,从此 NVIDIA
    发表于 11-21 09:40 436次阅读
    <b class='flag-5'>NVIDIA</b> GPU的核心架构及架构演进

    声波流量计的管道安装方法

    外壁上,不受介质影响,安装简便快速,无需切断工艺管道,无需工艺停车,并且无压损,非常适合于测量腐蚀性介质和超介质其压损也几乎为零,其测流量的方便性与经济性是*佳的。 二、在具有危险性场合时,应选用防爆超声波
    发表于 11-13 14:15

    虹科与MaxBotix正式建立合作伙伴关系

    近日,虹科与MaxBotix正式建立合作关系,将共同致力于提供高精度、工业级耐用性、功能先进和有防水保护的超声波传感器,重新定义距离测量技术。
    的头像 发表于 10-30 16:34 298次阅读

    NVIDIA 知乎精彩问答甄选 | 分享 NVIDIA 在艺术创作方面的精彩问答

    NVIDIA 在艺术创作方面的进展进行精彩的回答! Q:  NVIDIA 在艺术创作领域有什么新应用吗? A: 无论是塑造能展露情绪的逼真角色,还是将简单的文本转换成图像,强大的 AI 技术正在
    的头像 发表于 10-13 20:30 278次阅读

    NVIDIA最强CPU芯片架构——NVIDIA Grace CPU

    NVIDIA Grace Hopper Superchip将节能、高带宽的 NVIDIA Grace CPU 与功能强大的 NVIDIA H100 Hopper GPU 结合使用 NVLink-C2C,以最大限度地提高强大的高性
    发表于 08-30 10:45 980次阅读
    <b class='flag-5'>NVIDIA</b>最强CPU芯片架构——<b class='flag-5'>NVIDIA</b> Grace CPU

    Nvidia AI剑走偏锋;MIT水泥破局出奇

    亲爱的朋友,欢迎收看河套IT WALK总第90期。 Nvidia的最新AI图像生成器Perfusion正在改变我们对图像生成的认知,而MIT的电化水泥技术为未来城市的能源解决方案提供了新的希望
    的头像 发表于 08-02 19:50 281次阅读
    <b class='flag-5'>Nvidia</b> AI剑走偏锋;MIT水泥破局出奇

    用于图像分类和物体检测的深度学习

    使用 Dataiku 和 NVIDIA Data Science 进行主题建模和图像分类
    的头像 发表于 07-05 16:30 224次阅读
    用于<b class='flag-5'>图像</b>分类和物体检测的深度学习

    在线研讨会 | 释放 Vision Transformers、NVIDIA TAO 和最新一代 NVIDIA GPU 的潜力

    )相比,它不仅提供了超高的准确性,还使图像理解和分析提升到了前所未有的水平。 NVIDIA 让您可以利用 ViTs 的强大功能为 AI 应用提供助力。参与本次研讨会,一起来了解如何将 ViTs
    的头像 发表于 06-16 11:45 347次阅读
    在线研讨会 | 释放 Vision Transformers、<b class='flag-5'>NVIDIA</b> TAO 和最新一代 <b class='flag-5'>NVIDIA</b> GPU 的潜力

    怎么做才能通过Jetson Xavier AGX构建android图像呢?

    我正在使用 Nvidia 的 Jetson Xavier AGX 按照“android 用户指南”为 imx8 qm Mek 套件构建 android 图像(android 13)。当我运行命令
    发表于 06-07 08:58

    奥比中光将接入 NVIDIA Omniverse开发平台

    5月30日-6月2日,COMPUTEX 2023(台北国际电脑展)正式举办。NVIDIA 创始人兼CEO黄仁勋在 COMPUTEX 2023 大会主题演讲中介绍了NVIDIA全球产业数字化生态布局
    的头像 发表于 05-31 09:03 643次阅读

    NVIDIA “魔盒”有哪些“内涵”

    飞凌AI边缘计算终端FCU3001采用 NVIDIA Jetson Xavier NX定制开发,先来一张产品开箱后的“全家福”: ​ AI 边缘计算终端FCU3001的体积非常小巧,整机尺寸仅为
    发表于 05-26 14:12

    NVIDIA、于利希超算中心和 ParTec 将一同建立量子计算实验室

    于利希研究中心(FZJ)的于利希超算中心(JSC)联合建立一座新的实验室,朝着混合量子-经典计算迈出了重要一步。该实验室将与慕尼黑的 ParTec AG 一起在 NVIDIA 量子计算平台的基础上开发一台经典-量子超级计算机。 该实验室将由欧洲最大的跨学科研究中心之一——
    的头像 发表于 05-23 07:10 280次阅读