期刊文献+
共找到1,029篇文章
< 1 2 52 >
每页显示 20 50 100
面向深度学习编译器TVM的算子融合优化
1
作者 高伟 王磊 +2 位作者 李嘉楠 李帅龙 韩林 《计算机科学》 北大核心 2025年第5期58-66,共9页
算子融合是深度学习编译器中的一种编译优化技术,能够将多个算子合并为一个大的算子,有效降低计算和访存的成本。深度学习编译器TVM的算子融合方案中将算子按照功能特性进行分类,并设计融合规则,最后采用贪心算法进行融合。这种融合方... 算子融合是深度学习编译器中的一种编译优化技术,能够将多个算子合并为一个大的算子,有效降低计算和访存的成本。深度学习编译器TVM的算子融合方案中将算子按照功能特性进行分类,并设计融合规则,最后采用贪心算法进行融合。这种融合方案存在以下问题:首先,功能特性的算子分类方式下的融合规则不够通用,会错失算子融合机会,无法实现更大粒度的融合;其次,贪心的融合算法也无法实现算子融合的最优解。针对上述问题,对TVM进行改进,提出按照算子输入输出映射类型的算子分类方式,并设计通用的算子融合规则以扩大算子融合的粒度;提出基于动态规划的融合方案搜索算法和算子融合代价评估模型,并对搜索空间进行剪枝,使得算法能够在合理时间内搜索得到优化的融合方案。为评测融合方案的有效性,在CPU以及DCU等平台上对VGG-16,Efficient-B0,MobileNet-V1,YOLO-V4等深度学习模型的融合比和推理时延进行测试,实验结果表明,相较于TVM原有融合方案,所提方案融合比平均提升了27%,推理时延平均获得了1.75的加速比。 展开更多
关键词 深度学习编译器 TVM 算子融合 融合规则 动态规划
在线阅读 下载PDF
SIMD-to-RVV动态二进制翻译中的跨架构编程模型适配优化
2
作者 赖远明 李亚龙 +3 位作者 胡瀚之 谢梦瑶 王喆 武成岗 《计算机研究与发展》 北大核心 2025年第6期1469-1491,共23页
RISC-V因其开源和模块化设计等特性,已在嵌入式领域取得显著成功,并逐步向高性能计算(HPC)领域拓展.面向HPC的RISC-V硬件(如Sophon SG2042多核处理器)已展现出与x86/ARM同类型产品相当的性能水平,但不完善的软件生态是阻碍其发展的最大... RISC-V因其开源和模块化设计等特性,已在嵌入式领域取得显著成功,并逐步向高性能计算(HPC)领域拓展.面向HPC的RISC-V硬件(如Sophon SG2042多核处理器)已展现出与x86/ARM同类型产品相当的性能水平,但不完善的软件生态是阻碍其发展的最大障碍之一.开发了面向RISC-V的进程级动态二进制翻译(DBT)器RVBT,用于将成熟的x86软件生态移植到RISC-V平台,加速RISC-V在HPC领域的应用进程.针对HPC程序广泛依赖SIMD指令的特性,聚焦于解决SIMD与RVV间显著的编程模型差异导致的翻译性能瓶颈问题,提出了3项创新的优化方案.x86SIMD将数据类型硬编码于操作码,而RVV需动态配置vtype和掩码寄存器,这导致直接翻译产生了大量冗余操作,严重拉低了翻译运行的效率.通过充分利用程序数据类型的局部性,优化方案可删除跨架构适配编程模型导致的冗余设置,混合使用浮点扩展和向量扩展翻译SIMD指令并按需同步数据,大幅提升了SIMD指令的翻译运行效率.3项优化方案具备通用性,也适用于ARM平台的SIMD到RVV的翻译.实验表明,以SPECCPU2006作为测试集,优化方案对csrr,vsetvl,vsetvli指令的平均动态消除率分别达到了100%,100%和56.31%,在浮点测试集上,掩码设置操作的平均动态消除率达到了74.66%,数据的平均动态同步率为67.35%.优化后的RVBT在整点和浮点测试集上的平均运行效率达到了本地执行的47.39%和40.06%,相比优化前的加速比分别为1.21和8.31,并远超QEMU18.84%和4.81%,展现出了应用于部分HPC场景的潜力. 展开更多
关键词 二进制翻译 RISC-V向量扩展 x86SIMD 跨架构编程模型适配 浮点计算 冗余设置消除 混合翻译
在线阅读 下载PDF
基于RISC-V VLIW架构的混合指令调度算法
3
作者 李奕瑾 杜绍敏 +3 位作者 赵家程 王雪莹 查永权 崔慧敏 《软件学报》 北大核心 2025年第9期3937-3953,共17页
指令级并行是处理器体系结构研究的经典难题.VLIW架构是数字信号处理器领域中提升指令级并行的一种常用架构.VLIW架构的指令发射顺序是由编译器决定的,因此其指令级并行的性能强依赖于编译器的指令调度.为了探索RISC-V VLIW架构的扩展潜... 指令级并行是处理器体系结构研究的经典难题.VLIW架构是数字信号处理器领域中提升指令级并行的一种常用架构.VLIW架构的指令发射顺序是由编译器决定的,因此其指令级并行的性能强依赖于编译器的指令调度.为了探索RISC-V VLIW架构的扩展潜力,丰富RISC-V生态,研究RISC-V VLIW架构的指令调度算法优化.针对单个调度区域,整数线性规划调度算法能够得到调度最优解但复杂度较高,表调度算法复杂度较低但无法得到调度最优解.为了结合两种调度算法的优点,提出了一种IPC理论模型指导的混合指令调度算法,即通过IPC理论模型定位到表调度未达最优解的调度区域,再对该调度区域进一步实施整数线性规划调度算法.该理论模型基于数据流分析技术协同考虑指令依赖和硬件资源,能够以线性复杂度给出IPC的理论上界.混合调度的核心在于IPC理论模型的准确性,理论模型准确率为95.74%.在给定的测评基准上,提出的理论模型应用于混合指令调度时,能够平均认定94.62%的调度区域在表调度下已达最优解,因此仅有5.38%的调度区域需再进行整数线性规划调度.该混合调度算法能够以接近表调度的复杂度达到整数线性规划调度的调度效果. 展开更多
关键词 RISC-V 超长指令字(VLIW) 整数线性规划(ILP) 表调度 理论模型
在线阅读 下载PDF
面向昇腾处理器的高性能同步原语自动插入方法
4
作者 李帅江 张馨元 +4 位作者 赵家程 田行辉 石曦予 徐晓忻 崔慧敏 《计算机研究与发展》 北大核心 2025年第8期1962-1978,共17页
指令级并行(instruction level parallism,ILP)是处理器体系结构研究的经典难题.以昇腾为代表的领域定制架构将更多的流水线细节暴露给上层软件,由编译器/程序员显式控制流水线之间的同步来优化ILP,但是流水线之间的物理同步资源是有限... 指令级并行(instruction level parallism,ILP)是处理器体系结构研究的经典难题.以昇腾为代表的领域定制架构将更多的流水线细节暴露给上层软件,由编译器/程序员显式控制流水线之间的同步来优化ILP,但是流水线之间的物理同步资源是有限的,限制了ILP的提升.针对这一问题,提出一种面向昇腾处理器的高性能同步原语自动插入方法,通过引入“虚拟同步资源”的抽象将同步原语的插入和物理同步资源的选择进行解耦.首先提出了一种启发式算法在复杂的控制流图上进行虚拟同步原语的插入,随后通过虚拟同步原语合并等技术,将虚拟同步资源映射到有限数量的物理同步资源上,并同时在满足程序正确性与严苛硬件资源限制的前提下,根据指令间的偏序关系删除程序中冗余的同步原语.使用指令级与算子级基准测试程序在昇腾910A平台上的实验表明,该方法自动插入同步原语的程序在保证正确性的基础上,整体性能与专家程序员手动插入同步原语接近或持平. 展开更多
关键词 昇腾处理器 同步原语 异构编程 领域定制架构 自动插入
在线阅读 下载PDF
自学习星型链空间自适应分配方法
5
作者 杜立宽 刘晨 +1 位作者 王俊陆 宋宝燕 《计算机科学》 北大核心 2025年第3期359-365,共7页
区块链分片技术是提高区块链系统吞吐量的有效方法。现有的区块链分片方法大多采用静态平行架构分片方案,未解决跨分片交易比例高的问题,导致吞吐量降低以及潜在的无限交易确认延迟。针对这些问题,提出一种基于自学习的星型链空间自适... 区块链分片技术是提高区块链系统吞吐量的有效方法。现有的区块链分片方法大多采用静态平行架构分片方案,未解决跨分片交易比例高的问题,导致吞吐量降低以及潜在的无限交易确认延迟。针对这些问题,提出一种基于自学习的星型链空间自适应分配架构。首先,针对区块链分片系统中跨分片交易比例高的问题,提出一种信标链-分片链架构吞吐量模型;其次,综合分片区块链的吞吐量和时延的关系,在星型链空间的动态决策过程中设计星型链空间奖励函数;最后,提出一种分布式多智能体强化学习动态聚类方法,将每个分片作为智能体共同学习合作策略。实验结果表明,所提方法在吞吐量、跨分片交易比率和交易确认延迟等方面,相比现有方法分别约提升31.74%,35.96%和37.13%。 展开更多
关键词 区块链 分片 深度强化学习 跨分片交易
在线阅读 下载PDF
向量DSP的数组计算高效代码生成技术研究
6
作者 廖泽明 刘桂开 +1 位作者 胡勇华 谢安星 《计算机科学》 北大核心 2025年第S1期886-892,共7页
随着大规模集成电路技术不断发展,融合SIMD、VLIW等指令并行处理技术的向量DSP在高性能计算领域获得日益广泛的关注和应用。适配不同种类的算法函数库成了向量DSP的关键挑战之一。只有减少编程时重复性工作的投入,更加集中精力于基于向... 随着大规模集成电路技术不断发展,融合SIMD、VLIW等指令并行处理技术的向量DSP在高性能计算领域获得日益广泛的关注和应用。适配不同种类的算法函数库成了向量DSP的关键挑战之一。只有减少编程时重复性工作的投入,更加集中精力于基于向量DSP架构和硬件资源进行代码优化,才能有效提高应用开发效率。综合考虑向量DSP代码中的计算涉及的数据数量,提出基于模板的数组计算高效代码的自动生成方法,实现自动化的动态缓存分配,针对不连续的数据访存进行数据重排,并对标量指令进行优化,使生成的代码能够使用处理器的专用向量资源。实验结果表明,使用技术生成代码大幅度提高了获得相关函数代码的工作效率,并且生成的向量计算汇编代码平均性能达到手写汇编代码平均性能的75%左右,与标量汇编代码性能相比有平均8.7倍的加速比。 展开更多
关键词 高性能计算 代码生成 自动向量化 向量DSP
在线阅读 下载PDF
基于深度自监督学习的可微分半色调框架
7
作者 刘登峰 朱佳伟 +2 位作者 徐昊 杜晓凯 柴志雷 《湖南大学学报(自然科学版)》 北大核心 2025年第8期23-32,共10页
针对当前数字半色调算法处理速度慢以及半色调效果不佳的局限性,提出一种基于数据驱动的半色调框架.通过引入Gumbel-Softmax重参数化策略解决半色调离散选择带来的不可微分问题,实现了网络反向传播过程中的梯度无偏估计.为进一步强化半... 针对当前数字半色调算法处理速度慢以及半色调效果不佳的局限性,提出一种基于数据驱动的半色调框架.通过引入Gumbel-Softmax重参数化策略解决半色调离散选择带来的不可微分问题,实现了网络反向传播过程中的梯度无偏估计.为进一步强化半色调图像的效果,设计出一种新型蓝噪声损失函数,对半色调网点的分布予以优化.同时,提出区域置信度聚合模块,通过结合像素的空间相关性,使网络在训练过程中更加注重像素之间的交互信息.基于以上策略,通过优化半色调质量评估的期望值,构建了一个不需要标签引导的自监督可微分半色调处理框架.实验结果表明,所提出的方法不需要图像标签,能够在保持较高处理速度和较低参数复杂度的前提下,生成高质量的半色调图像,有效保留图像的局部结构信息和纹理细节.并且,该框架可灵活扩展至多级半色调处理,以适应多级打印喷头的需求. 展开更多
关键词 半色调 深度学习 梯度估计 蓝噪声特性
在线阅读 下载PDF
基于申威编译器的并行调度策略优化技术研究
8
作者 徐金龙 王庚武 +4 位作者 韩林 聂凯 李浩然 陈梦尧 刘浩浩 《计算机科学》 北大核心 2025年第9期137-143,共7页
调度策略是编译器进行并行化的重要组成部分,其作用是保持多核处理器下的负载均衡。然而,当前申威GCC编译器在进行自动并行编译流程中,默认采用静态调度划分循环的迭代次数,导致其在非规则循环结构中出现了负载不均衡的问题,影响了申威... 调度策略是编译器进行并行化的重要组成部分,其作用是保持多核处理器下的负载均衡。然而,当前申威GCC编译器在进行自动并行编译流程中,默认采用静态调度划分循环的迭代次数,导致其在非规则循环结构中出现了负载不均衡的问题,影响了申威平台并行程序的运行效率。针对这一问题,所提出的方法在权衡调度开销和负载均衡的同时结合梯式调度策略,对申威GCC原有的调度策略进行改进,提高了申威GCC编译器的并行化效率。该调度策略基于SW3231处理器,在GCC编译器功能测试套件的844个并行测试用例上进行正确性测试,并在SPEC OMP 2012测试集和4种循环类型的典型应用程序上进行性能测评。实验结果表明,相比申威GCC中标准的3种调度策略,该梯式调度算法分别最高获得了1.10和4.54的性能提升,该方法能够在科学计算程序中提高申威GCC编译器的线程级并行化效率,可为申威处理器平台并行化编译提供参考。 展开更多
关键词 OpenMP调度策略 负载均衡 梯式调度 调度开销 申威GCC
在线阅读 下载PDF
基于粒子群算法的自动向量化收益评估模型研究
9
作者 刘梦真 周清雷 +4 位作者 韩林 聂凯 李浩然 陈梦尧 刘浩浩 《计算机科学》 北大核心 2025年第7期248-254,共7页
自动向量化技术利用SIMD部件加速程序的执行,减轻了程序员的负担,是GCC编译器中的重要优化过程之一。但GCC编译器中自动向量化的收益评估模型并不准确,会影响GCC编译器是否应该进行向量化转换的判定。为了提升申威平台上的自动向量化效... 自动向量化技术利用SIMD部件加速程序的执行,减轻了程序员的负担,是GCC编译器中的重要优化过程之一。但GCC编译器中自动向量化的收益评估模型并不准确,会影响GCC编译器是否应该进行向量化转换的判定。为了提升申威平台上的自动向量化效率,基于申威平台上的GCC编译器,构建了一套新的自动向量化收益评估模型。针对申威处理器的后端指令集设计不同种类的代价,通过粒子群算法训练相对应的代价值,以提高申威平台上自动向量化收益评估模型的准确性。在SPEC2006和SPEC2017上进行了实验测试,与GCC编译器默认的收益评估模型相比,所提模型在SPEC2006课题上加速比最高提升7.6%,在SPEC2017课题上加速比最高提升5.75%,验证了模型的有效性。实验结果表明,所提出的模型可进一步完善基础自动向量化功能,提升申威平台编译系统的易用性。 展开更多
关键词 申威平台 GCC编译器 自动向量化 收益评估模型 粒子群算法
在线阅读 下载PDF
基于局部性原理的最大误差并行检测方法
10
作者 冀立光 杨鸿儒 +3 位作者 周玉畅 崔梦琦 何昊天 许瑾晨 《计算机科学》 北大核心 2025年第9期152-159,共8页
浮点数采用有限的位数来表示无限的实数进行计算,因此浮点数计算天然具有不准确性,这种不准确性可以用最大误差来度量。传统浮点数最大误差检测算法采用串行计算思维并结合经典搜索算法,当采样点数量较少时,容易将局部极大值作为全局最... 浮点数采用有限的位数来表示无限的实数进行计算,因此浮点数计算天然具有不准确性,这种不准确性可以用最大误差来度量。传统浮点数最大误差检测算法采用串行计算思维并结合经典搜索算法,当采样点数量较少时,容易将局部极大值作为全局最大值处理,从而遗漏最大误差值。如果大规模提升采样点数量,那么检测程序用时大幅增加,检测性能降低。通过应用并行计算模式指数级增加采样点数量,同步结合局部性原理在误差热点附近采用浮点动态采样策略,大幅提高检测结果的准确性。这种方法可以最大限度地发挥并行计算的算力,不仅可以提升浮点数最大误差的检测精度,还可以压缩检测程序的执行时间并提升性能,加速比可以达到1136.3,检测出的最大误差值优于当前主流检测工具,这为衡量浮点数计算指标提供了新的检测方法。 展开更多
关键词 浮点运算 并行优化 区间采样 误差检测 申威异构架构
在线阅读 下载PDF
深度学习编译器研究综述
11
作者 刘正煜 张帆 +3 位作者 祁晓峰 高彦钊 宋怡景 范旺 《计算机科学》 北大核心 2025年第8期29-44,共16页
随着人工智能的快速发展,越来越多的神经网络模型和算法相继涌现。与此同时,摩尔定律逐渐失效,新型加速器和计算机体系架构层出不穷,这推动了神经网络模型在这些新硬件平台上实现高效部署的迫切需求。在此背景下,深度学习编译器应运而... 随着人工智能的快速发展,越来越多的神经网络模型和算法相继涌现。与此同时,摩尔定律逐渐失效,新型加速器和计算机体系架构层出不穷,这推动了神经网络模型在这些新硬件平台上实现高效部署的迫切需求。在此背景下,深度学习编译器应运而生。与传统编译器不同,深度学习编译器将不同的网络模型作为输入,采用多级中间表示设计,逐层优化模型,并在编译器后端针对特定硬件架构进行优化,最终生成优化后的可执行程序。首先,介绍了深度学习编译器的通用框架,包括各个核心组件和总体流程;随后,系统地分类探讨了编译器的各类优化技术,并对近年来的研究进展进行总结,揭示了领域内的热点和发展趋势;最后,整理了现阶段的深度学习编译器研究,并根据现有研究现状展望了未来的研究方向。 展开更多
关键词 深度学习 编译器 编译优化
在线阅读 下载PDF
面向可编程逻辑控制器的工业软件高效编译方法 被引量:1
12
作者 汪洋 李从飞 +4 位作者 韩兵 朱明 李袁微 邓华 桑毅 《计算机集成制造系统》 北大核心 2025年第2期534-543,共10页
针对工业场景下端侧可编程逻辑控制器设备集群进行复杂程序多编译任务时面临的高延迟和服务质量下降等问题,提出一种面向可编程逻辑控制器设备集群的工业软件端边协同高效编译方法。在支持端边协同的工业环境下建模,通过智能化方法解析... 针对工业场景下端侧可编程逻辑控制器设备集群进行复杂程序多编译任务时面临的高延迟和服务质量下降等问题,提出一种面向可编程逻辑控制器设备集群的工业软件端边协同高效编译方法。在支持端边协同的工业环境下建模,通过智能化方法解析编译任务的相关计算属性,构建一个多编译任务的博弈模型并设计了算法进行求解。为了提高系统的编译准时率,以优先级排序的方式决定每个编译任务获取计算资源的顺序,保证在降低整体编译时间的同时优化准时率,降低编译延迟,维持工业设备的服务质量。实验结果表明,该方法有效利用了边缘服务器提供的计算能力,避免了编译任务大量超时,其性能在端边协同的场景下得到了充分验证。 展开更多
关键词 可编程逻辑控制器 IEC61131-3标准 边缘计算 工业互联网
在线阅读 下载PDF
面向申威平台的SIMD编程接口设计与研究
13
作者 姜军 顾晓阳 +2 位作者 徐坤坤 吕勇帅 黄亮明 《计算机科学》 北大核心 2025年第6期66-73,共8页
在国产申威处理器中,申威GCC编译器在对程序进行向量化时,使用自动向量化和内嵌汇编的方式很难对某些复杂的程序进行向量化,阻碍了国产申威处理器的性能发挥。针对部分程序不能向量化的问题,在申威GCC编译器中进行SIMD编程接口的设计与... 在国产申威处理器中,申威GCC编译器在对程序进行向量化时,使用自动向量化和内嵌汇编的方式很难对某些复杂的程序进行向量化,阻碍了国产申威处理器的性能发挥。针对部分程序不能向量化的问题,在申威GCC编译器中进行SIMD编程接口的设计与研究。在申威向量指令的基础上,通过在申威GCC编译器中添加向量机器模式和向量数据类型,编译器可以对向量参数类型进行识别。根据向量指令的类型和复杂度,分别使用内建函数扩展、操作符扩展和高级语言扩展3种方式实现SIMD编程接口函数。在后端添加不同的指令模板,使接口函数可以匹配相应的指令模板,生成对应向量指令的汇编代码。通过对FFTW库和Hyperscan库进行测试和分析,相比优化前的程序,使用SIMD编程接口进行向量化后,FFTW中Double类和Float类型程序的平均加速比分别为1.97和2.13,Hyperscan的平均加速比为2.94。 展开更多
关键词 向量化 SIMD编程接口 向量指令 内建函数 指令模板
在线阅读 下载PDF
基于细粒度状态标签的代码缓存优化方案
14
作者 牛根 张福新 《计算机研究与发展》 北大核心 2025年第8期1931-1947,共17页
动态二进制翻译器中广泛使用软件代码缓存来管理翻译生成的代码块.代码块的翻译、刷新和内存占用是软件代码缓存的重要指标.目前仅有少量的针对系统级动态二进制翻译器中代码缓存的研究.已有的系统级动态二进制翻译器为实现正确且高效... 动态二进制翻译器中广泛使用软件代码缓存来管理翻译生成的代码块.代码块的翻译、刷新和内存占用是软件代码缓存的重要指标.目前仅有少量的针对系统级动态二进制翻译器中代码缓存的研究.已有的系统级动态二进制翻译器为实现正确且高效的指令语义模拟,均使用了状态标签方案,但该方案会对软件代码缓存管理带来额外的问题.通过深入分析状态标签方案,总结了其给代码缓存管理带来的2类问题:冲突和冗余.针对这2类问题,提出了基于细粒度状态标签的代码缓存优化方法,包括多状态代码缓存和弱状态标签.这2种方案在LATX-SYS中实现并在龙芯LoongArch平台上使用Ubuntu/x8616.04和Windows XP/x86客户机操作系统进行了测试.结果表明,代码块刷新次数和翻译次数分别降低了43%和18%,代码块相似率从59.63%降至5.06%,翻译开销和内存占用均得到降低.总的来说,系统启动时间降低了20%.最后,针对弱状态标签方案进一步测试了SPEC CPU2000,结果表明代码块数量平均减少了13%,且仅带来2%~3%的性能开销. 展开更多
关键词 软件代码缓存 二进制翻译 虚拟化 代码块 动态优化
在线阅读 下载PDF
基于循环代价分析的循环不变量外提算法
15
作者 姜军 翟彦河 +2 位作者 曾志恒 顾轶超 黄亮明 《计算机科学》 北大核心 2025年第6期44-51,共8页
循环不变量外提算法是一种针对程序中循环结构的常用编译优化算法,其通过将循环体中的不变计算移动到循环外部来减少重复计算的开销,从而提高程序运行的速度。但在LLVM编译器中,传统的循环不变量外提算法会将全部循环不变量外提到循环... 循环不变量外提算法是一种针对程序中循环结构的常用编译优化算法,其通过将循环体中的不变计算移动到循环外部来减少重复计算的开销,从而提高程序运行的速度。但在LLVM编译器中,传统的循环不变量外提算法会将全部循环不变量外提到循环体外部,当循环不变量达到一定数量时会导致寄存器溢出,在循环内引入额外的访存代价,对循环产生负优化效果。针对上述问题,在传统LLVM循环不变量外提算法的基础上,引入了一种循环代价分析算法,通过计算循环不变量在循环体中的运行代价和外提操作可能带来的溢出代价,评估其外提可能带来的收益,只对产生正收益的循环不变量进行外提,在有效减少循环体内重复计算的同时,规避引入额外开销的风险。在国产申威831处理器平台,使用典型用例进行优化效果测评,在千万级循环下,相较于传统循环不变量优化算法,提出的新优化算法具有17%以上的性能提升;使用SPEC CPU2017基准测试集(SPECspeed 2017 Interger套件)、Perl解释器DKbench基准测试集、Python解释器pyperformance基准测试集进行综合优化效果测评,结果表明,相较于传统循环不变量优化算法,提出的新优化算法分别具有0.4%,0.63%和1%的性能提升。 展开更多
关键词 LLVM编译器 编译优化 循环不变量外提 寄存器溢出 循环代价分析
在线阅读 下载PDF
SparseMode:用于高效SpMV向量化代码生成的稀疏编译框架
16
作者 王昊天 丁岩 +2 位作者 何贤浩 肖国庆 阳王东 《计算机研究与发展》 北大核心 2025年第6期1443-1454,共12页
稀疏矩阵向量乘法(sparse matrix-vector multiplication,SpMV)是数值计算中的核心操作,广泛应用于科学计算、工程模拟以及机器学习中.SpMV的性能优化主要受限于不规则的稀疏模式,传统的优化通常依赖手动设计存储格式、计算策略和内存... 稀疏矩阵向量乘法(sparse matrix-vector multiplication,SpMV)是数值计算中的核心操作,广泛应用于科学计算、工程模拟以及机器学习中.SpMV的性能优化主要受限于不规则的稀疏模式,传统的优化通常依赖手动设计存储格式、计算策略和内存访问模式.现有张量编译器如TACO和TVM通过领域特定语言(domain specific language,DSL)可实现高性能算子生成,减轻开发人员繁琐的手动优化工作,但对稀疏计算的优化支持尚显不足,难以根据不同的稀疏模式自适应优化性能.为了解决这些问题,提出了名为SparseMode的稀疏编译框架,能够依据矩阵的稀疏模式为SpMV计算生成高效的向量化代码,并根据硬件平台的特性自适应地调整优化策略.该编译框架首先设计了领域专属语言SpMV-DSL,能够简洁高效地表达SpMV的稀疏矩阵和计算操作.然后提出了基于稀疏模式感知的方法,根据SpMV-DSL定义的矩阵存储格式和非零元素分布动态选择计算策略.最后通过稀疏模式分析和调度优化生成高效并行的SpMV算子代码,以充分利用SIMD指令提升性能.在不同硬件平台上的SpMV实验结果表明,SparseMode生成的SpMV算子代码相较于现有的TACO和TVM张量编译器实现了最高2.44倍的加速比. 展开更多
关键词 稀疏矩阵向量乘法 编译器 稀疏模式 高性能计算 向量化
在线阅读 下载PDF
基于区域划分的跨基本块SLP向量化技术
17
作者 韩林 丁永强 +3 位作者 崔平非 刘浩浩 李浩然 陈梦尧 《计算机科学》 北大核心 2025年第9期186-194,共9页
自动向量化作为发掘数据级并行性、提升程序性能的重要方式,被广泛应用于主流编译器中。超字级向量化(Superword-Level Parallelism,SLP)专注于发掘相邻同构语句级别的数据并行性检测并聚合标量指令生成向量指令。然而,传统的SLP框架在... 自动向量化作为发掘数据级并行性、提升程序性能的重要方式,被广泛应用于主流编译器中。超字级向量化(Superword-Level Parallelism,SLP)专注于发掘相邻同构语句级别的数据并行性检测并聚合标量指令生成向量指令。然而,传统的SLP框架在发掘跨基本块的语句向量化时能力不足,特别是当连续的可向量化指令被基本块边界分割时,SLP分析无法有效发掘潜在的向量化语句。针对这一问题,提出了一种基于区域划分的跨基本块SLP向量化方法。该方法通过扩大分析范围至支配关系内的多个基本块,打破了基本块边界的限制,从而能捕捉更多潜在向量化机会,有效提升了SLP向量化效率。所提出的方法基于GCC10.3.0编译器实现,并挑选SPEC CPU2006测试集中包含相关程序段的测试程序进行了实验。实验结果显示,在SPEC CPU2006测试集挑选的测试程序中,与传统SLP方法相比,所提出的方法可使SPEC CPU2006测试程序加速比最高提升12%,相关测试程序的平均加速比提升8%,在polybench测试中获得了平均3%的加速比,其有效性得到验证。该工作可为提升GCC编译中SLP向量化效率提供技术参考。 展开更多
关键词 编译优化 自动向量化 SLP 跨基本块 区域划分
在线阅读 下载PDF
双轨协同设计模型驱动的青少年视功能训练严肃游戏的设计与评估
18
作者 莫逸伟 陈鹏 +3 位作者 侯曼婷 刘洋 罗超 吴琦 《印刷与数字媒体技术研究》 北大核心 2025年第5期138-149,共12页
针对青少年视功能障碍与依从率低的问题,本研究提出并验证了一种基于虚拟现实(Virtual Reality,VR)技术的严肃游戏训练模型。通过双轨协同设计模型整合游戏性与专业性,在游戏中实现动态立体视标与实时渲染场景,针对调节灵敏度、立体视... 针对青少年视功能障碍与依从率低的问题,本研究提出并验证了一种基于虚拟现实(Virtual Reality,VR)技术的严肃游戏训练模型。通过双轨协同设计模型整合游戏性与专业性,在游戏中实现动态立体视标与实时渲染场景,针对调节灵敏度、立体视阈值等视觉指标进行训练。随机对照实验结果显示,受试者在单眼视力、双眼调节力与立体视功能等方面均显著提升,抑制度异常显著降低。可用性评估问卷的结果也显示了患者对视觉吸引力、多模态体验的高满意度。本研究证实了VR严肃游戏在青少年视觉康复中的可行性与有效性,为数字疗法的进一步应用提供了实证依据。 展开更多
关键词 严肃游戏 游戏设计 实证研究 视功能训练
在线阅读 下载PDF
基于申威平台寄存器溢出策略的预选先验优化
19
作者 蔡淳豪 梁淑萍 +1 位作者 姜军 邵宁远 《计算机科学》 北大核心 2025年第6期82-87,共6页
在国产多核处理器申威平台上,申威JDK的C2即时编译器通过图着色寄存器分配算法完成寄存器分配工作。即时编译器在分配寄存器时并没有考虑国产处理器的指令特征,导致编译器生成了过多的访存代码,从而无法更全面地发挥国产处理器的性能。... 在国产多核处理器申威平台上,申威JDK的C2即时编译器通过图着色寄存器分配算法完成寄存器分配工作。即时编译器在分配寄存器时并没有考虑国产处理器的指令特征,导致编译器生成了过多的访存代码,从而无法更全面地发挥国产处理器的性能。为了更充分地发挥申威国产处理器的性能,提出了一种减少图着色寄存器分配时溢出代码的编译优化策略。优化策略基于图着色寄存器分配算法,根据在申威平台上特殊信息的寄存器规律,构造先验模型,并按照先验模型调整溢出策略,从而减少访存代码的生成。该策略在申威JDK上实现了优化,并基于基准测试集SPECjbb2015和SPECjvm2008验证了优化的效果。实验结果表明,优化后SPECjbb2015的max-jOPS和critical-jOPS分数分别提升了4.20%和5.98%,SPECjvm2008的总分数提升了2.02%。 展开更多
关键词 图着色寄存器分配 访存寻址 溢出代码 编译优化
在线阅读 下载PDF
一种基于指令MKS的自动向量化代价模型 被引量:1
20
作者 王震 聂凯 韩林 《计算机科学》 CSCD 北大核心 2024年第4期78-85,共8页
自动向量化代价模型是编译器进行自动向量化优化时的重要组成部分,其作用是评估代码在应用向量化转换后能否获得性能提升。当代价模型不准确时,编译器会应用负收益的向量化转换,从而降低程序的执行效率。针对GCC编译器默认代价模型的不... 自动向量化代价模型是编译器进行自动向量化优化时的重要组成部分,其作用是评估代码在应用向量化转换后能否获得性能提升。当代价模型不准确时,编译器会应用负收益的向量化转换,从而降低程序的执行效率。针对GCC编译器默认代价模型的不精确问题,以Intel Xeon Silver 4214R CPU为平台,提出了一种基于指令MKS的自动向量化代价模型。该模型充分考虑了指令的机器模式、运算类型以及运算强度等,并使用梯度下降算法自动搜索不同指令类型的近似代价。在SPEC2006以及SPEC2017上进行了单线程测试,实验结果表明,该模型能够减少收益评估错误的情况。与默认代价模型生成的向量程序相比,GCC编译器添加MKS代价模型后,在SPEC2006课题上最高获得了4.72%的提速,在SPEC2017课题上最高获得了7.08%的提速。 展开更多
关键词 GCC编译器 自动向量化 代价模型 收益评估 梯度下降
在线阅读 下载PDF
上一页 1 2 52 下一页 到第
使用帮助 返回顶部