高级知识点:并行计算【笔记】
高级知识点:并行计算【笔记】
并行计算
并行计算的方法
将数据拆分到每个节点上,对应的问题就是如何拆分
每个节点并行的计算出结果,对应的问题是每一个节点算出来的是什么结果
将结果汇总,问题就是如何汇总结果
例如,如何排序10G个元素?
外部排序一般会使用扩展的归并排序
归并排序操作:将数据分为左右两半,分别归并排序,再将两个有序数据归并,那么如何归并?
简单来说就是先比较数的大小,然后将小的数提出来,当两边一样大的时候,放左边的数
这样外部排序就可以
整个算法的实现重点部分在归并的方法
归并结点的实现(k路归并)
需要使用堆的结构来优化,因为堆是二叉树,树根就是最小点,然后一点一点将树根取出来,一路比较变换,最后结束
这种在库中一般叫做priorityqueue
只要每个数据源最小的元素放到内存中就可以,但是这样就会很慢,效率比较低,所以可以设置一个缓冲区,一点一点的输出
在归并中使用iterable
归并数据源来自iterable
如果缓冲区为空,读取下一批元素放入缓冲区
给出缓冲区第一个元素
可配置项:缓冲区大小,如何读取下一批元素
您能读到这儿,我呢是发自真心的感谢您,若要转载,还望请您带上链接
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· SQL Server 2025 AI相关能力初探
· Linux系列:如何用 C#调用 C方法造成内存泄露
· AI与.NET技术实操系列(二):开始使用ML.NET
· 记一次.NET内存居高不下排查解决与启示
· 探究高空视频全景AR技术的实现原理
· 阿里最新开源QwQ-32B,效果媲美deepseek-r1满血版,部署成本又又又降低了!
· 单线程的Redis速度为什么快?
· SQL Server 2025 AI相关能力初探
· AI编程工具终极对决:字节Trae VS Cursor,谁才是开发者新宠?
· 展开说说关于C#中ORM框架的用法!