如何估算一个大模型需要用到什么性能配置的硬件? - V2EX
V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
zcm3579
V2EX    Local LLM

如何估算一个大模型需要用到什么性能配置的硬件?

  •  
  •   zcm3579 206 天前 2230 次点击
    这是一个创建于 206 天前的主题,其中的信息可能已经有所发展或是发生改变。
    经常看到例如 R1-7B ,4060 显卡能跑,14B 又多少显卡能跑这样的结论,
    有例如最近又看到 QwQ 单 4090 能跑的文章,
    然而我去到官网看文档又没有找到对应的说明,
    那么一般从哪个参数能大致看出来需要多少 cpu 、内存、显存之类的呢?
    16 条回复    2025-03-19 08:47:23 +08:00
    Solix
        1
    Solix  
       206 天前 via iPhone
    因为没有人真的跑起来,所以也没有人真的知道用多少
    ex9527
        2
    ex9527  
       206 天前 via Android
    没有标准说不准,跑得起来也分跑不跑得快,效果好不好。要多少量化位数跟参数也要说清楚。
    wtks1
        3
    wtks1  
       206 天前
    一般来说都是有人实操过后才知道行不行的
    lithiumii
        4
    lithiumii  
       206 天前 via Android   1
    理论上最低限度的跑起来:显存 + 内存 + 硬盘 > 模型 + context
    但是比较傻瓜的软件(比如 ollama )一般不能直接把硬盘当缓存用,所以比较傻瓜的一键跑起来:显存 + 内存 > 模型 + context
    人的阅读速度大概是 5 token 每秒,所以跑起来并且速度勉强能用:每秒 token 数 > 5
    因为速度主要瓶颈是内存或显存的带宽,普通家用双通道 < 服务器 4 通道 < 中低端显卡、苹果统一内存 < 高端显卡,所以模型放到显卡的比例越大,速度越快。另外就是做推理的时候模型不同的层可以放进不同的显卡,不走 nvlink 仍然速度很快,因为不同的层之间通信要求没有那么高,所以多个 PCIe 槽直接插多显卡就可以放下更大的模型并且获得更快的速度。
    最后是计算模型体积,一般的完整模型 fp16 每 B 近似 2G ,量化到 q4 的模型近似 0.5G 每 B ,但是这样算太粗糙了可以再加个 20% 当余量。context 计算很麻烦,不同参数的模型需要的不一样,而且可以自己调高调低,ollama 默认给得非常低只有 2k (很多模型支持到 128k ),所以再加个 10% 当余量。
    那就是 显存 + 内存 > 1.3 × 模型体积。
    mumbler
        5
    mumbler  
       206 天前   1
    villivateur
        6
    villivateur  
       206 天前   1
    duanxianze
        7
    duanxianze  
       206 天前
    并没有统一的标准,最简单的,每个人对能用的理解不一样,有的人需要一秒就出答案,有的人不介意等 10 秒
    est
        8
    est  
       206 天前
    7B == 7,000,000,000 ,得到 7G 。每一个参数 4byte (fp32) 那么就需要 7x4 == 28GB 显存

    用了 fp16 优化就只需要 14GB 显存。用 int8 量化就需要 7GB 显存,用 int4 量化就需要 3.5GB 显存

    当然 transformer 还有很多其他的各个环节提升,这里 x4 x2 x1 x0.5 可以进一步打折优化。这里只是一个大概的计算
    est
        9
    est  
       206 天前
    另外再说一个简单的 token 吐字效率计算。大语言模型你可以看成所有参数都需要顺序激活一次参与计算,假如 7G fp32 的 LLM 每一秒钟输出一个 token ,就至少需要 28 GB/s 的显存带宽。
    AirTag
        10
    AirTag  
       206 天前
    我是按照 1B 需要 1G 内存来算的,跑过 ds 23b qwq32b ,因为 ds 已经给删了,刚刚试了下 qwq32b ,计算运行前后内存差值的话,大概占用了 20GB 的联合内存。总联合内存占用大概 30GB ,可能是系统还有其他程序的占用。
    这个信息可以参考下,它的真实运行过程我也不是很了解。
    我的输出速度很慢大概 6token/s 。
    conn457567
        11
    conn457567  
       206 天前 via Android
    不仅要看 tks ,还需要看并发。像一些本地部署自有 10+token/s 的,基本就只能单机自己玩玩,面向生产的我建议还是找专门的模型供应商。生产级别的不仅要保证 token 数量,至少还得有 100+的并发,首 token 延迟控制,更别说云化的 gpu 调度,算力加速等。
    tool2dx
        12
    tool2dx  
       206 天前
    之所以不给,是因为 ollama 上下文要求的显存特别夸张。

    不上传文件,纯聊天你可以大体按照 1:1 来计算,不爆显存速度就是正常的。不过小于 16G 显存,就算勉强跑起来,智商堪忧也没啥价值,只能当个娱乐玩具用用了。
    tool2dx
        13
    tool2dx  
       206 天前
    @villivateur 感觉不准,主要就是依赖 CUDA 和显存大小,和 CPU 关联性很小,我基本上 CPU 都没怎么波动过。
    wyntalgeer
        15
    wyntalgeer  
       206 天前
    能跑、流畅、高并发,不是一个概念,当下优化空间不小,优化方向各异,所以最好自己调试
    ChristopherY
        16
    ChristopherY  
       204 天前
    @lithiumii 激活参数,输出张量这些需要算在里面吗
    关于     帮助文档     自助推广系统     博客     API     FAQ     Solana     855 人在线   最高记录 6679       Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 25ms UTC 21:58 PVG 05:58 LAX 14:58 JFK 17:58
    Do have faith in what you're doing.
    ubao snddm index pchome yahoo rakuten mypaper meadowduck bidyahoo youbao zxmzxm asda bnvcg cvbfg dfscv mmhjk xxddc yybgb zznbn ccubao uaitu acv GXCV ET GDG YH FG BCVB FJFH CBRE CBC GDG ET54 WRWR RWER WREW WRWER RWER SDG EW SF DSFSF fbbs ubao fhd dfg ewr dg df ewwr ewwr et ruyut utut dfg fgd gdfgt etg dfgt dfgd ert4 gd fgg wr 235 wer3 we vsdf sdf gdf ert xcv sdf rwer hfd dfg cvb rwf afb dfh jgh bmn lgh rty gfds cxv xcv xcs vdas fdf fgd cv sdf tert sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf shasha9178 shasha9178 shasha9178 shasha9178 shasha9178 liflif2 liflif2 liflif2 liflif2 liflif2 liblib3 liblib3 liblib3 liblib3 liblib3 zhazha444 zhazha444 zhazha444 zhazha444 zhazha444 dende5 dende denden denden2 denden21 fenfen9 fenf619 fen619 fenfe9 fe619 sdf sdf sdf sdf sdf zhazh90 zhazh0 zhaa50 zha90 zh590 zho zhoz zhozh zhozho zhozho2 lislis lls95 lili95 lils5 liss9 sdf0ty987 sdft876 sdft9876 sdf09876 sd0t9876 sdf0ty98 sdf0976 sdf0ty986 sdf0ty96 sdf0t76 sdf0876 df0ty98 sf0t876 sd0ty76 sdy76 sdf76 sdf0t76 sdf0ty9 sdf0ty98 sdf0ty987 sdf0ty98 sdf6676 sdf876 sd876 sd876 sdf6 sdf6 sdf9876 sdf0t sdf06 sdf0ty9776 sdf0ty9776 sdf0ty76 sdf8876 sdf0t sd6 sdf06 s688876 sd688 sdf86