首页 | 本学科首页   官方微博 | 高级检索  
相似文献
 共查询到20条相似文献,搜索用时 15 毫秒
1.
支持多核并行程序确定性重放的高效访存冲突记录方法   总被引:2,自引:0,他引:2  
多核系统中并行程序执行过程的不确定性给程序调试带来了很大的困难.准确记录初始执行中冲突访存的次序是并行程序确定性重放的基础.提出了通过建立精确happens-before关系记录访存冲突的方法.此方法利用简洁高效的地址冲突检测机制确定冲突访存操作在执行中所处happens-before序关系的位置,可以抑制部分记录信息的产生,从而有效减少记录信息.与其他方式方法相比,可以进一步压缩17%的记录条数.采用逻辑向量时钟描述冲突访存操作间的happens-before关系,与采用标量时钟相比,可以避免happens-before关系的误识,降低重放执行时并行度的损失.  相似文献   

2.
多核程序的执行存在不确定性,内存竞争记录是实现多核程序确定性重演的关键技术.针对现有内存竞争记录机制记录日志较大、重演速度受限等问题,提出了一种新型的循环式点到点内存竞争记录算法.该算法用当前发生序表示内存冲突,用硬件签名实现冲突检测,无需修改原有的cache结构;引入冲突方向检测机制,约减连续同向的当前发生序,记录循环发生序到内存竞争日志.该算法中,内存竞争日志中所记录的任意两线程间的内存竞争呈循环状,大大减少了冗余,并用增量计数器优化循环发生序,更大程度上减小了内存竞争日志.仿真结果表明该算法能够在引入较少硬件资源的前提下有效地减小内存竞争日志.同时,内存竞争日志也具有较好的可扩展性.  相似文献   

3.
高岚  王锐  钱德沛 《软件学报》2013,24(6):1390-1402
多核处理器并行程序的确定性重放是实现并行程序调试的有效手段,对并行编程有重要意义。但由于多核架构下存在共享访存不同步问题,并行程序确定性重放的研究依然面临多方面的挑战,给并行程序的调试带来很大困难,严重影响了多核架构下并行程序的普及和发展。分析了多核处理器造成并行程序确定性重放难以实现的关键因素,总结了确定性重放的评价指标,综述了近年来学术界对并行程序确定性重放的研究。根据总结的评价指标,从纯软件方式和硬件支持方式对目前的确定性重放方法进行了分析与对比,并在此基础上对多核架构下并行程序的确定性重放未来的研究趋势和应用前景进行了展望。  相似文献   

4.
Narayanasamy  S. Pokam  G. Calder  B. 《Micro, IEEE》2006,26(1):100-109
With software's increasing complexity, providing efficient hardware support for software debugging is critical. Hardware support is necessary to observe and capture, with little or no overhead, the exact execution of a program. Providing this ability to developers will allow them to deterministically replay and debug an application to pin-point the root cause of a bug.  相似文献   

5.
并发程序执行的不确定性导致了程序错误的不可再现性,后续的执行无法再现前次执行的错误,这使得以反复执行程序,重复再现故障为核心的循环调试方法变得不再可用。本文提出了一种基于确定性重演的并发程序的调试方法,确定化并发程序的执行轨迹,重现程序初始运行的错误状态。  相似文献   

6.
张建行  刘全 《计算机科学》2021,48(10):37-43
强化学习中的连续控制问题一直是近年来的研究热点.深度确定性策略梯度(Deep Deterministic Policy Gradients,DDPG)算法在连续控制任务中表现优异.DDPG算法利用经验回放机制训练网络模型,为了进一步提高经验回放机制在DDPG算法中的效率,将情节累积回报作为样本分类依据,提出一种基于情节...  相似文献   

7.
时圣苗  刘全 《自动化学报》2022,48(7):1816-1823
深度确定性策略梯度(Deep deterministic policy gradient,DDPG)方法在连续控制任务中取得了良好的性能表现.为进一步提高深度确定性策略梯度方法中经验回放机制的效率,提出分类经验回放方法,并采用两种方式对经验样本分类:基于时序差分误差样本分类的深度确定性策略梯度方法(DDPG with temporal difference-error classification,TDCDDPG)和基于立即奖赏样本分类的深度确定性策略梯度方法(DDPG with reward classification,RC-DDPG).在TDCDDPG和RC-DDPG方法中,分别使用两个经验缓冲池,对产生的经验样本按照重要性程度分类存储,网络模型训练时通过选取较多重要性程度高的样本加快模型学习.在连续控制任务中对分类经验回放方法进行测试,实验结果表明,与随机选取经验样本的深度确定性策略梯度方法相比,TDC-DDPG和RC-DDPG方法具有更好的性能.  相似文献   

8.
Xi  Bao  Wang  Rui  Cai  Ying-Hao  Lu  Tao  Wang  Shuo 《国际自动化与计算杂志》2021,18(4):619-631
Machine Intelligence Research - Reinforcement learning (RL) algorithms have been demonstrated to solve a variety of continuous control tasks. However, the training efficiency and performance of...  相似文献   

9.
软件DSM系统的并行调试环境已经成为制约其广泛应用的一个重要因素,重放方法使得用户能用循环调试技术来调试具有执行不确定性的软件DSM程序,本文定义了软件DSM程序执行的happen-before-1关系,并依据其提出一种在软件DMS系统JIAJIA上实现重放的方法,实际应用测试表明,该方法产生很小的空间和时间开销。  相似文献   

10.
软件DSM系统的并行调试环境已经成为制约其广泛应用的一个重要因素。全局断点技术是用户调试程序的一种基本方法。该文通过定义软件DSM程序执行的HB1序来描述程序的执行,并以此定义因果分布式断点。并使用重放方法和向量时间戳技术来获得因果分布式断点。应用测试结果表明,该方法产生很小的空间和时间开销。  相似文献   

11.
程序调试工作的首要基础是错误可重现,然而并行程序执行过程存在天然的不确定性,尤其在多核处理器上,如何重现并行程序的错误是一个巨大的挑战.现有的方法或记录整个系统的状态或需要细粒度插桩,存在可用性差与运行时开销大等问题.本文首次提出一种基于硬件辅助的面向用户态并行程序的轻量级记录与重放方法,该方法通过软件协助来记录信号、系统调用与操作系统调度相关的序关系;利用硬件记录访存冲突,同时在记录过程中采用基于目录的方法来压缩日志存储.通过在16核模拟平台上评估,本文提出的方法不仅方便了用户态并行程序调试,同时减少了81%的存储日志开销.  相似文献   

12.
内存竞争记录是解决多核程序执行不确定性的关键技术,然而现有点到点的内存竞争记录机制带来的硬件开销大,难以应用到实际的片上多核处理器系统中.以降低点到点内存竞争记录方式的硬件开销为出发点,为采用监听一致性协议的片上多核处理器(chip multiprocessor, CMP)系统设计了基于并发记录策略的点到点内存竞争记录算法.该记录算法将两两线程间点到点的内存竞争关系扩展到所有线程,采用分布式记录方法为每个线程记录一个由内存竞争关系的一方构成的内存竞争日志;重演时采用简化的生产者消费者模型,确保了确定性重演的实现,有效降低了硬件消耗和带宽开销.在8核处理器系统中的仿真结果表明,该并发式点到点内存竞争记录算法为每个处理器核添加硬件资源约171B,每千条内存操作指令记录日志大小约2.3B,记录和重演阶段均添加不到1.5%的带宽开销.  相似文献   

13.
随着多核处理器的发展,硬件平台已经提供了充裕的并行能力,这对软件并行编程提出了更高的要求.传统的基于锁机制的并行编程模型存在着诸多难题.借鉴数据库中事务的思想,人们提出事务存储,旨在提供一种可编程性良好的同步手段.硬件事务存储快速有效的优势使之成为研究的热点.阐述了事务存储的基本概念、执行模型和编程接口.介绍了硬件事务存储系统的三大核心内容,对比了两种典型的硬件事务存储系统.分析讨论了目前硬件事务存储系统研究的热点和难点问题.最后介绍了硬件事务存储研究的平台和测试程序.  相似文献   

14.
于佳耕  周鹏  武延军  赵琛 《软件学报》2012,23(6):1620-1634
进程重放用于程序调试,无法重现系统全部状态,难以分析错误根源.而系统级重放复杂且难于实现,尚无模型分析方法提供理论指导,确保重放执行与记录执行等价.为了使执行重放系统适用于系统调试,建立虚拟机指令执行模型,提出了虚拟机执行重放的定义,给出并证明了成功重放的充分条件.根据该充分条件,设计实现了基于Xen的虚拟机重放系统CASMotion.CASMotion讨论了Xen DomU中不确定事件的种类,给出各类事件的重放方法以及时间点的匹配算法.CASMotion成功实现了不确定事件的准确重放,实验结果表明其具有较低的性能损失.  相似文献   

15.
In recent years many security attacks occur when malicious codes abuse in-process memory resources.Due to the increasing complexity,an application program may call third-party code which cannot be controlled by programmers but may contain security vulnerabilities.As a result,the users have the risk of suffering information leakage and control flow hijacking.However,current solutions like Intel memory protection extensions(MPX)severely degrade performance,while other approaches like Intel memory protection keys(MPK)lack flexibility in dividing security domains.In this paper,we propose IMPULP,an effective and efficient hardware approach for in-process memory protection.The rationale of IMPULP is user-level partitioning that user code segments are divided into different security domains according to their instruction addresses,and accessible memory spaces are specified dynamically for each domain via a set of boundary registers.Each instruction related to memory access will be checked according to its security domain and the corresponding boundaries,and illegal in-process memory access of untrusted code segments will be prevented.IMPULP can be leveraged to prevent a wide range of in-process memory abuse attacks,such as buffer overflows and memory leakages.For verification,an FPGA prototype based on RISC-V instruction set architecture has been developed.We present eight tests to verify the effectiveness of IMPULP,including five memory protection function tests,a test to defense typical buffer overflow,a test to defense famous memory leakage attack named Heartbleed,and a test for security benchmark.We execute the SPEC CPU2006 benchmark programs to evaluate the efficiency of IMPULP.The performance overhead of IMPULP is less than 0.2%runtime on average,which is negligible.Moreover,the resource overhead is less than 5.5%for hardware modification of IMPULP.  相似文献   

16.
基于依赖图的硬件事务存储技术研究   总被引:1,自引:0,他引:1  
事务存储技术能够简化并行程序中对共享资源的访问控制,是当前的研究热点之一.目前,多数基于硬件的事务存储系统采用基于冲突检测与处理的并发控制协议,当检测到两事务发生冲突时就中止二者之一.但是对事务间"冲突"更深入的分析表明,某些"冲突"并不一定会导致事务的回退,这种冲突称为"弱冲突".基于依赖图的硬件事务存储技术能够避免弱冲突引发的多余事务回退.模拟实验表明,基于依赖图的事务存储系统与基于冲突处理的事务存储系统相比具有明显的性能优势.  相似文献   

17.
数据竞争是多线程程序的常见漏洞之一,传统的数据竞争分析方法在查全率和准确率方面难以两全,而且所生成检测报告难以定位漏洞的根源.鉴于Petri网在并发系统建模和分析方面具有行为描述精确、分析工具丰富的优点,提出一种基于Petri网展开的新型数据竞争检测方法.首先,对程序的某一运行轨迹进行分析和挖掘,构建程序的一个Petri网模型,它由单一轨迹挖掘得到,却可隐含程序的多个不同运行轨迹,由此可在保证效率的同时降低传统动态分析方法的漏报率;其次,提出基于Petri网展开的潜在数据竞争检测方法,相比静态分析方法在有效性上有较大提升,而且能明确给出数据竞争的产生路径;最后,对上一阶段检测到的潜在数据竞争,给出基于CalFuzzer平台的潜在死锁重演调度方法,可剔除误报,保证数据竞争检测结果的真实性.开发相应的原型系统,结合公开的程序实例验证了所提方法的有效性.  相似文献   

18.
多核处理器通过增加处理器核数提高计算能力,虽然可以通过同时运行多道程序的方式利用处理器资源,但是多核处理器真正的成功取决于解决并行应用开发中的难题.为此,处理器体系结构和编程模型的协同开发是必须的.而随着核数的增多,传统上使用的软件模拟器因为软件的串行性而性能越来越差,无法支持这种软硬件协同开发.FPGA天生的并行性使它在模拟多核处理器时具有较高的模拟性能和高度的可扩放性,成为处理器体系结构研究的理想工具.本文介绍了基于FPGA的多核模拟系统,RAMP-Pink.该系统基于HASim实现,同时支持事务存储和线程级推测,用于对事务存储和线程级推测的软硬件协同开发.该模拟系统可配置不同的FPGA开发平台,也可以以软件模拟方式运行.  相似文献   

19.
针对March类内存检测算法越来越复杂、检测时间越来越长,且更适用于对嵌入式内存芯片的检测等问题,提出一种结合硬件特征的并行内存故障检测方案。该方案包括2种并行检测方法:(1)根据DDR2的结构和工作原理设计的芯片级并行,可以并行检测一个DDR2内部的多个内存芯片。(2)根据访存控制器的结构和工作原理设计的访存控制器级并行,可并行检测多个DDR2内存条。对于芯片级并行,访存带宽越大,即并行检测的芯片个数越多,并行效果越好,从1个芯片到并行检测8个芯片,内存的检测时间几乎是呈线性递减的。对于访存控制器级并行,访存控制器数量越多并行效果越好,从1个LMC到2个LMC,内存的检测时间几乎减少了一倍。实验结果表明,2种并行检测方法不仅能够成倍加快检测速度,而且更适用于用户对内存的检测。  相似文献   

20.
Transactional memory is a promising approach to ease parallel programming. Hardware transactional memory system designs reflect choices along three key design dimensions: conflict detection, version management, and conflict resolution. The authors identify a set of performance pathologies that could degrade performance in proposed HTM designs. Improving conflict resolution could eliminate these pathologies so designers can build robust HTM systems.  相似文献   

设为首页 | 免责声明 | 关于勤云 | 加入收藏

Copyright©北京勤云科技发展有限公司  京ICP备09084417号