Jetson Nano 三个版本(B01 4GB、Orin 4GB、Orin 8GB)本地部署Deepseek等大模型的测评

news2025/3/20 14:45:14

Jetson Nano三个版本(B01 GB、Orin 4GB、Orin 8GB)本地部署Deepseek等大模型的测评

    • 一、为什么要在终端设备部署大模型?
    • 二、 Jetson Nano推理大模型时计算资源占用情况分析
      • 为什么测试Jetson Nano?
      • 三款Jetson Nano芯片简介
    • 三、大模型推理实验
      • 实验1: Jetson Nano B01 4GB 推理 Deepseek-r1:1.5b
      • 实验2: Jetson Orin Nano 4GB 推理 qwen2:1.5b
      • 实验3: Jetson Orin Nano 8GB 推理 Deepseek-r1:1.5b
      • 实验4: Jetson Orin Nano 8GB 推理 Deepseek-r1:7b
    • 四、终端设备部署大模型的思考

一、为什么要在终端设备部署大模型?

一个小故事:春节的时候,有个亲戚问我:以后是不是我们可以实现人手或者一个家庭都有一个机器人?
我思考了一下,想起来前段时间我在Jetson Nano 推理大模型的实验结果。说了一下我的预测 “要实现到人手一个机器人的时候,应该会在这个时间节点:在终端设备也可以轻松推理大模型。

二、 Jetson Nano推理大模型时计算资源占用情况分析

为什么测试Jetson Nano?

第一、Jetson nano是当前AI模型推理芯片了,据我了解,现在终端推理AI模型的主要还是英伟达的Jetson orin 系列,当然还有我们国产的地平线芯片。你可以去调研汽车智驾芯片。举个例子:比亚迪的天神之眼就是英伟达的Jetson和地平线。

  • 英伟达的Jetson nano芯片搭载了NVIDIA CUDA 核心,可使用TensorRT来对模型推理加速。
  • 地平线芯片内置了贝叶斯架构的BPU加速单元,也可以实现深度学习模型的算法加速。

其次、我手头上刚好有三个系列的Jetson nano芯片,分别是Jetson Nano B01 4GB、Jetson Orin Nano 4GB、Jetson Orin Nano 8GB。

三款Jetson Nano芯片简介

Jetson Nano 是Soc,小白请注意Jetson Nano 的 GPU 并不是独立的,(可不是那种4090迷你版),而是与 CPU 共享同一块内存(即 统一内存架构,Unified Memory Architecture, UMA)。这种设计在嵌入式设备和移动设备中非常常见,目的是为了节省空间、降低功耗和成本。

  1. Jetson Nano B01 4GB 是 Maxwell 架构,里面搭载了 128 个 NVIDIA CUDA 核心,CPU是ARM A57 4核心 ,其算力只有0.5TOPS,内存是64bit LPDDR4。
  2. Jetson Orin Nano 4GB 是 Ampere 架构,里面搭载了512 NVIDIA CUDA 核心,CPU是ARM A78 6核心,其算力有20TOPS,内存是64bit LPDDR5。
  3. Jetson Orin Nano 8GB 是 Ampere 架构,里面搭载了1024 NVIDIA CUDA 核心,CPU是ARM A78 6核心,其算力有40TOPS,内存是64bit LPDDR5。

简单点来看:

设备型号架构CUDA 核心数CPU 配置算力 (TOPS)内存类型内存位宽
Jetson Nano B01 4GBMaxwell128ARM A57 4 核心0.5LPDDR464-bit
Jetson Orin Nano 4GBAmpere512ARM A78 6 核心20LPDDR564-bit
Jetson Orin Nano 8GBAmpere1024ARM A78 6 核心40LPDDR564-bit

三、大模型推理实验

很简单,可以直接安装Ollama,我在Ollama环境下拉大模型,然后直接测试。
在这里插入图片描述
在运行大模型的时候,另开一个终端运行:

jtop

即可实时查看资源的使用率。

实验1: Jetson Nano B01 4GB 推理 Deepseek-r1:1.5b

在这里插入图片描述分析:

  • GPU 使用情况
    • Jetson Nano B01 的 GPU 频率没有变化,最大频率仅为 76 MHz
  • CPU 使用情况
    • 推理任务主要依赖 4 个 CPU 核心,GPU 的贡献有限。
  • 性能表现
    • 由于 GPU 频率低且性能有限,整个推理过程非常卡顿,速度很慢。

我的体验

  • 性能表现
    • Jetson Nano B01 能够运行大模型,但非常卡顿,速度极慢。
  • 总结
    • 设备性能不足,无法流畅运行大模型,不能依赖 GPU 加速,不建议使用。纯 CPU 运行大模型的效果非常差。

实验2: Jetson Orin Nano 4GB 推理 qwen2:1.5b

在这里插入图片描述
分析

  • GPU 使用情况
    • Jetson Orin Nano 4GB 的 GPU 频率为 71%,最大频率为 624 MHz
    • 在推理大模型时,GPU 的利用率约为 32%
  • CPU 使用情况
    • 推理任务主要依赖 6 个 CPU 核心 和 GPU 协同工作。
  • 显存占用
    • 显存占用为 2 GB
  • 内存占用
    • 内存使用为 3.16/3.2 GB,几乎耗尽。
    • 运行大模型后,剩余内存不足以支持其他较大程序的运行。
  • 供电功率
    • 设备运行时的供电功率为 10W

我的体验

  • 性能表现
    • Jetson Orin Nano 4GB 运行大模型时相对流畅,性能比 Jetson Nano B01 提升显著。
  • 内存瓶颈
    • 由于内存只有 4 GB,运行大模型后,内存几乎耗尽,无法同时运行其他较大应用。
  • 总结
    • 设备能够运行1.5b大模型,但内存容量是明显的短板,限制了多任务处理能力。适合玩一玩,但内存限制较大,不适合需要多任务处理或更大模型的场景。

实验3: Jetson Orin Nano 8GB 推理 Deepseek-r1:1.5b

在这里插入图片描述
分析

  • GPU 使用情况
    • Jetson Orin Nano 8GB 的 GPU 频率为~ 6%,最大频率为 624 MHz
    • 在推理大模型时,GPU 的利用率约为 72%
  • CPU 使用情况
    • 推理任务主要依赖 6 个 CPU 核心 和 GPU 协同工作。
  • 显存占用
    • 显存占用为 1.9 GB
  • 内存占用
    • 内存使用为 3.5/7.2 GB,还有一大半内存可以使用。
  • 供电功率
    • 设备运行时的供电功率为 15W

我的体验

  • 性能表现

    • Jetson Orin Nano 8GB 运行1.5b大模型时相对流畅,性能比 Jetson Nano B01 、以及Jetson Orin Nano 4GB 都提升显著。
  • 总结

    • 设备可轻松地跑1.5b大模型,**但不一定适合需要多任务处理或更大模型的场景。**可以用于简单大模型需求的任务。

实验4: Jetson Orin Nano 8GB 推理 Deepseek-r1:7b

在这里插入图片描述
分析:

  • GPU 使用情况
    • Jetson Orin Nano 8GB 的 GPU 频率达到 98%,最大频率为 624 MHz
    • 在推理大模型时,GPU 的利用率约为 98.9%
  • CPU 使用情况
    • 推理任务主要依赖 6 个 CPU 核心 和 GPU 协同工作。
  • 显存占用
    • 显存占用达到 4.9 GB
  • 内存占用
    • 内存使用为 6.4/7.2 GB,几乎耗尽。
    • 运行大模型后,剩余内存不足以支持其他较大程序的运行。
  • 供电功率
    • 设备运行时的供电功率为 15W
  • 性能表现
    • Jetson Orin Nano 8GB 运行了7b大模型时相对流畅,有点惊讶。
  • 内存瓶颈
    • 由于内存只有 8 GB,运行 7b 大模型后,内存几乎耗尽,无法同时运行其他较大应用。
  • 总结
    • 设备能够运行7b大模型,但跑了大模型之后内存容量是明显的短板,限制了多任务处理能力,不一定能稳定执行任务。

四、终端设备部署大模型的思考

  1. 现阶段的终端设备跑大模型整体来说还是比较吃力的。除了内存压力之外,低功率也要做到10W,15W来推理大模型,也就是说对电池供电也是一个挑战,换言之,现阶段,终端搭模型的设备不可能是一个小型产品,它可以是人形机器人、机器狗,新能源汽车,但一定不是手机。
  2. 价格分析,我说个大概的数字:Jetson Nano B01 4GB 大概是1K、Jetson Orin Nano 4GB大概需要2K、Jetson Orin Nano 8GB大概需要4K。虽然这些价格也可以买到性价比不错的显卡了,但我觉得整个功率做低了实现的大模型推理,意义是更大的。
  3. 最后,训练大模型需要更高性能的显卡,我们需要往这方面去开发;与此同时,我们现阶段也需要投入去研发AI终端的推理芯片,还有,固态电池技术是不是可以在这个发展之中起到一个缓和的作用,届时是不是我们会看到 固态电池+现阶段的终端推理芯片+高效率大模型的产品出现呢?
  4. 博客写到最后,脑子有一个有趣的哲学思考:我们人类,一天只需要吃三顿饭,即可保持一整天的大脑思考,运动,对环境的识别,听觉…,如果真有造物者,生命系统何尝不是一个伟大的创造呢?

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/2318428.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

mac calDAV 日历交互

安装Bakal docker https://sabre.io/dav/building-a-caldav-client/ 在Bakal服务器上注册账户 http://localhost:8080/admin/?/users/calendars/user/1/ 在日历端登录账户: Server: http://127.0.0.1:8080/dav.php Server Path: /dav.php/principals/lion No e…

数据库监控:确保业务连续性和用户体验

在数字化时代,数据库作为企业的数据心脏,其重要性不言而喻。无论是交易系统、客户关系管理系统,还是数据分析平台,都离不开数据库的支撑。然而,数据库的运行状态和性能直接影响着企业的业务连续性和用户体验。因此&…

PointVLA:将 3D 世界注入视觉-语言-动作模型

25年3月来自美的集团、上海大学和华东师大的论文“PointVLA: Injecting the 3D World into Vision-Language-Action Models”。 视觉-语言-动作 (VLA) 模型利用大规模 2D 视觉语言预训练,在机器人任务方面表现出色,但它们对 RGB 图像的依赖,…

SpringBoot-MVC配置类与 Controller 的扫描

文章目录 前言一、自动配置类位置二、自动配置类解析2.1 WebMvcAutoConfiguration2.1.1 EnableWebMvcConfiguration 2.2 DispatcherServletAutoConfiguration 三、RequestMapping 的扫描过程3.1 RequestMappingHandlerMapping#afterPropertiesSet3.2 RequestMappingHandlerMapp…

企业年度经营计划制定与管理方法论(124页PPT)(文末有下载方式)

资料解读:企业年度经营计划制定与管理方法论 详细资料请看本解读文章的最后内容。 在企业的发展进程中,年度经营计划的制定与管理至关重要,它犹如企业前行的导航图,指引着企业在复杂多变的市场环境中稳健发展。这份《企业年度经营…

基于微信小程序的充电桩管理系统

一、开发背景 在开发充电汽车管理系统之前,深入的需求分析至关重要。我们要充分了解不同用户群体的需求,比如私家车主希望充电过程便捷、高效、安全,能够实时查看充电状态和费用明细;出租车、网约车司机则更注重充电速度和充电桩…

算法模型从入门到起飞系列——递归(探索自我重复的奇妙之旅)

文章目录 前言一、递归本质1.1 递归的要素1.2 递归特点 二、递归&迭代2.1 递归&迭代比较2.2 递归&迭代如何实现相同功能2.2.1 递归实现2.2.2 迭代实现2.2.3 性能对比 三、优雅的递归理解3.1 阶乘计算分解3.2 [DFS](https://blog.csdn.net/qq_38315952/article/deta…

YOLO+OpenCV强强联手:高精度跌倒检测技术实战解析

目录 关于摔倒检测 摔倒检测核心逻辑 摔倒检测:联合多种逻辑判断 原理详细解释 1. 导入必要的库 2. 定义函数和关键点连接关系 3. 筛选有效关键点并计算边界框 4. 计算人体上下半身中心点和角度 5. 绘制关键点和连接线 6. 绘制角度标注和检测跌倒 7. 返回处理后的图…

麒麟银河V10服务器RabbitMQ安装

安装步骤 rabbitMQ依赖于erlang的环境,所以需要先安装erlang,erlang跟rabbitMQ是有版本之间的关联关系的,根据对应的版本去安装下载,保证少出问题。 可以通过官网来查看RabbitMQ和erlang之间的版本对应关系 rabbitMQ和erlang之间…

extern和static的作用(有例子)

一、extern extern的作用 声明而非定义 extern告诉编译器某个变量或函数存在于其他地方(通常是另一个源文件),当前只是声明它,而不是定义它(分配内存)。定义只能在一个地方出现,而声明可以多次…

【8】分块学习笔记

前言 分块是一种重要的高级数据结构思想,核心为大段维护,局部朴素。 顺带一提,由于个人技术水平,本篇博客的难度并没有标题所述的 8 8 8 级。分块还是很难的。 分块 分块,是“优雅的暴力”。 分块的基本思想是把数据分为若干…

【蓝桥杯】省赛:分糖果(思维/模拟)

思路 数据很小,直接暴力模拟。 有意思的是一个列表如何当成循环队列写?可以arr[(i1)%n]让他右边超出时自动回到开头。 code import os import sysn int(input()) arr list(map(int,input().split()))ans 0 while 1:arr1 arr.copy()for i in range…

进程间通信(1)——管道

1. 进程间通信简介 进程间通信(Inter-Process Communication,IPC)是指不同进程之间交换数据的机制。由于进程具有独立的地址空间,它们无法直接访问彼此的数据,因此需要IPC机制来实现信息共享、数据传递或同步操作。 …

【正点原子K210连载】第七十六章 音频FFT实验 摘自【正点原子】DNK210使用指南-CanMV版指南

第七十六章 音频FFT实验 本章将介绍CanMV下FFT的应用,通过将时域采集到的音频数据通过FFT为频域。通过本章的学习,读者将学习到CanMV下控制FFT加速器进行FFT的使用。 本章分为如下几个小节: 32.1 maix.FFT模块介绍 32.2 硬件设计 32.3 程序设…

【杂记二】git, github, vscode等

一、前言 暂时空着... 二、git 2.1 可能的疑问 1. VSCode 项目名和 GitHub 仓库名是否需要一致? 不需要一致。 VSCode 项目名(也就是你本地的文件夹名字)和 GitHub 仓库名可以不一样。 Git 是一个分布式版本控制系统,它主要关…

《基于Spring Boot+Vue的智慧养老系统的设计与实现》开题报告

个人主页:@大数据蟒行探索者 一、研究背景及国内外研究现状 1.研究背景 根据1982年老龄问题世界大会联合国制定的标准,如果一个国家中超过65岁的老人占全国总人口的7%以上,或者超过60岁的老人占全国总人口的10%以上,那么这个国家将被定义为“老龄化社会”[1]。 随着国…

ModBus TCP/RTU互转(主)(从)|| Modbus主动轮询下发的工业应用 || 基于智能网关的串口服务器进行Modbus数据收发的工业应用

目录 前言 一、ModBus TCP/RTU互转(从)及应用|| 1.1 举栗子 二、ModBus TCP/RTU互转(主) 2.1 举栗子 三、ModBus 主动轮询 3.1 Modbus主动轮询原理 3.2 Modbus格式上传与下发 3.2.1.设置Modbus主动轮询指令 3.2.2 设…

【HarmonyOS Next之旅】DevEco Studio使用指南(三)

目录 1 -> 一体化工程迁移 1.1 -> 自动迁移 1.2 -> 手动迁移 1.2.1 -> API 10及以上历史工程迁移 1.2.2 -> API 9历史工程迁移 1 -> 一体化工程迁移 DevEco Studio从 NEXT Developer Beta1版本开始,提供开箱即用的开发体验,将SD…

冯・诺依曼架构深度解析

一、历史溯源:计算机科学的革命性突破 1.1 前冯・诺依曼时代 在 1940 年代之前,计算机领域呈现 "百家争鸣" 的格局: 哈佛 Mark I(1944):采用分离的指令存储与数据存储ENIAC(1946&a…

C++ 语法之函数和函数指针

在上一章中 C 语法之 指针的一些应用说明-CSDN博客 我们了解了指针变量&#xff0c;int *p;取变量a的地址这些。 那么函数同样也有个地址&#xff0c;直接输出函数名就可以得到地址&#xff0c;如下&#xff1a; #include<iostream> using namespace std; void fun() …