手机流畅运行470亿大模型:上交大发布LLM手机推理框架PowerInfer-2,提速29倍

news2024/11/29 4:35:35

卡奥斯智能交互引擎是卡奥斯基于海尔近40年工业生产经验积累和卡奥斯7年工业互联网平台建设的最佳实践,基于大语言模型和RAG技术,集合海量工业领域生态资源方优质产品和知识服务,旨在通过智能搜索、连续交互,实时生成个性化的内容和智能化产品推荐,为用户提供快速、可靠的交互式搜索服务,首创了聚焦工业领域的智能交互引擎。

详情戳:智能交互引擎icon-default.png?t=N7T8https://datayi.cn/w/DPWgDgjP

苹果一出手,在手机等移动设备上部署大模型不可避免地成为行业关注焦点。

然而,目前在移动设备上运行的模型相对较小(苹果的是3B,谷歌的是2B),并且消耗大量内存,这在很大程度上限制了其应用场景。

即使是苹果,目前也需要与OpenAI合作,通过将云端GPT-4o大模型嵌入到操作系统中来提供能力更强的服务。

这样一来,苹果的混合方案引起了非常多关于数据隐私的讨论和争议,甚至马斯克都下场讨论

如果苹果在操作系统层面集成OpenAI,那么苹果设备将被禁止在我的公司使用。这是不可接受的安全违规行为。

图片

既然终端侧本地部署大模型的方案既让手机用户享受到AI强大的智能,又能保护好自己的隐私安全,为什么苹果还要冒着侵犯隐私的风险选择联手OpenAI采用云端大模型呢?主要挑战有两点:

  • 手机内存不够大:按照大模型的Scaling Law法则,模型参数越大,能力对应的也就越强,这就意味着能力更强的模型对内存的要求越高。

  • 手机算力不够强:即使勉强把通过量化等手段把模型塞进手机了,推理速度也慢,适合的应用场景也就非常有限了。

为了解决上述挑战,上海交大IPADS实验室推出了面向手机的大模型推理引擎(目前论文已在arxiv公开):PowerInfer-2.0

图片

PowerInfer-2.0能够在内存有限的智能手机上实现快速推理,让Mixtral 47B模型在手机上达到11 tokens/s的速度。

与热门开源推理框架llama.cpp相比,PowerInfer-2.0的推理加速比平均达到25倍,最高达29倍

为了充分释放出PowerInfer-2.0框架的最大潜力,上海交大团队还提出了配套的大模型优化技术Turbo Sparse,相关论文近期也上传了arxiv,并且已经在业内引起关注。

图片

另外值得一提的是,去年底上海交大团队提出了针对PC场景的快速推理框架PowerInfer-1.0,在4090等消费级显卡的硬件上,实现了比llama.cpp高达11倍的推理加速,曾连续三天登顶GitHub趋势榜,5天获得了5k的GitHub star,目前已达到7.1k star。

图片

相比PC,手机的内存和算力受到的约束更多,那么这次的PowerInfer-2.0是如何针对手机场景加速大模型推理呢?

动态神经元缓存

首先,针对手机运行内存(DRAM)不足的问题,PowerInfer-2.0利用了稀疏模型推理时的一个特点:每次只需要激活一小部分神经元,即“稀疏激活”。没有被激活的神经元即使不参与AI模型的推理计算,也不会对模型的输出质量造成影响。

稀疏激活为降低模型推理的内存使用创造了新的机会。为了充分利用稀疏激活的特性,PowerInfer-2.0把整个神经网络中的神经元分成了冷、热两种,并在内存中基于LRU策略维护了一个神经元缓存池。

近期频繁激活的”热神经元”被放置在运行内存中,而“冷神经元”只有在被预测激活的时候,才会被拉进内存,大幅降低了内存使用量。

图片


 

其实冷热神经元分类,是继承自PowerInfer-1.0已有的做法。

而在去年12月,苹果在面向端侧的大语言模型推理方案“LLM in a Flash”中提出了和神经元缓存类似的“滑动窗口”技术。但这些工作主要针对的都是PC环境,直接迁移到手机环境,还会遇到新的难题。

首先手机平台的硬件条件远不及PC,无论是算力、内存总量还是存储带宽,都与PC存在较大差距。

其次,手机硬件平台存在CPU、GPU、NPU三种异构的计算单元,十分复杂。各大硬件平台宣发时都会强调一个总算力,实际上是把CPU、GPU、NPU提供的算力加起来。然而真正跑起大模型来,能不能高效利用各种异构算力还是个问题。

以神经元簇为粒度的异构计算

针对这一点,PowerInfer-2.0进一步把粗粒度的大矩阵计算分解成细粒度的“神经元簇”

每个神经元簇可以包含若干个参与计算的神经元。对于不同的处理器,会根据处理器的特性来动态决定划分出来的神经元簇的大小

例如,NPU擅长于做大矩阵的计算,那么可以把所有神经元合并成一个大的神经元簇,一起交给NPU计算,这样就可以充分利用NPU的计算能力。而在使用CPU时,可以拆出多个细粒度的神经元簇,分发给多个CPU核心一起计算。

具体而言,PowerInfer-2.0为模型推理的预填充阶段(Prefill)和解码阶段(Decoding)分别设计了两套神经元簇的划分方案:

预填充阶段会一次性输入很多token,基本上绝大部分神经元都会被激活,因此选择使用大神经元簇交给NPU计算。CPU此时也没有闲着,在后台为NPU执行反量化模型权重的操作。

解码阶段每次只有一个token,具有较高的稀疏性,因此更加适合划分成若干细粒度的神经元簇,交给CPU灵活调度和执行计算。

图片

神经元簇这一概念除了能够更好的适应手机的异构计算环境,还能天然地支持计算与存储I/O的流水线并行执行。

PowerInfer-2.0提出了分段神经元缓存和神经元簇级的流水线技术,在一个神经元簇等待I/O的同时,可以及时地把另一个已经准备好的神经元簇调度到处理器上进行计算,从而充分隐藏了I/O的延迟。

同时,这种基于神经元簇的流水线打破了传统推理引擎中逐矩阵计算的方式,可以允许来自不同参数矩阵的神经元簇交错执行,达到最高的并行效率。

图片

I/O加载神经元的速度对于模型推理也至关重要。

分段缓存会针对不同的权重类型采取不同策略(如注意力权重、预测器权重、前馈网络权重)采取不同的缓存策略,提高缓存命中率,减少不必要的磁盘 I/O

缓存还会使用LRU替换算法动态更新每个神经元的实际冷热情况,确保缓存中放着的都是最热的神经元。此外PowerInfer-2.0还针对手机UFS 4.0存储的性能特点,设计了专门的模型存储格式,提高读取性能。

最后再来看一下实测成绩,使用一加12和一加Ace 2两款测试手机,在内存受限的情况下,PowerInfer-2.0的预填充速度都显著高于llama.cpp与LLM in a Flash(简称“LLMFlash”):

图片

解码阶段同样是PowerInfer-2.0占据很大优势。特别是对于Mixtral 47B这样的大模型,也能在手机上跑出11.68 tokens/s的速度:

图片

而对于Mistral 7B这种可以放进手机运行内存的模型,PowerInfer-2.0可以节约40%内存的情况下,达到与llama.cpp和MLC-LLM同水平甚至更快的解码速度:

图片

PowerInfer-2.0是一个模型-系统协同设计的方案,也就是需要模型中可预测稀疏性的配合。

如何以低成本的形式调整模型以适配PowerInfer-2.0框架,也是一个重大挑战。

低成本高质量地大幅提升模型稀疏性

传统简单的ReLU稀疏化会给模型原本的能力造成不小的影响。

为了克服这个问题,上海交大IPADS联合清华和上海人工智能实验室提出一个低成本地稀疏化方法,不仅大幅提升模型的稀疏性,还能保持住模型原本的能力!

图片

首先,论文深入分析了模型稀疏化中的问题:

  • 在类LLaMA模型中中简单引入ReLU,虽然能引入一定程度的稀疏性,但稀疏度仍然有限

  • 稀疏化过程由于训练语料的不足和训练token的不足导致模型精度下降的问题。

为了提升模型的稀疏度,论文在ReLU基础上提出dReLU激活函数,采用替换原有激活函数后继续预训练的方式增加模型稀疏性。

将SwiGLU替换为dReLU一方面直观地提高了输出值中的零元素比例,另一方面能更有效地在稀疏化的过程中复用原本模型训练完成的gate和up矩阵权重。

图片


 

图片


 

为了克服模型能力下降的问题,团队收集了包括网页、代码和数学数据集在内的多样化继续训练语料库。高质量、多样化的训练数据有助于模型在稀疏化后更好地保持和提升性能。

最后,团队训练了2个TurboSparse大模型进行验证,分别是8x7B和7B的大模型。得益于高质量的继续训练语料,TurboSparse系列模型模型的精度甚至还能反超原版模型(具体见表6)。

图片

而在稀疏度方面效果也非常显著。相比于原本的Mixtral模型需要激活13B参数量,TurboSparse-Mixtral只需要激活4.3B的参数量,激活的参数量是原本模型的三分之一

图片

而关于稀疏化过程的成本问题,TurboSparse论文中介绍,改造过程中模型需要继续训练150B tokens,相比于预训练(假设3T tokens)还不到5%,说明其成本是很低的。

让技术加速走出实验室

从推理框架和改造模型两个角度出发,上海交大团队的成果实现了大语言模型在手机等资源受限场景下的快速推理。

而且这套方案的潜力不止于手机,未来在车载设备、智能家居等方向还有更多应用前景。

最后再正式介绍一下团队。上海交通大学并行与分布式系统研究所(简称IPADS),由陈海波教授领导,现有13名教师,100多名学生。

IPADS长期从事计算机系统的研究,近10年在权威榜单CSRankings的Operating Systems领域排名全球前二,仅次于MIT;上海交大也是排名前十中唯一上榜的亚洲高校。

图片


 

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

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

相关文章

GEE数据集——全球河流阻塞数据库 (GROD)1.1 版

全球河流阻塞数据库 (GROD) GROD v1.1(文件名:GROD_v1.1.csv),即全球河流阻塞数据库 1.1 版,包含 30549 个人工识别的阻碍河流纵向流动的人为结构。谷歌地球引擎卫星地图上的所有河流障碍物都已在全球陆地卫星河宽&am…

2024年数字技术与智慧教育国际会议(DTSE 2024,7月26-28)

2024年数字技术与智慧教育国际会议(DTSE 2024)将于2024年7月26日在广东省广州市召开,本次会议专注于“数字技术与智慧教育”领域, 将汇集全球范围内的学者、研究人员以及教育技术开发者,共同探索和分享该领域内的最新学…

软件游戏缺失mfc100u.dll如何解决,教你多种有效的方法

在现代科技日新月异的时代,电脑已经成为我们生活和工作中不可或缺的一部分。然而,随着使用时间的增长,电脑也会出现各种各样的问题。其中,“电脑中丢失mfc100u.dll”是许多用户经常遇到的问题之一。那么,这个问题究竟是…

XXL-JOB分布式任务调度快速入门

文章目录 概念快速启动XXL-JOB调度初始化执行器项目配置执行器新增GLUE模式(Java)的任务新增BEAN模式(类形式)的任务BEAN模式(方法形式)的任务参考来源 概念 XXL-JOB是一个开源的分布式任务调度平台,它是一个轻量级、…

Web前端大作业:基于html+css+js的仿酷狗音乐项目(内附源码)

文章目录 一、项目介绍二、项目展示三、源码展示四、获取源码 一、项目介绍 课设是要仿照酷狗音乐的首页进行设计。酷狗音乐是国内知名的音乐应用程序,凭借其优秀的音乐库和智能推荐功能吸引了大量用户群体。模仿酷狗音乐的首页设计,可以让课设展现出专业水准,体现出对优秀产品…

Excel自定义排序和求和

概览 excel作为办公的常备工具,好记性不如烂笔头,在此梳理记录下,此篇文章主要是记录excel的自定义排序和求和 一. 自定义排序 举个例子 1. 填充自定义排序选项 实现步骤: 选定目标排序值;文件->选项->自定…

zypcy

一、浏览器调试 1、elements 2、Network 用于抓包 Preserve log:保留日志,所有日志都会被保留,而不是被覆盖,刷新前刷新后的日志都会被保留 Disable cache:禁止缓存,保证每次变化都是从服务器请求的数据&…

海洋CMS /js/player/dmplayer/dmku/ SQL注入漏洞复现(CVE-2024-29275)

0x01 产品简介 海洋CMS是一套专为不同需求的站长而设计的内容管理系统,灵活、方便、人性化设计、简单易用是最大的特色,可快速建立一个海量内容的专业网站。海洋CMS基于PHPMySql技术开发,完全开源免费 、无任何加密代码。 0x02 漏洞概述 海…

SAP 中的Incoterms国际贸易条款术语解释

之前写代码建交货单的时候总是会遇到这个字段,通常我们可能会填FOB或者CIF或者其他,但并不清楚这些都是什么意思,偶然间看到一篇帖子对此作了解释,也记录分享一下。 原文地址: Incoterms|FOB、CFR和CIF&a…

pom学习笔记:kimi的自动化操作

1.先看结构: 声明:我是初学,可能有不合理的地方。 2.Base层。 我是把原来一个kimi的自动问答的代码改过来。 分析:其实我是新手,因为我用的浏览器是固定的,也没有打算和别人用。所以浏览器层面年的全部写…

C语言,struct 结构体、union共用体的使用

//状态字节,根据数据定义几个标志,标志位依据联合体内部结构体进行变量定义 //目的,节省内存空间,省去特定字节 struct STATDATA {union{unsigned char stat;struct {unsigned stat0:1;unsigned stat1:1;unsigned stat2:1;unsign…

rtl8723du android5.1 6818 (wifi 部分)(第三部分)

这部分主要就是 应用了。具体的详细框架 在 android4.4 部分写的差不多的。 之前板卡依然是使用的 mt6620 ,所以在移植的过程中,需要把之前的 wifi 的驱动一点一点的去掉。 1 kernel 的修改。 将驱动拷贝到 wireless 下。 修改Kconfig 修改Makefile 2 驱动的Makefile 的修改…

塬号星球项目介绍

开发时间:2024 . 02~ 至今 已经部署上线(可以在微信里搜索“塬号星球”),仍在完善阶段。 塬号星球——周边信息社交生活服务平台 项目介绍:项目主要是针对于在大学有流量却不知道该如何变现的朋友,比…

Oracle最终会扼杀MySQL?(译)

原文网站:https://www.percona.com/blog/is-oracle-finally-killing-mysql/ 作者:Peter Zaitsev 自从Oracle收购了MySQL后,很多人怀疑Oracle对开源MySQL的善意,这篇percona的文章深入分析了Oracle已经和将要对MySQL采取的措施&a…

欢乐钓鱼大师攻略:buff大全讲解,云手机托管使用教程!

《欢乐钓鱼大师》是一款充满趣味与挑战的钓鱼模拟游戏。在这款游戏中,玩家不仅能够体验到钓鱼的乐趣,还需要通过策略性地收集与使用不同的钓鱼装备来提升自己的钓鱼技巧和效率。本文将为你提供一份详细的游戏攻略,帮助你在游戏中轻松上手并快…

CNS-BL30H系列直流无刷电机驱动器|电机参数配置方法

CNS-BL30H系列直流无刷电机驱动器|电机包含CNS-BL30HB、CNS-BL30HDN、CNS-BL30HSN,采用一驱二设计,可以同时驱动两个小于48V/1000W的直流无刷电机,体积小巧,安装方便,接线快捷,本文重点介绍CNS-BL30H系列直…

什么是 URL 过滤?是如何保障浏览体验的?

互联网是一个无边无际的空间,几乎包含了你能想象到的一切。不幸的是,这意味着也存在着从不合适到非常危险的网站。这就是 URL 过滤可以发挥作用的地方。 一、URL 过滤的含义 我们希望您已经熟悉 URL(统一资源定位器),…

Non-aligned Supervision for Real Image Dehazing

原文链接:https://www.semanticscholar.org/paper/Non-aligned-supervision-for-Real-Image-Dehazing-Fan-Guo/7595d39e71ae58343e8728fc1af0e18ffe38218b 数据集:https://www.cityscapes-dataset.com/ 真实的图像去雾的非对准监督 摘要 由于天气条件…

【Linux】手残党必学,再也不用跑路了

目录 🚨危险命令,请勿靠近TAT🖋️rm –rf🖋️){:|:&};:🖋️mv 指定的文件夹 /dev/null🖋️wget http://malicious_source -O- | sh🖋️dd if/dev/random of/dev/sda🖋️隐藏命令…

国标GB28181安防视频监控EasyCVR平台级联时上级平台不显示通道是什么原因?

国标GB28181安防视频监控/视频集中存储/云存储/磁盘阵列EasyCVR平台部署轻快,可支持的主流标准协议有GA/T 1400、国标GB28181、RTSP/Onvif、RTMP等,以及支持厂家私有协议与SDK接入,包括海康Ehome、海大宇等设备的SDK等。 有用户反馈&#xff…