共查询到20条相似文献,搜索用时 15 毫秒
1.
经过多年的发展,X86架构与ARM架构的处理器逐渐分别占据了桌面端和移动端市场的主导地位.虽然无论从技术角度还是从生态体系方面,这两类架构的处理器性能越来越高,但是由于其指令集臃肿、技术复杂、授权困难等原因,使得开发这两类架构的处理器的门槛较高.研究院所还没有一个合适的指令集用于体系结构的研究和创新.RISC-V指令集的开源使得这一局面得以缓解.其具备精简、开源、敏捷开发等特点引起了工业界与学术界的广泛关注与积极参与.性能计数器(Hardware Performance Counter,HPC)是处理器研究和性能调优的重要工具.由于RISC-V制定的标准性能计数器的可拓展性欠佳、可同时捕获事件的数量有限等不足,本文提出一种新的基于RISC-V的分布式硬件性能计数器.本文使用Genesys2开发板作为实验平台,将这种性能计数器适配到lowRISC-v0.4开源SoC项目上,完成了对该设计方案的验证与评估.该性能计数器只占用3个控制状态寄存器(Control and Status Registers,CSRs)就可以同时捕获比标准的性能计数器多近乎一个数量级的事件,在RISC-V处理器的性能分析、结构优化、侧信道攻防等方面为研究者提供了翔实的统计数据. 相似文献
2.
3.
Barrier同步操作是能够直接影响处理器性能的一类操作.针对流处理器体系结构,提出并实现了2种软件同步机制和1种硬件同步机制,即基于互斥计数器的Barrier同步、基于共享状态寄存器的Lock-free Barrier同步和基于专用硬件管理单元的Barrier同步;在一款流处理器原型系统中测试并分析了在不同负载规模、不同负载分布、典型应用情况下3种同步机制的性能.结果表明,基于专用硬件管理单元的Barrier同步机制性能更优. 相似文献
4.
低代价锁步EDDI:处理器瞬时故障检测机制 总被引:1,自引:0,他引:1
随着ULSI工艺步入深亚微米时代,处理器内部组合逻辑的瞬时故障敏感性迅速提高,文中在设计初期将硬件寄存器纠检错能力和系统软件检错能力纳入考虑,兼顾处理器内组合逻辑、时序逻辑两类部件,设计应用级“低代价锁步EDDI(Error Detection by Duplicated Instructions)”机制.创新如下:(1)提出基于概率论的故障漏检率量化估计方法,为纠检错与性能折中进行指导.以往的应用级检错机制在设计过程中并没有考虑到下层操作系统的检错能力,这会造成可靠性估计不足而带来性能损失.文中依照指令流经的部件将故障划分为不同子类,并将操作系统纳入考虑,提出基于概率论的故障漏检率量化估计方法,理论估计与故障注入结果拟合良好.(2)低代价锁步EDDI机制,结合硬件纠检错能力,兼顾处理器内组合逻辑和时序逻辑两类部件,大幅降低了性能代价.提出独特的低代价锁步指令复制规则,并通过编译链前端的寄存器分配,大幅减少了寄存器预留数,有效缓解了寄存器压力,降低了访存代价,提高了寄存器的性能.寄存器预留也保证了本机制无需修改编译器传参规则,无需重新编译系统库,提高了通用性.(3)采用单比特故障模型,基于SPARC体系结构,选取处理器中代表性部件:解码(Decoder Unit)单元、地址生成(Address GEN Unit)单元、算逻单元(ALU)进行故障注入,对低代价锁步EDDI实现代价进行详细评测.与全复制EDDI相比,低代价锁步EDDI仅以故障漏检率SDC(Silent Data Corruption)平均升高0.8%的代价,换取了动态执行指令数平均减少36.1%,执行时间平均降低35.2%的性能优势. 相似文献
5.
由于缺乏相关硬件功能,Open64编译器的软件流水技术没有面向X86处理器的版本。为此,提出一种适用于X86平台的Open64软件流水实现框架。利用软件实现处理器的部分硬件行为,通过循环过滤方法剔除不适用的循环。针对缺乏循环寄存器文件的问题,设计寄存器分配算法达到使用通用寄存器的目的,并添加模变量扩展模块以保证执行的正确性。实验结果表明,与循环展开方案相比,该框架可使系统平均获得9%的性能提升。 相似文献
6.
虚拟化技术已成为云计算平台中的关键性支撑技术.它极大地提高了数据中心的资源利用率,降低了管理成本和能源消耗,但同时也为数据中心带来了新的问题——性能干扰.同一平台上的多虚拟机过度竞争某一底层硬件资源(如CPU,Cache等),会造成虚拟机性能严重下降;而出于安全性和可移植性的考虑,底层平台管理者需要尽量避免侵入式监测上层虚拟机,因而,如何透明而有效地从底层估算虚拟机性能干扰,成为虚拟化平台管理者必须面临的一个挑战.为应对以上挑战,提出了一种基于硬件计数器的虚拟机性能干扰估算方法.硬件计数器是程序运行期间产生的硬件事件信息(如CPU时间片、缓存失效次数等),已有工作主要利用大规模分布式系统任务相似性查找产生异常硬件计数器数据的节点,而没有探究硬件事件变化与性能干扰之间的直接关系.通过实验研究发现,硬件计数器(last level cache misses rates,简称LLC misses rates)与不同资源需求的应用性能干扰存在不同的关联关系;以此建立虚拟机性能干扰估算模型,估算虚拟机性能.实验结果表明:该方法可以有效地预测CPU密集型应用和网络密集型应用的性能干扰大小,并仅为系统带来小于10%的开销. 相似文献
7.
近年来, 随着全球定位系统(global positioning system, GPS)的大范围应用, 越来越多的电动自行车装配了GPS传感器, 由此产生的海量轨迹数据是深入了解用户出行规律、为城市规划者提供科学决策支持等诸多应用的重要基础. 但是, 电动自行车上普遍使用的价格低廉的GPS传感器无法提供高精度的定位, 同时, 电动自行车轨迹地图匹配过程因以下原因更具有挑战性: (1)存在大量停留点; (2)高采样频率导致相邻轨迹点的距离较短; (3)电动自行车可行驶的路段更多, 存在大量无效轨迹. 针对上述问题, 提出一种可自适应路网精度的电动自行车轨迹地图匹配方法KFTS-AMM. 该方法融合基于分段卡尔曼滤波算法的轨迹简化算法(KFTS), 和分段隐马尔可夫模型的地图匹配算法(AMM). 首先, 利用卡尔曼滤波算法可用于最优状态估计的特性, KFTS能够在轨迹简化过程中对轨迹点进行自动修正, 使轨迹曲线变得平滑并减少了异常点对于地图匹配准确率的影响. 同时, 使用基于分段隐马尔可夫模型的地图匹配算法AMM, 避免部分无效轨迹对整条轨迹匹配的影响. 此外, 在轨迹数据的处理过程加入了停留点的识别与合并, 进一步提升匹配准确率. 在郑州市真实电动自行车轨迹数据的实验结果表明, KFTS-AMM在准确率上相对于已有的对比算法有较大的提升, 并可通过使用简化后的轨迹数据显著提升匹配速度. 相似文献
8.
9.
飞腾1500A处理器性能分析工具Likwid研究 总被引:1,自引:0,他引:1
在飞腾1500A处理器平台对程序性能分析工具Likwid展开研究,主要研究了飞腾1500A处理器硬件拓扑信息的获取、性能监测单元PMU的访问以及性能分析工具的使用和数据分析。通过hwloc获取飞腾1500A处理器的硬件信息,给程序员提供关于飞腾1500A处理器的拓扑结构及相关概要信息;编写内核驱动模块使能飞腾1500A处理器的性能监控单元,指定事件类型,通过对应硬件计数器记录目标程序执行过程中事件发生的次数;结合简单代码和模板化的微基准测试程序,使用性能分析工具收集程序执行过程中相关数据,进行性能分析。 相似文献
10.
11.
密码专用处理器常采用分簇式超长指令字(Very Long Instruction Word, VLIW)架构,其性能的发挥依赖于编译器的实现.当前对于通用VLIW架构的编译后端优化方案,在密码专用处理器上都有一定的不适应性.为此,本文提出了一种面向密码专用处理器的、同时进行簇指派、指令调度和寄存器分配的编译器后端优化方法.构造“定值-引用”链,求解变量的候选寄存器类型集合交集,确定其寄存器类型;实时评估可用资源,进行基于优先级的指令选择和基于平衡寄存器压力的簇指派;改进线性扫描算法,基于变量的“待引用次数”列表进行实时的寄存器分配.实验结果表明,本方法能够提升生成代码的性能,且算法是非启发式的,减小了编译所需的时间. 相似文献
12.
13.
Markov离散事件动态系统参数灵敏度估计算法 总被引:1,自引:0,他引:1
给出了马尔可夫离散事件系统参数灵敏度估计的高效率仿真算法.既可以用于稳态性
能测度的参数灵敏度估计,也可用于终止型性能测度的灵敏度估计.和现有的仿真算法相比,其
数学描述和仿真流程比较简洁,易于编程实现.给出的各种仿真算例均验证了该方法的适用性.
此外,还指出了马尔可夫系统性能测度参数灵敏度的精确估计为光滑扰动分析(Smoothed Perturbatin
Analysis)和似然比方法(Likelihood Ratios)得到的估计量之和,单独使用其中的任何一
种均难以给出系统性能测度参数灵敏度的可靠、一致估计. 相似文献
14.
15.
16.
17.
随着处理器由高主频的单核处理器逐步转向片上多核处理器(CMP),计算机并行处理能力不断提升.通过分析GIS串行算法面临的性能瓶颈,利用CMP的优势,采用线程级并行处理栅格数据.针对边缘提取算法,深入分析和比较了MPI、OpenMP等当前主流的并行编程模式,提出了并行性能估计模型.基于OpenMP编程模型分析线程数、调度方式和分块大小对算法并行性能的影响,实现边缘提取最优并行.实验证明,性能评估模型能够准确预测CMP环境下的并行性能,基于OpenMP实现的边缘提取并行算法能够提高图像边缘提取效率. 相似文献
18.
19.
3种提高软件流水有效性的算法:比较和结合 总被引:1,自引:0,他引:1
软件流水是开发循环程序指令级并行性的技术,它通过并行执行连续的多个循环体来加快循环的执行速度.在软件流水中,循环体的重叠增加了寄存器需求,导致寄存器压力增大,当目标处理机所提供的寄存器不足时,软件流水可能失败.在Itanium处理机上评估了NAS和SPEC2000基准程序中的软件流水循环的寄存器需求,发现静态寄存器不足是造成软件流水失败的主要原因,提出了3种增加软件流水个数、提高软件流水有效性的算法:限制循环展开因子的算法(register sensitive unrolling,简称RSU)、堆栈寄存器分配算法(stacked registerallocation,简称SRA)以及变量类型转换的算法(variabletype conversion,简称VTC).RSU根据静态寄存器需求确定一个合理的展开因子,增加了软件流水的成功率;SRA和VTC分别使用空闲的堆栈寄存器和旋转寄存器来充当静态寄存器,提高了寄存器的利用率.在面向Itanium处理器的开放源码编译器ORC(open research compiler)上实现了这3种算法,通过NAS程序的测试比较了这3种算法的有效性,同时对它们的结合应用进行了研究和实验. 相似文献
20.
对称多处理器的飞速发展和近年来提出的动态异构处理器(DHMP)为性能优化提供了新的机遇。一个机遇是找出程序每个阶段的性能瓶颈,提出了静态程序阶段分析方法,即通过分析结构参数和计算相似度矩阵来找出程序每个阶段的资源瓶颈;另一个机遇是给出动态异构处理器重构的时间节点,提出了DPDA和HTPD两种动态阶段检测算法,检测出阶段的变化能够为动态可重构处理器提供重构的时间节点。DPDA算法效果很好且软硬件实现代价小,而HTPD算法是目前为止第一个使用统计学方法进行动态检测阶段的算法。实验表明,与BBV相比,DPDA和HTPD能避免BBV离线、动态算法需添加额外硬件、结果与编译器相关等限制,并且阶段划分的稳定性和正确率与BBV相当。DPDA和HTPD算法由于本身不依赖额外硬件,因此都能直接在主流处理器和动态异构处理器(DHMP)中使用。 相似文献