
分布式与并行计算
文章平均质量分 96
超算、高性能计算、并行计算和分布式计算是计算领域中的重要概念,但它们之间的区别常常令人困惑。
镰刀韭菜
视野,意志,品格;目标,坚持,实践
展开
-
【学术前沿】PATHWAYS:谷歌大规模异构计算编排调度系统(Jeff Dean 和 Sanjay Ghemawat联合出品)
Pathways系统旨在探索新系统和机器学习研究思路,同时保持当前模型的最新性能。Pathways使用异步运算符的分片数据流图,这些运算符消耗和生成futures,并在数千个加速器上有效地联合调度异构并行计算,同时协调其专用互连上的数据传输。Pathways利用了一种新颖的异步分布式数据流设计,该设计允许控制平面并行执行,而不管数据平面中的依赖关系。通过精心设计,这种设计允许Pathways采用单个控制器模型,从而更容易表达复杂的新并行模式。原创 2024-10-17 09:42:40 · 748 阅读 · 0 评论 -
【优化算法】粒子群优化算法
粒子群优化算法(Particle Swarm Optimization[PSO])是在1995年由Eberhart博士和Kennedy博士一起提出的,它源于对鸟群捕食行为的研究。它的基本核心是**利用群体中的个体对信息的共享从而使整个群体的运动在问题求解空间中产生从无序到有序的演化过程,从而获得问题的最优解。**设想这么一个场景:一群鸟进行觅食,而远处有一片玉米地,所有的鸟都不知道玉米地到底在哪里,但是它们知道自己当前的位置距离玉米地有多远。原创 2022-12-12 21:53:18 · 941 阅读 · 0 评论 -
【分布式训练】基于PyTorch进行多GPU分布式模型训练(补充)
随着以ChatGPT为代表的大模型的不断涌现,如何在合理的时间内训练大模型逐渐成为一个重要的研究课题。为了解决这个问题,越来越多的从业者转向分布式训练。**分布式训练是使用多个GPU和/或多个机器训练深度学习模型的技术**。分布式训练作业能够克服单GPU内存瓶颈,通过同时利用多个GPU来开发更大,功能更强大的模型。原创 2023-07-20 08:00:00 · 1071 阅读 · 0 评论 -
【分布式训练】基于Pytorch的分布式数据并行训练
加速神经网络训练的最简单方法是使用GPU,它在神经网络中常见的计算类型(矩阵乘法和加法)上提供了比CPU更大的加速。随着模型或数据集变得越来越大,一个GPU很快就会变得不足。例如,像BERT和GPT-2这样的大型语言模型是在数百个GPU上训练的。要执行多GPU训练,我们必须有一种方法在不同的GPU之间分割模型和数据,并协调训练。很多人喜欢在Pytorch中实现自己的深度学习模型,因为它在神经网络框架的控制和易用性之间具有最佳平衡。Pytorch有两种方法可以跨多个GPU拆分模型和数据:和。nn.DataPa原创 2023-07-18 22:45:20 · 4319 阅读 · 2 评论 -
【计算系统】分布式训练:DDP单机多卡并行实战
分布式训练是一种模型训练范式,涉及在多个工作节点上分散训练工作量,从而显著提高训练速度和模型准确性。虽然分布式训练可以用于任何类型的ML模型训练,但将其用于大型模型和计算要求高的任务(如深度学习)是最有益的。原创 2023-11-07 20:31:13 · 2436 阅读 · 0 评论 -
【计算系统】5分钟了解超算,高性能计算,并行计算,分布式计算,网格计算,集群计算以及云计算的区别
也就是常说的GPU运算,不同于CPU,GPU一般集成了上千个核心于一体,具备普通CPU无法比拟的浮点计算性能,因此非常适用于图像处理、虚拟现实和计算机仿真等一类科学领域的应用,近几年发展火热的人工智能、机器学习等技术应用背后也是依靠GPU运算在做支撑。当然,这个资源池越大,每个用户能够获得的资源就会越多,排队等待的时间也就越短,加上一些合理的编程优化,每个计算任务的耗时就会越短,以此加速科研进程。从效率上看,使用网格计算,可以将一个庞大而复杂的任务分解为多个子任务。还可以经济高效地访问云中的资源。原创 2023-11-01 23:45:00 · 7272 阅读 · 1 评论