- 博客(767)
- 资源 (10)
- 收藏
- 关注
原创 Comet:字节关于大规模MoE通信计算重叠系统
Comet通过分析通信和计算操作之间的共享数据缓冲区(称为共享张量),消除了通信和计算之间的粒度不匹配,从而实现细粒度的重叠。通过调整分配给每个工作负载的线程块数量,Comet有效平衡了通信和计算延迟,减少了重叠中的气泡现象。在图1(b)的例子中,接收到的输入数据被分成两块,这种粗粒度的重叠相比非管道化执行减少了总的执行时间。将通信和计算任务封装在不同的内核中,限制了对硬件资源的控制,导致内核性能不稳定,阻碍了通信与计算的无缝重叠。此外,粗粒度的划分在通信的初始和结束阶段会导致不可避免的GPU空闲时间。
2025-03-11 20:25:12
303
原创 DeepSeek-DeepEP通信(一)
抽象层次高:隐藏底层通信细节(如 CUDA IPC 或 InfiniBand),简化分布式 GPU 编程。进程级隔离:需显式传递句柄并协调同步,适合紧密协作的多进程应用(如多进程推理服务)。定位:多 GPU/多节点的高性能通信库,基于 PGAS(分区全局地址空间) 模型。适用场景:大规模并行计算(如 AI 训练、科学模拟),需多 GPU 协同作业。适用范围:单机多 GPU,例如共享数据的多个独立进程(如 MPI 进程)。定位:同一节点(单机)内多进程间的 GPU 内存共享。减少数据移动,提升吞吐量。
2025-03-11 19:59:32
350
原创 DeepSeek-FP8(E4M3)
FP8 是一种 8 位浮点数表示法,FP8 的详细介绍可以参考链接。FP8 采取 E4M3 和 E5M2 两种表示方式,其中 E 代表指数位(Exponent),M 代表尾数位(Mantissa)。在表示范围内,E4M3 更精准,而 E5M2 有更宽的动态范围。与传统的 FP16(16位浮点数)和 FP32(32 位浮点数)相比,它显著减少了存储,提高了计算吞吐。与INT8 的数值表示相比较, FP8 在 LLM 的训练和推理更有优势。
2025-03-10 21:50:51
343
原创 DeepSeek-专家并行(二)
大规模跨节点专家并行:Expert Parallelism / EPEP 使得 batch size 大大增加,从而提高 GPU 矩阵乘法的效率,提高吞吐。其次 EP 使得专家分散在不同的 GPU 上,每个 GPU 只需要计算很少的专家(因此更少的访存需求),从而降低延迟。DeepSeek-V3使用的专家并行,的流水线并行,以及数据并行(ZeRO1)。
2025-03-10 21:32:18
550
原创 DeepSeek V3 并行训练、推理优化点(一)
MoE节省flops的好处主要体现在计算密集的prefill阶段,而在访存密集的decode阶段,MoE巨大的参数量然而会带来更加昂贵的数据搬移开销。哪怕能解决访存密集的问题,MoE参数消耗如此多昂贵的HBM空间,这可能也不是一个相当划算的决定。在decode阶段,DeepSeek-V3采取320路专家并行(256个小专家+64个热点专家),有效降低解码时延,并缓解负载不均衡的问题。专家并行会引入all2all通信,由于每个token会激活8个专家,这导致跨节点的all2all通信开销成为主要的系统瓶颈。
2025-03-10 21:17:24
822
原创 DeepSeek-MLA 是什么?
当然你肯定还得逆向把你压缩的回复到原来的维度,那就乘一个上矩阵,要不也推不了么,可以简单认为存的时候存这玩意c_t^{KV} (不占空间),用的时候还得矩阵乘一个上矩阵来还原。你就理解成一个下投影的矩阵,维度是 d x d_c,d_c是非常小的。_c 表示压缩后的维度,远小于 d_h * n_h,所以你kv对就小了呗,因为小了,所以占显存也少了,推理的时候kv_cache也少,推的也快。第t个token在某个hidden_layer的输出你经过我刚才说的下投影矩阵给一压缩,那就变得非常小了。
2025-03-10 18:09:53
356
原创 Llama中文大模型-部署加速
由上海人工智能实验室开发,推理使用 C++/CUDA,对外提供 python/gRPC/http 接口和 WebUI 界面,支持 tensor parallel 分布式推理、支持 fp16/weight int4/kv cache int8 量化。由非十科技领衔,与清华大学可视媒体研究中心合作研发,通过动态swap机制大幅降低硬件配置要求(减少80%),并且Jittor框架通过零拷贝技术,大模型加载相比Pytorch开销降低40%,同时,通过元算子自动编译优化,计算性能提升20%以上。
2024-02-24 18:17:01
716
原创 Llama中文大模型-模型+工具(外延能力)
除了持续增强大模型内在的知识储备、通用理解、逻辑推理和想象能力等,未来,我们也会不断丰富大模型的外延能力,例如知识库检索、计算工具、WolframAlpha、操作软件等。我们首先集成了LangChain框架,可以更方便地基于Llama2开发文档检索、问答机器人和智能体应用等,关于LangChain的更多介绍参见。针对LangChain框架封装的Llama2 LLM类见。
2024-02-24 18:14:25
761
原创 Llama中文大模型-模型微调
加载预训练模型参数和微调模型参数,以下示例代码中,base_model_name_or_path为预训练模型参数保存路径,finetune_model_path为微调模型参数保存路径。基于LoRA微调的模型参数见:基于Llama2的中文微调模型,LoRA参数需要和基础模型参数结合使用。对于全量参数微调的模型,调用方式同模型调用代码示例,只需要修改其中的模型名称或者保存路径即可。,单机多卡的微调可以通过修改脚本中的。,关于LoRA微调的具体实现代码见。,关于全量参数微调的具体实现代码见。安装对应的环境依赖。
2024-02-24 18:12:01
1210
原创 Llama中文大模型-模型预训练
原子大模型Atom在Llama2的基础上,采用大规模的中文数据进行持续预训练,包含百科、书籍、博客、新闻、公告、小说、金融数据、法律数据、医疗数据、代码数据、专业论文数据、中文自然语言处理竞赛数据集等,详见📝 数据来源。互联网上公开的网络数据,挑选出去重后的高质量中文数据,涉及到百科、书籍、博客、新闻、公告、小说等高质量长文本数据。同时对庞大的数据进行了过滤、打分、去重,筛选出超过1T token的高质量中文数据,持续不断加入训练迭代中。Clue开放的中文预训练数据,进行清洗后的高质量中文长文本数据。
2024-02-24 18:10:23
1261
原创 Llama中文大模型-模型部署
基于gradio搭建的问答界面,实现了流式的输出,将下面代码复制到控制台运行,以下代码以Atom-7B-Chat模型为例,不同模型只需修改一下面的model_name_or_path对应的模型名称就好了😊。为了方便通过API方式调用模型,我们提供了脚本用来快速搭建FastAPI接口,相关测试代码与API参数设置见API 调用。创建一个名为 quick_start.py 的文件,并将以下内容复制到该文件中。如需设置环境,安装所需要的软件包,运行下面的命令。你可以从以下来源下载Atom-7B-Chat模型。
2024-02-24 18:09:10
1642
原创 Llama中文大模型
Meta官方在2023年8月24日发布了Code Llama,基于代码数据对Llama2进行了微调,提供三个不同功能的版本:基础模型(Code Llama)、Python专用模型(Code Llama - Python)和指令跟随模型(Code Llama - Instruct),包含7B、13B、34B三种不同参数规模。LoRA参数以及与基础模型合并的参数均已上传至Hugging Face,目前包含7B和13B的模型。
2024-02-24 18:04:18
1972
原创 repository-is-not-signed-in-docker-build
repository-is-not-signed-in-docker-build
2023-07-16 09:57:30
1616
原创 AtomGPT
【转发】为了能够在中文上训练出一个能够和ChatGPT能力接近的中文大模型,我们开放了AtomGPT项目AtomGPT基于LLaMA的模型架构,从0开始训练,希望能在训练的过程中,将模型能力得到提升的进化过程展示出来,感受到模型学习的过程。(ps:各位大佬,如果本项目能给您带来一点点帮助,麻烦点个⭐️吧)
2023-07-02 08:25:11
502
原创 Hadoop集群动态增加节点
配置ntp服务时钟,与主节点同步: server 90.0.25.1。执行该操作后,会看到其他节点上的block转移到新加入的节点上。磁盘总利用率与各个节点的利用率之差的绝对值不超过1%。配置hosts文件:vim /etc/hosts。数据传输带宽默认为1M,这里设置为64M。
2023-06-04 12:29:56
343
原创 Hive on Spark环境搭建
Hive 引擎包括:默认 MR、tez、spark最底层的引擎就是MR (Mapreduce)无需配置,Hive运行自带Hive on Spark:Hive 既作为存储元数据又负责 SQL 的解析优化,语法是 HQL 语法,执行引擎变成了 Spark,Spark 负责采用 RDD 执行。Spark on Hive : Hive 只作为存储元数据,Spark 负责 SQL 解析优化,语法是 Spark SQL语法,Spark 负责采用 RDD 执行。
2023-06-03 20:55:52
3997
原创 手动编译hive
使用hive3.1.2和spark3.4.0配置hive on spark的时候,发现官方下载的hive3.1.2和spark3.4.0不兼容,hive3.1.2对应的版本是spark2.3.0,而spark3.4.0对应的hadoop版本是hadoop2.6或hadoop2.7。除了兼容spark3.4.0外,还将hive3.1.2的guava的版本进行了提升,和hadoop3.x保持一致,以便兼容hadoop3.1.3。1、下载hive3.1.2源码包。2、本地解压并修改源码。
2023-06-03 20:29:18
1449
1
原创 多个硬盘挂载到同一个目录
LV(Logical Volume)- 逻辑卷逻辑卷建立在卷组之上,卷组中的未分配空间可以用于建立新的逻辑卷,逻辑卷建立后可以动态地扩展和缩小空间。系统中的多个逻辑卷可以属于同一个卷组,也可以属于不同的多个卷组。VG(Volumne Group)- 卷组卷组建立在物理卷之上,一个卷组中至少要包括一个物理卷,在卷组建立之后可动态添加物理卷到卷组中。基本概念PV(Physical Volume)- 物理卷物理卷在逻辑卷管理中处于最底层,它可以是实际物理硬盘上的分区,也可以是整个物理硬盘,也可以是raid设备。
2023-04-02 18:01:22
4104
原创 parse error on line 1, column 4: bare “ in non-quoted-field
parse error on line 1, column 4: bare " in non-quoted-field
2022-12-08 09:44:32
2091
原创 kubelet Container runtime network not ready“ networkReady=“NetworkReady=false reason:NetworkPluginNo
Container runtime network not ready" networkReady="NetworkReady=false reason:NetworkPluginNotReady message:Network plugin
2022-10-06 17:49:49
10194
2
McGrawHill_-_Machine_Learning_-Tom_Mitchell课后答案
2016-04-25
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人