2 Filtering common crawl look at cc CC-MAIN-20250417135010-20250417165010-00065.warc.gz里面就是原始的html .wet的就是提取的plain text。 一堆奇奇怪怪的网站 http://10www.chinatikfans.com/home.php?mod=space&uid=4693&do=blog&classid=104&view=me url是accessable的 看起来像是把html中…
2 Filtering common crawl look at cc CC-MAIN-20250417135010-20250417165010-00065.warc.gz里面就是原始的html .wet的就是提取的plain text。 一堆奇奇怪怪的网站 http://10www.chinatikfans.com/home.php?mod=space&uid=4693&do=blog&classid=104&view=me url是accessable的 看起来像是把html中…
推荐的两本书 https://jax-ml.github.io/scaling-book/ https://huggingface.co/spaces/nanotron/ultrascale-playbook 为什么需要device mesh: device mesh are a reflection of the physical constraints of networking between GPUs 根据物理结构来选择不同的并行策略,优化communication开销 如何思考device mesh: W…
https://main-horse.github.io/posts/visualizing-6d/ DataParallel Identical copies of the model exist on every accelerator. 通过all reduce汇聚梯度 这里还提到了fsdp2这篇论文:SimpleFSDP: Simpler Fully Sharded Data Parallel with torch.compile backward之后,会进行dp link之间的通信 同时和下一层的back…
简单介绍一下MegatronLM中,ContextParallel相关的实现,主要是面向源码 这一节相关的Paper也挺多,也有一些不错的知乎上的文章: Sequence Parallelism: Long Sequence Training from System Perspective Ring self attention,主要引入了分布式的计算。看论文描述应该是两轮,先算score,再算S * V 这里应该是要求同一个Q的S被放到同一个设备上了。没有做在线计算 所以这里是把Attention的act…
这篇文章来介绍一下MegatronLM中DataParallel相关的实现,适合希望阅读源码的同学来看 主要会涉及到DDP/FSDP,distributed optimizer会单独再出一篇文章。 官方有一篇设计文档,可以简单看看https://docs.nvidia.com/megatron-core/developer-guide/latest/api-guide/custom_fsdp.html# DDP MegatronLM中DDP的代码主要在core/distributed/distributed…
这篇文章来介绍一下MegatronLM中,有关EP部分的代码。 因为我也是头一次接触MoE相关的,同时并没有对比过其他系统(DeepSpeed等)的实现,所以这块知识单纯讲一下MegatronLM中的一些细节。 理论基础的话,我在看相关代码的时候,看了这几篇Paper: GShard: Scaling Giant Models with Conditional Computation and Automatic Sharding Switch Transformers: Scaling to Trillion Pa…
这篇文章来介绍一下MegatronLM中,PipelineParallel的实现,主要是偏源码 主要相关的论文是这一篇:Efficient Large-Scale Language Model Training on GPU Clusters Using Megatron-LM 还有经典的一些前置的paper: GPipe: Easy Scaling with Micro-Batch Pipeline Parallelism PipeDream: Generalized Pipeline Parallelism f…
MegatronLM的SequenceParalle主要是针对TP做的 DeepSpeed-Ulysses/RingAttention这种在MegatronLM中叫ContextParallel,会有单独的一篇文章介绍 论文主要是这一篇:Reducing Activation Recomputation in Large Transformer Models SequenceParallel的逻辑相对简单,之前TensorParallel的设计主要针对图中的MLP/Attention层,其他层的输入输出在所有的tp…
这篇文章来介绍一下MegatronLM中,TensorParallel相关的实现,主要是面向源码。 相关论文:Megatron-LM: Training Multi-Billion Parameter Language Models Using Model Parallelism,推荐先看一下 MegatronLM实现的TensorParallel需要对模型结构有改动,用支持并行计算的层来替换掉原始模型中的那些层,并不是类似Torch FSDP这种对模型结构无感知的实现方法。 所以在阅读代码的过程中,主要需要看两个…
土豆豆角炖排骨 这次的做法: * 排骨焯水,小火煮一会 * 切豆角,土豆块 * 放油,放姜片,蒜片(拍一下简单切切就行),葱段,小火煸一下 * 放排骨,炒吧炒吧。放酱油,多放点放一个锅勺 * 炒一炒放豆角。简单炒一炒,放热水,漫过排骨 * 盖盖,中小火炖。等水炒开,放土豆 * 炖10分钟左右,开锅,尝尝汤,味道不够就再放点酱油。 * 收个汁,放点葱段,出国 改进点: * 排骨有点硬,要么是多煮一会,要么是用高压锅先压一下。这样排骨比较软,更好吃 * 后面炖土豆/豆角的时候有点烂了,我大概炖了15分钟。可以放少点时间…