并查集

例题 一共有 \(n\) 个数,编号是 \(1 \sim n\),最开始每个数各自在一个集合中。 现在要进行 \(m\) 个操作,操作共有两种: M a b,将编号为 \(a\) 和 \(b\) 的两个数所在的集合合并,如果两个数已经在同一个集合中,则忽略这个操作; Q a b,询问编号为 \(a\

算法学习笔记(4): 并查集及其优化

# 并查集 并查集,Disjoint-Set,或者通俗一点,叫做MergeFind-Set,是一种可以动态维护若干个不重叠的集合,并支持集合之间的合并与查询的数据结构。 集体来说,并查集支持下列两个操作: - Find,查询元素所属集合 - Merge,将两个元素所属集合合并 一般来说,为了具体实现

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

整理并发布本科四年的课程资料

可恶,我的本科课程资料 repo 已发布半年,但是发现的人实在是太少了。 如此高质量的课程资料,埋没在互联网中实在可惜,于是写一篇博客引流→ tag: 东南大学 | 计算机科学与技术 | 09 系 | 2019 级 | 专业课 | 往年真题 | 课程笔记 | 期末大作业 数据结构 | 计算机组成原理

申请并部署免费的 SSL/TLS 证书

对于囊中羞涩的我们来说,只要能白嫖,就绝不乱花钱。惯常申请免费 SSL/TLS 证书的途径有: 各大云服务平台限量提供。比如阿里云会给每个账号每年 20 个证书的申请额度。缺点是不支持泛域名,一年后须重新申请并部署; 一些网络服务商如Cloudflare会提供自动化的证书服务,只要在它们的官网作简单

美团二面:SpringBoot读取配置优先级顺序是什么?

理解并合理运用Spring Boot配置加载的优先级,对于保障应用的安全性、可维护性以及降低部署复杂度至关重要。特别是在大规模微服务架构中,合理的配置管理和迁移对于整体系统的稳定性有着不可忽视的作用。

【转帖】MySQL 8.0 hash join有重大缺陷?

我并不这么看。 友情提醒:本文建议在PC端阅读。 徐春阳老师发文爆MySQL 8.0 hash join有重大缺陷。 文章核心观点如下:多表(比如3个个表)join时,只会简单的把表数据量小的放在前面作为驱动表,大表放在最后面,从而导致可能产生极大结果集的笛卡尔积,甚至耗尽CPU和磁盘空间。 就此现

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

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

ORA-01008:并非所有变量都已绑定-解决办法

近期批量处理数据,后台用JAVA编写,连接Oracle数据库,程序运行报ORA-01008问题。解决这个问题时遇见的坑较多,下面复盘现象、问题提出解决办法,希望能帮到遇见同类问题的你。 调试问题: 后台代码: /** * 插入操作的封装 * **/ public static void insert

又一个开源便斩获 7k star 的新模型「GitHub 热点速览」

Star 并不能代表什么,但是绝对能表示一个项目的受欢迎程度。就像刚开源一周就有 7k+ star 的新模型,输入文本 / 图像就能获得 3D 对象。除了这个新模型,本周还有一款新的 Web 3D 渲染引擎 Orillusion,向量数据库新晋成员 qdrant。还有老牌魔兽世界为它站台的游戏解决方

Dlang 并行化

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

零拷贝并非万能解决方案:重新定义数据传输的效率极限

本文讨论了零拷贝在优化数据传输效率方面的局限性。尽管零拷贝技术在减少数据传输过程中的内存拷贝次数方面有很大的优势,但它并非适用于所有情况。文章介绍了一些其他的优化方法,如异步I/O和直接I/O的组合、根据文件大小选择不同的优化方式。至此,我们的计算机基础专栏就结束了,不知道大家有没有发现,操作系统底层提供了丰富的解决方案来支持应用程序的复杂性和可扩展性。对于任何工作中遇到的问题,我们都可以从操作系统的角度寻找解决方法。

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

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

python执行shell并获取结果

在Python中执行Shell命令并获取其结果,通常可以使用subprocess模块。这个模块允许我们启动新的进程,连接到它们的输入/输出/错误管道,并获取它们的返回码。下面是一个详细的示例,展示了如何使用subprocess.run()函数来执行Shell命令并获取其输出。 1. 示例一:使用su

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

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

如何找到并快速上手一个开源项目

以前有写过两篇文章来简单聊过如何做开源的事情,最近我自己组了一个社区里面也有不少朋友对开源感兴趣,于是我便根据自己的经验系统的梳理了一些关于开源的事情。 新手如何快速参与开源项目 手把手教你为开源项目贡献代码 有兴趣的可以先看看之前这两篇。 如何找到自己感兴趣的开源项目 首先第一步先想清楚自己搞

可视化学习:如何使用后期处理通道增强图像效果

GPU是并行渲染的,这样的渲染很高效。但是在实际需求中,有时我们计算片元色值时,需要依赖周围像素点或者某个其他位置像素点的颜色信息,这样的话想要一次性完成绘制就无法做到,需要对纹理进行二次加工处理。