探秘数据库中的并行计算技术应用

本文简要说明了以Shared Nothing为代表的节点间并行处理技术,以及SMP节点内并行处理技术和它们在开源数据库中的应用。

CUDA C编程权威指南:1-基于CUDA的异构并行计算

什么是CUDA?CUDA(Compute Unified Device Architecture,统一计算设备架构)是NVIDIA(英伟达)提出的并行计算架构,结合了CPU和GPU的优点,主要用来处理密集型及并行计算。什么是异构计算?这里的异构主要指的是主机端的CPU和设备端的GPU,CPU更擅长逻

深入了解 GPU 互联技术——NVLINK

随着人工智能和图形处理需求的不断增长,多 GPU 并行计算已成为一种趋势。对于多 GPU 系统而言,一个关键的挑战是如何实现 GPU 之间的高速数据传输和协同工作。然而,传统的 PCIe 总线由于带宽限制和延迟问题,已无法满足 GPU 之间通信的需求。为了解决这个问题,NVIDIA 于 2018 年

[转帖]大模型训练,英伟达Turing、Ampere和Hopper算力分析

https://www.eet-china.com/mp/a219195.html 大 GPU 优势在于通过并行计算实现大量重复性计算。GPGPU即通用GPU,能够帮助 CPU 进行非图形相关程序的运算。在类似的价格和功率范围内,GPU 能提供比CPU 高得多的指令吞吐量和内存带宽。GPGPU 架构

GPUImage框架使用

GPUImage框架简介 GPUImage框架是一个基于OpenGL ES 2.0的iOS图像和视频处理框架。它充分利用GPU并行计算能力可以实时处理图像和视频,可以让开发者轻松地实现各种滤镜效果。 提供了GPUImageMovie、GPUImageCamera等实时视频输入处理类,方便开发者对实时

手敲,Ascend算子开发入门笔记分享

本文分享自华为云社区《Ascend算子开发入门笔记》,作者: JeffDing 。 基础概念 什么是Ascend C Ascend C是CANN针对算子开发场景推出的编程语言,原生支持C和C++标准规范,最大化匹配用户开发习惯;通过多层接口抽象、自动并行计算、孪生调试等关键技术,极大提高算子开发效率

深度解读昇腾CANN多流并行技术,提高硬件资源利用率

GE(Graph Engine)图引擎采用多流并行算法,在满足计算图任务内部依赖关系的前提下,支持高效并发执行计算任务,从而大大提高硬件资源利用率和AI计算效率。

【一天一点.NET小知识】运用向量Vector加速求和计算

随着 .NET 版本的演进,从 .NET Standard 2.0 版本开始,支持 Vector 类型。 从 .NET 8.0 版本开始,大量在 Runtime 提供的各个组件中运用向量计算,​特别是 Linq。 Vector 类型:表示指定数值类型(适用于并行算法的低级别优化)的单个向量。

分布式机器学习:异步SGD和Hogwild!算法(Pytorch)

同步算法的共性是所有的节点会以一定的频率进行全局同步。然而,当工作节点的计算性能存在差异,或者某些工作节点无法正常工作(比如死机)的时候,分布式系统的整体运行效率不好,甚至无法完成训练任务。为了解决此问题,人们提出了异步的并行算法。在异步的通信模式下,各个工作节点不需要互相等待,而是以一个或多个全局服务器做为中介,实现对全局模型的更新和读取。这样可以显著减少通信时间,从而获得更好的多机扩展性。

dense并行训练1-流水线并行

并行训练-流水线 简述 并行训练主要有三种策略: 数据并行训练加速比最高,但要求每个设备上都备份一份模型,显存占用比较高,但缺点是通信量大。 张量并行,通信量比较高,适合在机器内做模型并行。 流水线并行,训练设备容易出现空闲状态,加速效率没有DP高;但能减少通信边界支持更多的层数,适合在机器间使用。

Parallel 与 ConcurrentBag 这对儿黄金搭档(C#)【并发编程系列_2】

并行操作代表之一的 Parallel 和线程安全的 ConcurrentBag

rt下降40%?程序并行优化六步法

并行优化在改善程序接口响应时间和吞吐量指标方面是个利器,所以本次结合前段时间做的一段长链路执行逻辑代码的优化,给大家讲讲程序并行优化的步骤及方法论。

LLM并行训练6-激活优化

前置知识 Activation 激活指的是一些在fp时计算得到的临时tensor, 会用于bp时的计算. 如果能在fp计算后把临时tensor缓存下来就可以加速bp, 缺点在于激活会占用大量显存. 以一层transformer结构为例分析下各层存在的激活. 简单部分的分析这里忽略. 主要分析下几个不

LLM并行训练4-megascale论文学习

算法优化 并行注意力机制 \[串行版本: y = x + MLP(LayerNorm(x + Attention(LayerNorm(x)))) \]\[并行版本: y = x + MLP(LayerNorm(x)) + Attention(LayerNorm(x)))) \]乍一看确实不是等价的,

LLM并行训练3-数据并行

前置知识 混合精度训练 在参数存储时采取fp32, 开始进行fp/bp时转成fp16运算, 拿到fp16梯度后再转回fp32更新参数. ZeRO对显存占用的估算: 模型状态: Weights(fp16)、grad(fp16) 和 MasterWeights(fp32 模型参数备份),momentum

Python并行运算——threading库详解(持续更新)

0. 写在前面:进程和线程 博文参考: Python的并行(持续更新)_python 并行-CSDN博客 《Python并行编程 中文版》 一些相关概念请见上一篇博文。 1. 在Python中使用线程 1.1 多线程简介 线程是独立的处理流程,可以和系统的其他线程并行或并发地执行。 多线程可以共享数

[转帖]ORACLE 并行(PARALLEL)实现方式及优先级

http://blog.itpub.net/25542870/viewspace-2120924/ 一、 Parallel query 默认情况下session 是ENABLE状态 1. 实现方式 1 Alter session force parallel query; 2 Alter table

关于并行开发的一些概念整理【并发编程系列_1】

想很好的理解并行开发,需要了解的知识还是有很多的,下边就简单罗列几个概念。(纯文本)

Dlang 并行化

# Dlang 并行化 > 好难受,dlang 生态太差,没办法,学了半天才明白。 > > 我尽量以精炼的语言解释。 > > 采用 定义,例子(代码),解释 的步骤讲解。 > > 所以你可能看到很多代码,一点解释…… > > 我会省略一些 `import`,让代码短一些 [TOC] ## `para

关于面向对象的方法并行执行的问题

LabVIEW的从同一个类实例化的多个对象如何执行各自的方法呢? 这几天跟同事讨论到LabVIEW的面向对象编程中,如果我设计的一个类有一个方法比较耗时,那么当我实例化多个对象时,那么这个耗时的方法是怎么执行的呢?是各自并行执行还是,必须等某一个对象的方法调用完,接下来调用第二个对象的该方法呢? 接