期刊文献+
共找到4篇文章
< 1 >
每页显示 20 50 100
基于SDFG的控制流模型到数据流模型的程序转换方法 认领 引用
1
作者 付佳伟 陈俊仕 安虹 《计算机工程》 CAS CSCD 北大核心 2026年第8期193-202,共10页
数据流编程是一种新型的并行编程范式,其通过细粒度的任务拆分实现高性能的并行计算,但也带来了额外的编程复杂性。本文提出一种新型的程序转换方法与编译流程,借助两层程序中间表示实现了将控制流结构的计算程序全自动无缝转换为数据... 数据流编程是一种新型的并行编程范式,其通过细粒度的任务拆分实现高性能的并行计算,但也带来了额外的编程复杂性。本文提出一种新型的程序转换方法与编译流程,借助两层程序中间表示实现了将控制流结构的计算程序全自动无缝转换为数据流结构。由于两种编程模型在程序的表达方式上具有诸多差异,自动化转换过程中面临许多挑战,本文将其细化为4个具体的类别,并逐一提出应对方案。在PolyBench/C数据集上的实验结果表明,通过本文设计的转换方案产生的数据流程序,其整体并行计算性能接近基于有状态数据流多重图(SDFG)的OpenMP并行化方案,并在近一半的样例中超越OpenMP方案。本文还选择了多个具体的程序进行深入分析,讨论了不同编译方案产生的结果存在性能差异的原因,展现了Codelet模型在大量线程下面对不规则并行模式的优越性。 展开更多
关键词 数据流编程 Codelet模型 有状态数据流多重图 程序转换 源到源翻译器
暂未订购 下载PDF
异构多核计算系统的Codelet任务调度策略 认领 引用 被引量:2
2
作者 裴颂文 吕春龙 +1 位作者 宁钟 顾春华 《计算机应用研究》 CSCD 北大核心 2019年第5期1433-1436,1440,共4页
Codelet数据流计算模型在处理大规模并行计算任务时效果显著,但该模型目前缺少在异构多核环境中的任务调度策略。因此,提出了一种在异构多核环境下基于蚁群算法的Codelet任务调度策略。该调度策略将启发式算法与蚁群算法相融合,在发挥... Codelet数据流计算模型在处理大规模并行计算任务时效果显著,但该模型目前缺少在异构多核环境中的任务调度策略。因此,提出了一种在异构多核环境下基于蚁群算法的Codelet任务调度策略。该调度策略将启发式算法与蚁群算法相融合,在发挥各自优势的同时克服了启发式算法不能得出最优解的缺陷以及蚁群算法初始信息匮乏的问题。实验结果表明,智能蚁群任务调度策略相比Codelet运行时系统中原生的动态调度和静态调度策略具有更高的执行效率。 展开更多
关键词 数据流计算 Codelet模型 异构多核 蚁群算法 任务调度
暂未订购 下载PDF
基于MLIR的数据流模型 认领 引用 被引量:1
3
作者 李金熹 尹首一 +1 位作者 魏少军 胡杨 《计算机工程与科学》 CSCD 北大核心 2024年第7期1151-1157,共7页
在冯诺依曼架构下,指令集的使用让软硬件得以解耦并各自飞速发展。然而,近年来并行多核架构加速器的热潮为冯诺依曼架构下的顺序编程模型带来了挑战。在顺序编程模型下设计而成的指令集缺乏对并行硬件的抽象,因此仅仅使用指令集已不能... 在冯诺依曼架构下,指令集的使用让软硬件得以解耦并各自飞速发展。然而,近年来并行多核架构加速器的热潮为冯诺依曼架构下的顺序编程模型带来了挑战。在顺序编程模型下设计而成的指令集缺乏对并行硬件的抽象,因此仅仅使用指令集已不能完全完成软硬件的解耦。人工智能软件编译栈领域需要新的编程模型,以对接顺序执行的编程平台和并行多核的硬件后端,并进一步探索并行硬件提供的优化机会。使用数据流模型作为编程模型,为顺序执行程序和并行硬件指令集的对接过程提供通用抽象,在指令集的基础上进一步实现软件前端与硬件后端的解耦。为确保项目的可复用性,将数据流模型以codelet dialect的形式实现在谷歌提出的编译器框架MLIR上。MLIR致力于整合碎片化的编译器生态,提高前后端对接流程的可复用性,在MLIR上实现的数据流模型将进一步提升MLIR系统的可复用性。 展开更多
关键词 数据流模型 端到端编译 MLIR
暂未订购 下载PDF
申威处理器上数据流运行时系统的设计与实现 认领 引用 被引量:1
4
作者 张鹏飞 陈俊仕 +3 位作者 郑重 沈沛祺 安虹 许乐 《计算机工程》 CAS CSCD 北大核心 2023年第12期46-54,共9页
我国自主研发的新一代神威异构众核计算平台主要采用athread异构编程方法,athread异构编程属于大同步并行模型,难以充分挖掘程序中的细粒度并行性,其采用的同步方式难以实现众核上的任务负载均衡。数据流并行编程模型因其天然并行性、... 我国自主研发的新一代神威异构众核计算平台主要采用athread异构编程方法,athread异构编程属于大同步并行模型,难以充分挖掘程序中的细粒度并行性,其采用的同步方式难以实现众核上的任务负载均衡。数据流并行编程模型因其天然并行性、点对点同步的特点能够很好地解决上述问题。基于Codelet程序执行模型和申威主从核架构特点,设计并实现面向申威处理器的数据流运行时系统swTasklet,通过对Codelet功能的进一步细化和对Codelet机器模型到主从核的映射,避免从核阵列上的同步操作,减少同步开销;由主核完成从核计算任务的调度分配,将计算和同步操作分离,保证运行时系统可以和从核计算库的共用。实验以NPB LU程序和向量-向量加作为测试用例,采用相同的优化方法分别对swTasklet和athread实现进行并行化。实验结果表明:在规模较大情况下,LU程序的swTasklet实现版本比athread版本快16%,向量-向量加swTasklet实现版本比athread版本快1倍;使用swTasklet实现的LU并行版本较主核本取得了平均8倍以上的加速,而向量-向量加swTasklet版本较主核版本取得30倍左右的加速。 展开更多
关键词 申威异构处理器 数据流运行时系统 Codelet程序执行模型 并行编程模型 众核加速
暂未订购 下载PDF
上一页 1 下一页 到第
在线咨询 使用帮助 返回顶部 意见反馈