玩AI推理的都知道,现在大模型推理动不动就不计其数用户一同恳求,再加上每个恳求的输入长度都不相同,这服务器压力山大!为了扛住这压力,多GPU并行成了标配,但GPU之间的通讯推迟一直是个让人头疼的问题,严峻拖功用后腿!

  传统办法运用根据环的算法,其间部分值环绕 GPU 环传递。每个 GPU 奉献其值并将成果传递给其街坊。这样的一个进程重复 2N-2 次,其间 N 是一同作业的 GPU 的数量,到该进程结束时,每个 GPU 都具有相同的总和值。需求对环进行第2次传递,以将总和值从终究一个 GPU 传播到其他 GPU

  传统的Ring AllReduce算法,说白了便是让数据在一切GPU之间轮番传递,就像伐鼓传花相同。这办法尽管看着公正,但问题是GPU数量越多,这“花”转的圈数就越多,但随着 GPU 数量的添加,进程数量也会添加。这会添加推迟,因为一切 GPU 都需求在环的每一步坚持同步。‌这些同步推迟明显添加了推迟开支,而且很难满意更严厉的推迟方针

  这次,英伟达祭出了新的大杀器——TensorRT-LLM MultiShot!它奇妙有利地势用了NVSwitch的硬件加速特性——“多播”(Multicast),就像播送相同,每个GPU只需发送一次数据,就能一同把数据发送给一切其他GPU

  要害就在这儿,传统的Ring AllReduce需求N个GPU之间进行N次点对点通讯,而Multicast只需求一次播送,就能让一切GPU收到数据。这就等于把N倍的通讯时刻紧缩成了一次,功率提高天然明显

  这一下,通讯进程直接从本来的 2N-2 步(N是GPU数量)削减到了只要2步!推迟直接暴降三分之一!

  更牛的是,MultiShot算法在小音讯、高并行场景下作用特别超卓,而这恰好是大模型推理最常见的场景!这在某种程度上预示着不只推迟更低,吞吐量也更高了

  首要,ReduceScatter让每个GPU担任核算成果张量的一部分,然后,AllGather使用NVSwitch的组播功用,让每个GPU把自己的核算成果播送给其他一切GPU,终究每个GPU都取得了完好的核算成果。因为NVSwitch本身具有数据扩大才能,每个GPU只需求发送1/N的数据,就能接收到完好的张量,逐渐降低了通讯带宽需求。这整个进程,不管多少个GPU参加核算,都只需求两次通讯!

  完成最佳推理功用需求细心的作业负载剖析和对功用瓶颈的深化了解。经过内部工程作业以及与外部研制人员和研究人员的密切合作取得这种了解

  特别声明:以上内容(如有图片或视频亦包含在内)为自媒体渠道“网易号”用户上传并发布,本渠道仅供给信息存储服务。

  被子越重,睡得越香!盖7kg厚被子,明显改进睡觉;盖4周,失眠改进50%!原因竟是...

  胜场差追平湖人!快船4人20+力克马刺 哈登21+12小卡27+6+7

  主帅被驱赶森林狼仍反转太阳 杜兰特33+7华子33+7布克28+9失误

  《编码物候》展览开幕 北京年代美术馆以科学艺术解读数字与生物交错的世界节律