Python已成为机器学习(ML),深度学习(DL)和数据科学(DS)等新兴领域的主要编程语言。 Python的一个有吸引力的功能是,它提供易于使用的编程界面,同时允许图书馆开发人员通过利用高性能计算(HPC)平台提供的计算能力来提高其应用程序的性能。有效的通信是在并行系统上扩展应用程序的关键,通常通过HPC硬件上的消息传递接口(MPI)标准库(MPI)标准库来启用该应用程序。 MPI4PY是一个基于Python的通信库,为Python应用程序提供了类似MPI的接口,允许应用程序开发人员利用包括GPU在内的并行处理元素。但是,目前尚无基准套件来评估现代HPC系统上MPI4PY和PYTHON MPI代码的通信性能。为了弥合这一差距,我们提出了OMB-PY-开源OSU微基准(OMB)套件的Python扩展 - 旨在评估Python中基于MPI的并行应用的通信性能。据我们所知,OMB-PY是平行Python应用程序的第一间通信基准套件。 OMB-PY由各种点对点和集体通信基准测试组成,这些测试适用于一系列流行的Python库,包括Numpy,Cupy,Numba和Pycuda。我们的评估表明,与天然MPI库相比,MPI4PY引入了一个小开销。我们计划公开发布OMB-PY,以使Python HPC社区受益。
translated by 谷歌翻译
在过去几年中,培训最先进的神经网络的记忆要求远远超过了现代硬件加速器的DRAM能力。这仍然需要开发有效的算法,并在大规模的基于GPU的集群上并行培训这些神经网络。由于在现代GPU上的计算相对便宜,因此在这些并行训练算法中设计和实现极其有效的通信对于提取最大性能至关重要。本文介绍了Axonn,一个并行深度学习框架,用于利用异步和消息驱动的执行来安排每个GPU上的神经网络操作,从而降低GPU空闲时间并最大限度地提高硬件效率。通过使用CPU存储器作为划痕空间来定期在训练期间定期卸载数据,AXONN能够将GPU存储器消耗降低四次。这使我们可以将每个GPU的参数数量增加四次,从而减少通信量并将性能提高超过13%。在48-384 NVIDIA TESLA V100 GPU的大型变压器模型上进行了12-100亿参数,Axonn实现了理论峰的49.4-54.78%的每GPU吞吐量,并将培训时间减少22-37天(15-25与最先进的加速度)。
translated by 谷歌翻译
由于高系统复杂性和动态环境,测试和调试已成为机器人软件开发的主要障碍。标准,基于中间件的数据记录不提供有关内部计算和性能瓶颈的足够信息。其他现有方法还针对非常特定的问题,因此不能用于多用途分析。此外,它们不适合实时应用。在本文中,我们呈现ROS2_TRACING,一个灵活的跟踪工具和ROS 2的多功能仪器集合。它允许使用低开销LTTNG示踪器收集实时分布式系统的运行时执行信息。工具还将跟踪集成到无价的ROS 2 Orchestration系统和其他可用性工具中。消息延迟实验表明,当所有ROS 2仪器启用时,端到端消息延迟开销低于0.0055毫秒,我们认为适用于生产实时系统。使用ROS2_TRACING获得的ROS 2执行信息可以与操作系统的跟踪数据组合,从而实现更广泛的精确分析,有助于了解应用程序执行,以找到性能瓶颈和其他问题的原因。源代码可用于:https://gitlab.com/ros-tracing/ros2_tracing。
translated by 谷歌翻译
大型ML型号和数据集已经需要使用多GPU系统进行分布式模型培训。为了利用多GPU系统提供的权力,消除GPU间通信中的瓶颈至关重要 - 互连异构性质的问题挑战。在这项工作中,我们呈现TACCL,这是用于大规模多GPU系统的集体通信原语的合成器。 TACCL将异形拓扑和输入大小进行编码为合成问题,以生成优化的通信算法。 TACCL建立在标准的NVIDIA集体通信库(NCCL)之上,允许它成为PYTORCH等框架中GPU通信的替代品,具有最小的变化。 TACCL为全球,AllToAll和ALLERDUCE等通信基元生成算法,该算法高达3美元的速度超过NCCL。使用TACCL的算法加快了专家模型内部混合物的端到端培训,以17 \%$。通过将优化问题分解成零件并利用多GPU拓扑中的对称性,TACCL在不到3分钟内合成高达80-GPU的集体,比其他基于综合的状态快至少两个数量级 - 艺术集体通信图书馆。
translated by 谷歌翻译
分散算法是一种计算形式,通过依赖于直接连接代理之间的低成本通信的本地动态实现全局目标。在涉及分布式数据集的大规模优化任务中,分散算法显示出强大,有时优越,性能与中央节点的分布式算法。最近,发展分散的深度学习算法引起了极大的关注。它们被视为使用参数服务器或环形恢复协议的那些的低通信开销替代方案。但是,缺乏易于使用和高效的软件包仅在纸上保持了最分散的算法。为了填补差距,我们介绍了Bluefog,一个Python库进行了直接的,高性能的不同分散算法的实现。基于各种通信操作的统一抽象,Bluefog提供直观的接口来实现分散的算法的频谱,从使用静态无向图的那些,用于使用动态和定向图形的同步操作进行异步操作。 Bluefog还采用了多种系统级加速技术,以进一步优化深度学习任务的性能。在主流DNN培训任务中,Bluefog达到了更高的吞吐量,并实现了一个总体上的吞吐量1.2 \ times \ sim 1.8 \ times $ speedup,这是一个基于环 - allyuce的最先进的分布式深度学习包。 Bluefog是https://github.com/bluefog-lib/bluefog的开源。
translated by 谷歌翻译
近来增加大型机器学习模型的趋势需要分发培训和推理任务。考虑到培训这些模型的巨大成本,必须在计算和沟通中解锁优化以获得最佳性能。然而,深入学习框架中的计算和通信内核之间的当前逻辑分离遍及此类障碍的优化机会。通过整体考虑破坏此抽象可以提供许多优化,以提供分布式工作负载中的性能改进。手动应用这些优化需要在每个场景中的底层计算和通信库中的修改,这是耗时和容易出错的。因此,我们呈现Coconet,用DSL表达具有计算和通信的程序。 Coconet包含几种机器学习感知转换,以优化程序和编译器以生成高性能内核。作为第一类构造的计算和通信允许用户在高级抽象上工作,并应用强大的优化,例如融合或传播和计算重叠。 Coconet使我们能够以几行代码在大型语言模型中优化数据,模型和管道平行工作负载。实验显示椰子显着优于最先进的分布式机器学习实现。
translated by 谷歌翻译
分布式训练是通过将任务分配到多个NPU(例如GPU/TPU)来减少DNN训练时间的解决方案。但是,分布式培训增加了NPU之间的通信开销,以使梯度和/或激活同步,具体取决于并行化策略。在用于大规模培训的下一代平台中,NPU将通过具有多种多样的异质带宽的多维网络连接。这项工作确定了一个迫在眉睫的挑战,即如果我们利用日程安排技术来使整个系统进行集体沟通,使所有网络维度保持繁忙并最大化网络BW。我们提出了Themis,这是一种新颖的集体调度方案,该方案动态调度集体(分为块)以平衡各个维度的通信负载,从而进一步改善了网络BW利用率。我们的结果表明,平均而言,Themis可以将单个全减还器的网络BW利用提高1.72倍(2.70倍),并改善实际工作负载的端到端训练迭代迭代迭代迭代迭代性能,例如RESNET-152,GNMT ,DLRM和Transformer-1T分别为1.49倍(最大2.25倍),1.30倍(1.78倍),1.30x(最大1.77倍)和1.25X(最大1.53倍)。
translated by 谷歌翻译
在发展强化学习(RL)培训系统方面取得了重大进展。过去的作品,例如Impala,Apex,Seed RL,样本工厂等,旨在改善系统的整体吞吐量。在本文中,我们试图解决RL训练系统中的常见瓶颈,即平行环境执行,这通常是整个系统中最慢的部分,但很少受到关注。通过针对RL环境的策划设计,我们改善了不同硬件设置的RL环境模拟速度,从笔记本电脑和适度的工作站到NVIDIA DGX-A100等高端机器。在高端机器上,Envpool在Atari环境上的环境执行每秒可实现100万帧,在Mujoco环境上每秒执行300万帧。在笔记本电脑上运行时,Envpool的速度是Python子过程的2.8倍。此外,在开源社区中已经证明了与现有RL培训库的极大兼容性,包括Cleanrl,RL_Games,DeepMind Acme等。最后,Envpool允许研究人员以更快的速度迭代他们的想法,并具有巨大的潜力,并具有巨大的潜力事实上的RL环境执行引擎。示例运行表明,在笔记本电脑上训练Atari Pong和Mujoco Ant只需5分钟即可。 Envpool已经在https://github.com/sail-sg/envpool上开源。
translated by 谷歌翻译
过去的几年见证了基于变压器的模型的成功,其规模和应用方案继续积极发展。变压器模型的当前景观越来越多样化:该模型大小差异很大,最大的参数是最大的。模型特性由于特征的混合物所引入的稀疏性而有所不同。目标应用程序方案可以是关键延迟或面向吞吐量的情况;部署硬件可以是具有不同类型的内存和存储等单身或多GPU系统。随着多样性的增加和变压器模型的快速发展速度,设计高性能和高效的推理系统非常具有挑战性。在本文中,我们提出了DeepSpeed推断,这是用于解决上述挑战的变压器模型推理的全面系统解决方案。深速推理包括(1)一种多GPU推理解决方案,可最大程度地减少潜伏度,同时最大化密集和稀疏变压器模型的吞吐量,当它们适合聚集的GPU内存时,以及(2)一种异质推理解决方案,该解决方案利用CPU和NVME内存中的CPU和NVME内存。除了GPU内存和计算以使高推理吞吐量具有不适合聚集GPU内存的大型推理吞吐量。对于面向延迟的方案,深速推理可将延迟降低到最新的7倍,而对于面向吞吐量的方案,延迟的潜伏期将延迟减少到1.5倍以上。此外,它通过利用数百个GPU来实现实时延迟约束下的参数量表推断,这是一个前所未有的推理。它可以比仅使用GPU的解决方案更大的25倍模型,同时提供84个TFLOPS(超过50美元的A6000峰值)。
translated by 谷歌翻译
科学家越来越依靠Python工具使用丰富的,类似于Numpy的表达式执行可扩展的分布式内存阵列操作。但是,这些工具中的许多工具都依赖于针对抽象任务图进行了优化的动态调度程序,这些调度图通常遇到内存和网络带宽相关的瓶颈,这是由于亚最佳数据和操作员的放置决策。在消息传递接口(MPI)(例如Scalapack和Slate)上构建的工具具有更好的缩放属性,但是这些解决方案需要使用专门的知识。在这项工作中,我们提出了NUMS,这是一个数组编程库,可在基于任务的分布式系统上优化类似Numpy的表达式。这是通过称为负载模拟层次调度(LSHS)的新型调度程序来实现的。 LSHS是一种本地搜索方法,可通过最大程度地减少分布式系统中任何给定节点上的最大内存和网络加载来优化操作员放置。再加上用于负载平衡数据布局的启发式,我们的方法能够在某些常见的数值操作上达到通信下限,我们的经验研究表明,LSHS通过减少2倍的降低2倍来增强RAR上的性能,需要减少4倍的内存, ,在逻辑回归问题上减少10倍的执行时间。在Terabyte尺度数据上,NUMS在DGEMM上实现了竞争性能,与Dask ML和Spark的Mllib相比,在键盘分解的密钥操作中,DASK高达20倍的速度以及logistic回归的2倍加速。
translated by 谷歌翻译
Distributed deep learning (DDL) systems strongly depend on network performance. Current electronic packet switched (EPS) network architectures and technologies suffer from variable diameter topologies, low-bisection bandwidth and over-subscription affecting completion time of communication and collective operations. We introduce a near-exascale, full-bisection bandwidth, all-to-all, single-hop, all-optical network architecture with nanosecond reconfiguration called RAMP, which supports large-scale distributed and parallel computing systems (12.8~Tbps per node for up to 65,536 nodes). For the first time, a custom RAMP-x MPI strategy and a network transcoder is proposed to run MPI collective operations across the optical circuit switched (OCS) network in a schedule-less and contention-less manner. RAMP achieves 7.6-171$\times$ speed-up in completion time across all MPI operations compared to realistic EPS and OCS counterparts. It can also deliver a 1.3-16$\times$ and 7.8-58$\times$ reduction in Megatron and DLRM training time respectively} while offering 42-53$\times$ and 3.3-12.4$\times$ improvement in energy consumption and cost respectively.
translated by 谷歌翻译
RDMA超过融合以太网(ROCE),由于其与常规以太网的织物的兼容性,对数据中心网络具有重要的吸引力。但是,RDMA协议仅在(几乎)无损网络上有效,这强调了拥塞控制对ROCE网络的重要作用。不幸的是,基于优先流量控制(PFC)的本地ROCE拥塞控制方案遭受了许多缺点,例如不公平,线路阻滞和僵局。因此,近年来,已经提出许多计划为ROCE网络提供额外的拥塞控制,以最大程度地减少PFC缺点。但是,这些方案是针对一般数据中心环境提出的。与使用商品硬件构建并运行通用工作负载的一般数据中心相反,高性能分布式培训平台部署高端加速器和网络组件,并专门使用集体(全能,全能,全能)运行培训工作负载)通信库进行通信。此外,这些平台通常具有一个私人网络,将其通信流量与其他数据中心流量分开。可扩展的拓扑意识集体算法固有地设计旨在避免造成的模式并最佳地平衡流量。这些独特的功能需要重新审视先前提出的通用数据中心环境的拥塞控制方案。在本文中,我们彻底分析了在分布式培训平台上运行时的一些SOTA ROCE拥塞控制方案与PFC。我们的结果表明,先前提出的ROCE拥塞控制计划对培训工作负载的端到端表现几乎没有影响,这激发了根据分布式培训平台和分布式培训平台和特征的设计优化但低空的拥塞控制计划的必要性工作负载。
translated by 谷歌翻译
我们旨在通过引入全面的分布式深度学习(DDL)探索器来解决此问题,该研究人员可以确定DDL在公共云上运行时遭受的各种执行“失速”。我们已经通过扩展先前的工作来估算两种类型的通信失速 - 互连和网络摊位来实现剖面。我们使用Profiler培训流行的DNN模型来表征各种AWS GPU实例,并列出了用户做出明智决定的优势和缺点。我们观察到,较昂贵的GPU实例可能不是所有DNN型号的性能最多,并且AWS可能会在次优的硬件互连资源分配次优。具体而言,与单个实例的培训相比,机内互连可以引入高达90%的DNN培训时间和网络连接的实例的通信开销,而与网络连接的实例可能会遭受高达5倍的速度。此外,我们对DNN宏观特征的影响进行建模,例如层的数量和通信摊位上的梯度数量。最后,我们为用户提出了一个基于衡量的建议模型,以降低DDL的公共云货币成本。
translated by 谷歌翻译
TensorFlow is a machine learning system that operates at large scale and in heterogeneous environments. Tensor-Flow uses dataflow graphs to represent computation, shared state, and the operations that mutate that state. It maps the nodes of a dataflow graph across many machines in a cluster, and within a machine across multiple computational devices, including multicore CPUs, generalpurpose GPUs, and custom-designed ASICs known as Tensor Processing Units (TPUs). This architecture gives flexibility to the application developer: whereas in previous "parameter server" designs the management of shared state is built into the system, TensorFlow enables developers to experiment with novel optimizations and training algorithms. TensorFlow supports a variety of applications, with a focus on training and inference on deep neural networks. Several Google services use TensorFlow in production, we have released it as an open-source project, and it has become widely used for machine learning research. In this paper, we describe the TensorFlow dataflow model and demonstrate the compelling performance that Tensor-Flow achieves for several real-world applications.
translated by 谷歌翻译
本文介绍了Halo 1.0,这是一种开放式的可扩展多代理软件框架,该框架实现了一组建议的硬件 - 不合命固式加速器编排(HALO)原理。Halo实现了一个新颖的以计算为中心的消息传递接口(C^2MPI)规范,以启用在异质加速器上的硬件 - 敏捷主机应用程序的性能便携式执行。基于Intel Xeon E5-2620 CPU,Intel Arria 10 GX FPGA和NVIDIA GEFORCE RTX RTX 2080 TI GPU的八个广泛使用的HPC子例程的实验结果表明,Halo 1.0允许在所有统一的控制流程中运行所有统一的控制流程。计算具有最高性能可移植性得分的设备,该设备的最高五个数量级比基于OPENCL的解决方案高五个数量级。
translated by 谷歌翻译
深度学习领域目睹了对极端计算和内存密集型神经网络的显着转变。这些较新的较大模型使研究人员能够推进各种领域的最先进的工具。这种现象刺激了在更多的硬件加速器上产生了针对神经网络的分布式训练的算法。在本文中,我们讨论并比较了当前的最先进的框架,以实现大规模的分布式深度学习。首先,我们调查分布式学习中的当前实践,并确定所使用的不同类型的并行性。然后,我们提出了对大型图像和语言培训任务的性能进行了经验结果。此外,我们解决了他们的统计效率和内存消耗行为。根据我们的结果,我们讨论了阻碍性能的每个框架的算法和实现部分。
translated by 谷歌翻译
扩展培训工作负载的能力是深度学习的关键性能推动者之一。主要缩放方法是基于数据并行GPU的培训,该培训已经被硬件和软件支持高效地支持高效的GPU通信,特别是通过带宽过度曝光。此支持以A价格出现:相对于其“消费者级”对应物,“云级”服务器之间存在幅度成本差异,但相对于其“消费者级”对应物,虽然服务器级和消费者级GPU可以具有类似的计算信封。在本文中,我们调查了昂贵的硬件过度控制方法是否可以通过算法和系统设计所涵盖,并提出称为CGX的框架,为通信压缩提供有效的软件支持。我们认为,在没有硬件支持的情况下,该框架能够从消费者级多GPU系统中删除通信瓶颈:在没有硬件支持的情况下:在培训现代模型和全部准确性方面时,我们的框架可以在商品上进行2-3倍的自动加速系统使用8个消费者级NVIDIA RTX 3090 GPU,并使其超越NVIDIA DGX-1服务器的吞吐量,其具有类似的峰值闪光,但是从带宽过度提供的益处。
translated by 谷歌翻译
变形金刚是一种深入学习语言模型,用于数据中心中的自然语言处理(NLP)服务。在变压器模型中,生成的预训练的变压器(GPT)在文本生成或自然语言生成(NLG)中取得了显着的性能,它需要在摘要阶段处理大型输入上下文,然后是产生一个生成阶段的一次单词。常规平台(例如GPU)专门用于在摘要阶段平行处理大型输入,但是由于其顺序特征,它们的性能在生成阶段显着降低。因此,需要一个有效的硬件平台来解决由文本生成的顺序特征引起的高潜伏期。在本文中,我们提出了DFX,这是一种多FPGA加速器,该设备在摘要和发电阶段中执行GPT-2模型端到端,并具有低延迟和高吞吐量。 DFX使用模型并行性和优化的数据流,这是模型和硬件感知的设备之间快速同时执行执行。其计算核心根据自定义说明运行,并提供GPT-2操作端到端。我们在四个Xilinx Alveo U280 FPGAS上实现了建议的硬件体系结构,并利用了高带宽内存(HBM)的所有频道,以及用于高硬件效率的最大计算资源数量。 DFX在现代GPT-2模型上实现了四个NVIDIA V100 GPU的5.58倍加速度和3.99倍的能效。 DFX的成本效益比GPU设备更具成本效益,这表明它是云数据中心中文本生成工作负载的有前途解决方案。
translated by 谷歌翻译
联合学习(FL)作为边缘设备的有希望的技术,以协作学习共享预测模型,同时保持其训练数据,从而解耦了从需要存储云中的数据的机器学习的能力。然而,在规模和系统异质性方面,FL难以现实地实现。虽然有许多用于模拟FL算法的研究框架,但它们不支持在异构边缘设备上进行可扩展的流程。在本文中,我们呈现花 - 一种全面的FL框架,通过提供新的设施来执行大规模的FL实验并考虑丰富的异构流程来区分现有平台。我们的实验表明花卉可以仅使用一对高端GPU在客户尺寸下进行FL实验。然后,研究人员可以将实验无缝地迁移到真实设备中以检查设计空间的其他部分。我们认为花卉为社区提供了一个批判性的新工具,用于研究和发展。
translated by 谷歌翻译
本文介绍了专门针对软件定义无线电(SDR)的新域特异性嵌入式语言(DSEL)。从一组精心设计的组件中,它可以构建有效的软件数字通信系统,能够以简单明了的方式利用现代处理器体系结构的并行性。特别是,提出的DSEL使管道和序列重复技术的组合能够从数字通信系统中提取时间和空间并行性。我们利用了真实用例上的DSEL功能:用于完全在软件中设计的广泛使用的DVB-S2标准的完全数字收发器。通过评估,我们展示了建议的软件DVB-S2收发器如何从现代高端多核CPU目标中获得最大的收益。
translated by 谷歌翻译