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

    文章

    11331

    浏览量

    225906
  • RAM
    RAM
    +关注

    关注

    8

    文章

    1401

    浏览量

    121012
  • 服务器
    +关注

    关注

    14

    文章

    10365

    浏览量

    91763
收藏 人收藏
加入交流群
微信小助手二维码

扫码添加小助手

加入工程师交流群

    评论

    相关推荐
    热点推荐

    Adobe和NVIDIA宣布达成战略合作伙伴关系

    Adobe 和 NVIDIA 今日宣布建立战略合作伙伴关系,以加速 AI 赋能的创作、生产和个性化,包括提供新一代基础 Adobe Firefly 模型和智能体工作流。
    的头像 发表于 03-19 15:32 557次阅读

    视觉自动驾驶的优势和劣势有哪些?

    激光雷达,也一直饱受争议。今天智驾最前沿就围绕视觉自动驾驶,聊聊它的优劣。 什么是视觉自动驾驶 所谓视觉自动驾驶,是指车辆不依赖激光雷达、毫米波雷达等主动传感器,而是仅依靠车载摄像头和
    的头像 发表于 01-18 09:50 2356次阅读
    <b class='flag-5'>纯</b>视觉自动驾驶的优势和劣势有哪些?

    超擎数智为您深度解析NVIDIA Quantum-X800 InfiniBand平台

    NVIDIA
    专精特新
    发布于 :2026年01月08日 19:47:03

    NVIDIA 与新思科技宣布建立战略合作伙伴关系,携手重塑工程与设计未来

    长期战略合作涵盖了 NVIDIA CUDA 加速计算、代理式 AI 和物理 AI 以及 Omniverse 数字孪生,以实现以前通过传统 CPU 计算难以企及的仿真速度和规模,为工程领域各类场景开辟
    的头像 发表于 12-03 10:27 1198次阅读
    <b class='flag-5'>NVIDIA</b> 与新思科技宣布<b class='flag-5'>建立</b>战略合作伙伴关系,携手重塑工程与设计未来

    没有地图,视觉自动驾驶就只能摸瞎吗?

    来说,是否也是如此?   人和机器用“视觉”导航的差异 在讨论这个话题前,先简单聊聊什么是“视觉”。所谓“视觉”,就是只用摄像头(单目或多目)来完成感知的方案。不管是把图像直接送入一个端到端的神经网络输出控制指
    的头像 发表于 11-27 17:22 1597次阅读
    没有地图,<b class='flag-5'>纯</b>视觉自动驾驶就只能摸瞎吗?

    NVIDIA宣布开源Aerial软件

    NVIDIA 开源其 Aerial 软件,并将 NVIDIA Sionna 研究套件和 Aerial 测试平台引入 NVIDIA DGX Spark 平台,为研究人员提供强大的工具和便捷的访问途径,以加速 AI 原生无线创新。
    的头像 发表于 11-03 15:14 1180次阅读

    NVIDIA RTX AI加速FLUX.1 Kontext现已开放下载

    NVIDIA RTX 与 NVIDIA TensorRT 现已加速 Black Forest Labs 的最新图像生成和编辑模型;此外,Gemma 3n 现可借助 RTX 和 NVIDIA
    的头像 发表于 07-16 09:16 2186次阅读

    通过NVIDIA Cosmos模型增强机器人学习

    扩展。基于 NVIDIA Cosmos 构建的 NVIDIA Isaac GR00T-Dreams blueprint,可以通过单张图像和语言提示生成海量的合成轨迹数据,能够有效解决这一难题。
    的头像 发表于 07-14 11:49 1281次阅读
    通过<b class='flag-5'>NVIDIA</b> Cosmos模型增强机器人学习

    声波换能器:原理与多领域应用解析

    发射出的超声波穿透人体组织,由于不同组织的声学特性存在差异,超声波会在组织界面处发生反射和折射 。换能器接收这些反射波,并将其转换为电信号,经过复杂的信号处理和图像重建算法,最终形成人体内部组织和器官
    发表于 06-28 15:09

    声波换能器--声波世界的 “神奇魔法师”

    ,再接收反射回来的超声波信号,经过计算机处理后形成人体内部器官的清晰图像。通过这些图像,医生可以观察胎儿在母体内的发育情况,检查内脏器官是否存在病变,如肿瘤、囊肿等,帮助制定精准的治疗方案,为无数患者带来
    发表于 06-11 17:30

    自动驾驶中视觉替代不了激光雷达?

    ,不少人设想“移除LiDAR,只用摄像头+AI”也能实现可靠感知。但现实远比想象复杂,为什么视觉难以完全替代LiDAR? 首先要知道,摄像头与LiDAR的工作原理截然不同。摄像头通过光学透镜和图像传感器获取二维彩色图像,记录场
    的头像 发表于 06-11 09:06 1167次阅读

    NVIDIA Isaac Sim与NVIDIA Isaac Lab的更新

    在 COMPUTEX 2025 上,NVIDIA 宣布了机器人仿真参考应用 NVIDIA Isaac Sim 和机器人学习框架 NVIDIA Isaac Lab 的更新,以加速各种形态机器人的开发。
    的头像 发表于 05-28 10:06 2401次阅读

    借助NVIDIA技术加速半导体芯片制造

    NVIDIA Blackwell GPU、NVIDIA Grace CPU、高速 NVIDIA NVLink 网络架构和交换机,以及诸如 NVIDIA cuDSS 和
    的头像 发表于 05-27 13:59 1281次阅读

    声波清洗的原理是什么?超声波清洗是如何起作用的?

    声波清洗是一种利用高频超声波振动来清洗物体表面和难以达到的细微部分的清洁技术。其工作原理基于声波的物理特性和声波对液体中微小气泡的影响。以下是超
    的头像 发表于 05-26 17:21 4376次阅读
    超<b class='flag-5'>声波</b>清洗的原理是什么?超<b class='flag-5'>声波</b>清洗是如何起作用的?

    如何在CYUSB2014和AR0144CS图像传感器之间建立通信?

    我们正在尝试在 CYUSB2014 和 AR0144CS 图像传感器之间建立通信。 我们不会使用 UVC 框架,因为设备的枚举不应该在设备管理器的 Windows 摄像头下进行。 因此我们考虑
    发表于 05-19 08:28