[{"data":1,"prerenderedAt":390},["ShallowReactive",2],{"posts":3},[4,15,21,28,37,46,53,60,67,74,81,88,95,101,108,117,124,131,138,147,154,161,167,176,184,192,199,206,215,223,231,239,247,256,264,273,282,290,297,305,312,320,327,334,342,350,358,366,373,382],{"abbrlink":5,"title":6,"date":7,"categories":8,"tags":10,"excerpt":14},"eba8fb8a","拆解Megatron MoE源码，追踪token与专家归属","2026-10-26",[9],"懵逼的深度学习",[11,12,13],"分布式训练框架","Megatron-LM","MoE","本文沿 Megatron-LM 的源码，拆解一个 MoE 层里的参数放置、token 分发、专家计算与反向通信，再把它接回 DP、CP 和 PP。算例采用 DeepSeek-V4-Pro 的模型结构。",{"abbrlink":16,"title":17,"date":7,"categories":18,"tags":19,"excerpt":20},"fe6a1979","DeepSeek-V4 训练并行调优：千卡与万卡配置",[9],[11,12,13],"把训练从 1024 张卡扩到 8192 张卡，如果模型和全局 batch 都不变，每个数据并行副本分到的工作就会减少。原本能够连续送进流水线的 32 个 microbatch，可能只剩下 4 个。卡多了，流水线却更难填满。 这里以 Megatron-LM 训练 DeepSeek-V4-Pro 为例，从显存和并行分组开始，整理千卡、万卡集群的调优方法，再讨论 EP、PP、CP 的选择与优化效果。文中的算例可以复算，性能数字保留论文中的模型",{"abbrlink":22,"title":23,"date":24,"categories":25,"tags":26,"excerpt":27},"820979d0","Debug 救星！用 ObjWatch 助力复杂 Python 项目的高效代码理解与调试","2024-12-21",[],[],"摘要 使用 ObjWatch 助力复杂 Python 项目的高效代码理解与调试。",{"abbrlink":29,"title":30,"date":31,"categories":32,"tags":34,"excerpt":36},"80c749f","Jax编程: 踩坑记录","2024-03-30",[33],"Jax 编程",[35],"Jax","摘要 记录 jax 使用过程中的坑。",{"abbrlink":38,"title":39,"date":40,"categories":41,"tags":43,"excerpt":45},"40cda68f","CUDA编程: CUDA流,并发与上下文","2024-02-06",[42],"CUDA 编程",[44],"CUDA","摘要 深入介绍流的使用，包括流的并发，多线程调度流，并发限制，创建流间依赖关系，重叠主机与设备的执行等，同时，结合实例讲解了 CUDA 上下文以及 MPS 的概念，简单介绍了 CUDA Driver API 对 Context 的管理。",{"abbrlink":47,"title":48,"date":49,"categories":50,"tags":51,"excerpt":52},"5a01a3bf","CUDA编程: CUDA流,事件与同步","2024-01-30",[42],[44],"摘要 详细讲解 CUDA 流，事件的概念以及声明，以此为基础，深入了解 CUDA 流操作之间的依赖关系，流的同步与异步，以及如何优化事件的创建与管理等等。",{"abbrlink":54,"title":55,"date":56,"categories":57,"tags":58,"excerpt":59},"d7bb3d7c","CUDA编程: CUDA内存管理（三）","2024-01-23",[42],[44],"摘要 CUDA C 编程中的简单的内存管理，线程操作，如何编写核函数，使用 Thrust 库，并行计算，性能分析工具。",{"abbrlink":61,"title":62,"date":63,"categories":64,"tags":65,"excerpt":66},"9aa59e2e","CUDA编程: CUDA内存管理（二）","2024-01-16",[42],[44],"摘要 详细讲解共享内存存储体、存储体冲突、访问模式以及内存填充等知识点。",{"abbrlink":68,"title":69,"date":70,"categories":71,"tags":72,"excerpt":73},"aab372f6","CUDA编程: CUDA内存管理（一）","2024-01-09",[42],[44],"摘要 各种内存的对齐访问以及实验，避免带宽浪费。还对比了 AoS 与 SoA 结构体在 GPU 上的性能表现。",{"abbrlink":75,"title":76,"date":77,"categories":78,"tags":79,"excerpt":80},"62a8be74","CUDA编程: CUDA内存模型概述","2024-01-02",[42],[44],"摘要 讲解 CUDA 内存层次结构，如寄存器，共享内存，纹理内存，全局内存等。",{"abbrlink":82,"title":83,"date":84,"categories":85,"tags":86,"excerpt":87},"ec855d6e","CUDA编程: PyCUDA编程简介","2023-12-26",[42],[44],"摘要 PyCUDA GPU 编程。主要内容是掌握几种PyCUDA 的基本内核函数，在 Python 中生成和调用并行化的 CUDA C 内核函数，以及了解 PyCUDA 的并行前缀算法。",{"abbrlink":89,"title":90,"date":91,"categories":92,"tags":93,"excerpt":94},"55d1319f","CUDA编程: CUDA C编程简介","2023-12-19",[42],[44],"摘要 讲解 CUDA C 编程中的简单的内存管理，线程操作，如何编写核函数，使用 Thrust 库，并行计算，性能分析工具。",{"abbrlink":96,"title":97,"date":91,"categories":98,"tags":99,"excerpt":100},"e07c9171","CUDA编程: CUDA模型概述",[42],[44],"摘要 讨论 GPU 的并行计算是如何在硬件上实现的，CUDA 中的模块理解以及 CPU和 GPU 之间的交互，指令的同步。",{"abbrlink":102,"title":103,"date":104,"categories":105,"tags":106,"excerpt":107},"b3409785","CUDA编程: GPU编程概述和CUDA环境搭建","2023-12-12",[42],[44],"摘要 模型变得越来越深，参数愈加庞大，虽然准确率不断增长，由于硬件受限，对实际场景部署的要求也越来越高，CUDA 编程成为了一门必备的武林绝学。",{"abbrlink":109,"title":110,"date":111,"categories":112,"tags":114,"excerpt":116},"f3209fd4","记录第n次创建启用并清理临时swap","2023-12-05",[113],"linux",[115],"swap","摘要 时常要用 chatgpt 辅助生成 swap，记录下来方便",{"abbrlink":118,"title":119,"date":120,"categories":121,"tags":122,"excerpt":123},"82ab1321","论文阅读: ZeRO++: Extremely Eficient Collective Communication for Giant Model Training","2023-11-25",[9],[11],"摘要 原文链接：https:\u002F\u002Farxiv.org\u002Fpdf\u002F2306.10209.pdf 开源代码：https:\u002F\u002Fgithub.com\u002Fmicrosoft\u002Fdeepspeed",{"abbrlink":125,"title":126,"date":127,"categories":128,"tags":129,"excerpt":130},"fc5b020","论文阅读: ZeRO-Infinity: Breaking the GPU Memory Wall for Extreme Scale Deep Learning","2023-10-26",[9],[11],"摘要 ZeRO-Infinity 是基于 ZeRO 的扩展，Infinity 离线引擎可以同时利用 GPU、CPU 和 NVMe 内存，还提出了其他的优化技术。",{"abbrlink":132,"title":133,"date":134,"categories":135,"tags":136,"excerpt":137},"17582ba3","论文阅读: ZeRO-Offload: Democratizing Billion-Scale Model Training","2023-10-17",[9],[11],"摘要 ZeRO-Offload 主要优化在于尽量减少数据在 GPU 与 CPU 之间的移动，并减少 CPU 计算时间，同时最大限度地节省 GPU 上的内存。",{"abbrlink":139,"title":140,"date":141,"categories":142,"tags":144,"excerpt":146},"bddb5e0d","记录第n次修复USB设备无法识别挂载","2023-10-11",[143],"archlinux",[145],"USB","摘要 archlinux 滚着滚着就不能识别 USB 设备了，记录一下修复过程",{"abbrlink":148,"title":149,"date":150,"categories":151,"tags":152,"excerpt":153},"706a94b5","论文阅读: ZeRO: Memory Optimizations Toward Training Trillion Parameter Models","2023-09-30",[9],[11],"摘要 ZeRO 是一种用于大规模深度学习模型的内存优化解决方案，通过消除数据和模型并行训练中的内存冗余，同时保持了低通信量和高计算粒度。",{"abbrlink":155,"title":156,"date":157,"categories":158,"tags":159,"excerpt":160},"b353fa5f","论文阅读: Horovod: fast and easy distributed deep learning in TensorFlow","2023-09-17",[9],[11],"摘要 最近忙实习去了，断更大半年。整理了一下论文，有十几篇没读，后面有时间慢慢更。 这篇论文主要工作是对 TensorFlow 框架 API 的重写，使用 ring-allreduce 和 broadcast 方法，进行数据并行。",{"abbrlink":162,"title":163,"date":157,"categories":164,"tags":165,"excerpt":166},"a8cf276f","论文阅读: PyTorch Distributed: Experiences on Accelerating Data Parallel Training",[9],[11],"摘要 本文提出的 DistributedDataParallel 在优化器运行之前进行梯度平均，用相同的梯度集更新所有模型副本，这样在数学上和本地训练完全等价，而且可以实现异步，比参数平均更加高效。",{"abbrlink":168,"title":169,"date":170,"categories":171,"tags":173,"excerpt":175},"c1bfab13","2023MCM-ICM美赛C题第二问思路","2023-02-23",[172],"数学建模",[174],"数据分析","摘要 在睡了十一个小时后，蹦出的思路，目前网上没有看到相同的方法（不知道比赛刚结束就发思路会不会出事），第一题和第三题大家大同小异，就不讲解了。",{"abbrlink":177,"title":178,"date":179,"categories":180,"tags":182,"excerpt":183},"f100aba","HGame_2023_Week3_3ctu4_card_problem","2023-01-31",[181],"misc",[],"摘要 干扰特征非常多的二分类问题，解题步骤如下",{"abbrlink":185,"title":186,"date":187,"categories":188,"tags":189,"excerpt":191},"19affb6","linux下中文路径命名规范化","2023-01-29",[],[190],"工具","摘要 shell 中无法正常访问带空格或某些字符的目录，写了个脚本规范一下中文路径命名",{"abbrlink":193,"title":194,"date":195,"categories":196,"tags":197,"excerpt":198},"5513d824","caj文档批量转换为pdf-shell脚本多线程","2023-01-10",[],[],"摘要 最近看的论文有些多，但知网上的 caj 文档又卡又难做笔记，遂写了一个 caj 文档批量转换为 pdf 的 shell 脚本。",{"abbrlink":200,"title":201,"date":202,"categories":203,"tags":204,"excerpt":205},"68deaade","CUDA编程性能分析工具 nvprof\u002Fncu --metrics参数含义","2023-01-07",[42],[190],"摘要 在网上没有比较全的中文 ncu --metrics 参数含义，于是自己整理了一下官方和外国友人的笔记。",{"abbrlink":207,"title":208,"date":209,"categories":210,"tags":212,"excerpt":214},"b1e8187e","CT-Windowing医学CT图像增强","2022-10-06",[211],"图像处理",[213],"知识点","摘要 CT winding 是CT扫描的一项图像处理任务，它有助于突出关键的组织结构，通过修改 HU (Hounsfield Units) 参数，使图像更易于分析。",{"abbrlink":216,"title":217,"date":218,"categories":219,"tags":220,"excerpt":222},"28e012f","GroupFormer简要学习笔记","2022-08-31",[9],[221],"群体行为识别","摘要 快速记录下 GroupFormer 网络的核心思想。",{"abbrlink":224,"title":225,"date":226,"categories":227,"tags":228,"excerpt":230},"908291b2","高斯函数与高斯核函数","2022-08-07",[211],[229],"空间滤波","摘要 图像处理领域中，高斯核函数常用于图像低通滤波，记录下原理，同时用代码实现下。",{"abbrlink":232,"title":233,"date":234,"categories":235,"tags":237,"excerpt":238},"5f24596c","我的2022暑假独居生活","2022-06-12",[236],"生活",[],"摘要 一张小方桌，有一荤一素",{"abbrlink":240,"title":241,"date":242,"categories":243,"tags":244,"excerpt":246},"68ed93d0","第二届网刃杯misc所见非所见wp","2022-04-25",[181],[245],"tensorflow","摘要 记录一下这道深度学习入门的wp",{"abbrlink":248,"title":249,"date":250,"categories":251,"tags":252,"excerpt":255},"d43ce4e7","多目标优化笔记","2022-04-19",[172],[253,254],"多目标优化","最优化方法","摘要 多目标优化 ( MOO ) - Multi-Objective Optimization 从问题定义，单目标、多目标，无约束、有约束方面了解多目标优化",{"abbrlink":257,"title":258,"date":259,"categories":260,"tags":261,"excerpt":263},"66d4364b","使用平行线段的相机标定[计划更新]","2022-04-16",[211],[262],"论文复现","摘要 一种使用平行线段来进行相机标定以及形状重建的方法",{"abbrlink":265,"title":266,"date":267,"categories":268,"tags":270,"excerpt":272},"7f21964e","设计实现内存的分配和回收算法","2022-04-13",[269],"操作系统",[271],"作业","摘要 操作系统作业",{"abbrlink":274,"title":275,"date":276,"categories":277,"tags":278,"excerpt":281},"ddce6477","制作目标检测数据集常用python脚本整理","2022-04-09",[9],[279,280],"python","数据集","摘要 制作个人目标检测数据集时，有查找爬取的错误图片，更改标注路径等等需要，写了以下python脚本",{"abbrlink":283,"title":284,"date":285,"categories":286,"tags":287,"excerpt":289},"6e84daf2","Faster-RCNN原理笔记","2022-03-30",[9],[288],"目标检测","摘要 详细记录了 Faster RCNN 网络原理和个人的理解",{"abbrlink":291,"title":292,"date":293,"categories":294,"tags":295,"excerpt":296},"ec86e25e","卷积运算的输入输出shape","2022-03-16",[9],[213],"摘要 记录一下二维卷积神经网络中卷积运算的输入输出shape大小",{"abbrlink":298,"title":299,"date":300,"categories":301,"tags":302,"excerpt":304},"7aac45fd","最小化交叉熵损失与最大似然估计的推导","2022-03-05",[9],[303],"概率与信息论","摘要 机器学习所使用的交叉熵损失函数与信息论里的交叉熵的推导与思考",{"abbrlink":306,"title":307,"date":308,"categories":309,"tags":310,"excerpt":311},"e8ff6ba7","使用Opencv+Python的AR小demo","2022-02-23",[211],[271],"摘要 浅浅了解一下 Python OpenCV，试着给自己的 iphone 8 做一下相机标定",{"abbrlink":313,"title":314,"date":315,"categories":316,"tags":317,"excerpt":319},"a524281d","labelImg闪退错误修复","2021-12-05",[9],[318,280],"labelImg","摘要 使用labelImg时，在未选中数据标签时按Ctrl+D时会闪退，在终端中有以下报错",{"abbrlink":321,"title":322,"date":323,"categories":324,"tags":325,"excerpt":326},"ae4fbfca","2021亚太数学建模竞赛A题简要思路","2021-11-29",[172],[211],"摘要 小记一下第一次参加数模赛",{"abbrlink":328,"title":329,"date":330,"categories":331,"tags":332,"excerpt":333},"3b4e1f24","和周小姐高中的对话（一）","2021-11-08",[236],[],"摘要 和周小姐的高中日常之一",{"abbrlink":335,"title":336,"date":337,"categories":338,"tags":339,"excerpt":341},"93d3d7c3","记录第n次修复引导区","2021-11-07",[143],[340],"grub","摘要 给U盘装了archlinux后，没注意把固态上archlinux的\u002Fetc\u002Ffstab分区挂载配置文件修改了，以为是grub又坏了，干脆把挂载在\u002Fboot下的EFI 系统格式化了，孙子云：“置之死地而后生。” 从头开始",{"abbrlink":343,"title":344,"date":345,"categories":346,"tags":348,"excerpt":349},"86ad67e4","求解微分方程","2021-11-02",[347],"高等数学",[213],"摘要 解微分方程是我的弱项，就靠这个了",{"abbrlink":351,"title":352,"date":353,"categories":354,"tags":356,"excerpt":357},"62c5a99c","拟合和统计中的检验参数","2021-10-20",[355],"统计学",[213],"摘要 数据分析中无处不在的知识点",{"abbrlink":359,"title":360,"date":361,"categories":362,"tags":364,"excerpt":365},"7d2c710d","伽马函数","2021-10-17",[363],"数学",[213],"摘要 遇到了这个伽马函数， 许多博客说对考研很重要，就浅浅记录一下",{"abbrlink":367,"title":368,"date":361,"categories":369,"tags":371,"excerpt":372},"6b91a7a9","正交多项式",[370],"数值分析",[213],"摘要 总结一下可能会遇到的正交多项式",{"abbrlink":374,"title":375,"date":376,"categories":377,"tags":379,"excerpt":381},"1d9b66c4","matlab画图功能再探","2021-10-08",[378],"使用教程",[380],"matlab","摘要 复习了一下 matlab 里面的基本画图函数的属性",{"abbrlink":383,"title":384,"date":385,"categories":386,"tags":387,"excerpt":389},"b8ab2279","拉格朗日插值多项式","2021-10-06",[370],[388],"多项式插值","摘要 在数值分析中，多项式插值是最常提到的内容",1793389735238]