面向异构众核处理器的轻量级软件调试方法

    公开(公告)号:CN112540908B

    公开(公告)日:2022-07-12

    申请号:CN201910892371.8

    申请日:2019-09-20

    Abstract: 本发明公开了一种面向异构众核处理器的轻量级软件调试方法,基于异构众核处理器,包括以下步骤:S1:输入调试命令:输入主核与从核统一语法格式、并兼容多核的调试命令;S2:地址空间定位:根据编译器和语言提供的关于调试信息的符号表,处理输入的调试命令,将源码级符号转换为进程地址空间中的逻辑地址;S3:执行控制;S4:调试中断处理;S5:调试信号处理;S6:程序现场处理:调试器进程根据众核程序统一逻辑地址空间的分节调试信息和统一的线程调试队列,实现对主、从核一致调试。本发明满足了异构众核软件调试的要求,并降低了调试开销,有效的节约了运算资源。

    基于调试日志的并行程序错误定位方法

    公开(公告)号:CN112631816A

    公开(公告)日:2021-04-09

    申请号:CN201910904061.3

    申请日:2019-09-24

    Abstract: 本发明公开了一种基于调试日志的并行程序错误定位方法,基于异构众核处理器,包括以下步骤:S1:将基于调试日志的错误定位装置插装进消息传递的并行运行时库中;S2:当程序挂住时发出通知,执行应用感知;S3:综合调试日志,定位异类进程:A1:分析pi的Nr队列;A2:如果存在一个Nr:pj→pi,则以pj为新的切入点,查找Ns:pj→pi;A3:如果发现匹配的Ns,即判断通信挂起的原因为该消息未成功发送;A4:如果未发现匹配的Ns,则继续检查pi的Nr队列,查找Ur;A5:直到pi的Nr队列全部检查;S4:输出错误定位报告。本发明在实现具有大规模问题的并行程序的错误定位的同时,显著加快了大规模并行程序通信死锁的定位。

    面向异构众核处理器的轻量级软件调试方法

    公开(公告)号:CN112540908A

    公开(公告)日:2021-03-23

    申请号:CN201910892371.8

    申请日:2019-09-20

    Abstract: 本发明公开了一种面向异构众核处理器的轻量级软件调试方法,基于异构众核处理器,包括以下步骤:S1:输入调试命令:输入主核与从核统一语法格式、并兼容多核的调试命令;S2:地址空间定位:根据编译器和语言提供的关于调试信息的符号表,处理输入的调试命令,将源码级符号转换为进程地址空间中的逻辑地址;S3:执行控制;S4:调试中断处理;S5:调试信号处理;S6:程序现场处理:调试器进程根据众核程序统一逻辑地址空间的分节调试信息和统一的线程调试队列,实现对主、从核一致调试。本发明满足了异构众核软件调试的要求,并降低了调试开销,有效的节约了运算资源。

    将本地方法动态封装为服务的方法

    公开(公告)号:CN112445466A

    公开(公告)日:2021-03-05

    申请号:CN201910822525.6

    申请日:2019-09-02

    Abstract: 本发明公开一种将本地方法动态封装为服务的方法,基于字节码生成和反射技术,包括以下步骤:S1、采用自说明的Xml文件格式,设计生成Java类的配置文件;S2、通过S1中生成的配置文件编写对应Java类的自动生成模块,即根据配置文件中描述的Java类的结构和内容,以ASM为工具,以JNA直接映射模式下Java代理类的格式,生成Java类的字节码;S3、设计服务发布的通用URI格式;S4、通过反射技术编写通用的Servle。本发明只需修改配置文件,完成服务的重新发布和本地方法的调用,即可实现了各种角色之间的解耦,当业务需要变更时,避免了服务层面的开发过程的迭代,从而快速地实现业务系统的更新。

    基于性能数据时空特性的分析装置

    公开(公告)号:CN112540899B

    公开(公告)日:2022-10-04

    申请号:CN201910892364.8

    申请日:2019-09-20

    Abstract: 本发明公开了一种基于性能数据时空特性的分析装置,包括代码采集装置、性能采集装置、处理装置和显示装置,所述代码采集装置用于统计比重大于1%的代码空间、相同或具有90%以上重叠的代码空间、相同代码空间出现的时间节点和时间间隔以及同一代码空间与不同代码空间相邻出现的代码模式;所述性能采集装置根据代码采集装置的采集信息采集对应的性能事件;所述处理装置对采集信息进行处理,并筛选出性能事情的优缺点;所述显示装置根据处理装置输入的筛选信息,在显示屏上输出并行程序的缺陷的和优化方向。本发明能够快速定位程序的性能瓶颈,并为用户提供优化方向,分析效率高、优化速度快。

    面向异构众核Dcache纵向一致性的调试方法

    公开(公告)号:CN112445696B

    公开(公告)日:2022-09-13

    申请号:CN201910822174.9

    申请日:2019-09-02

    Abstract: 本发明公开一种面向异构众核Dcache纵向一致性的调试方法,包括以下步骤:S1、启动软件调试器,运行可执行程序,设置若干个从核断点;S2、在程序运行到从核断点前,保存现场;S3、在预设的地址空间上预先设计一段指令,用于调用函数Flush,从而刷新当前从核所有Dcache行到主存中,当程序运行到从核断点前时,执行S2;S4、在完成从核Dcache的数据刷新后,利用ret指令,在程序运行到从核断点后,将程序的控制流转回到断点处理程序,实现现场的恢复;S5、当程序完成现场恢复后,返回程序原来的指令,继续往下执行。本发明在不增加硬件实现开销的前提下,保证软件调试时获取到真实有效的数据,从而实现错误现场的精确定位,有效支撑了异构众核上的软件调试,保证了软件调试功能的可用性。

    基于层树网络的大规模并行程序性能数据快速收集方法

    公开(公告)号:CN112445675B

    公开(公告)日:2022-09-13

    申请号:CN201910822230.9

    申请日:2019-09-02

    Abstract: 本发明公开一种基于层树网络的大规模并行程序性能数据快速收集方法,包括以下步骤:S1、依据计算节点启动的进程最多能使用的端口号数目限制M,确定子收集节点所需负责的子节点数目m;S2、根据S1中获得m值,将所需采集性能数据的总进程数N划分为一个各个树层并行度相当的拓扑网络;S3、分析各个树层的数据传输效率比1:η1,η2,...,ηh‑1,其中h为树的深度;S4、根据S3中各个树层的数据传输效率比,实现对拓扑网络的优化;S5、通过socket建立层树收集网络,实现对性能数据的收集。本发明针对异构众核结构特征,结合异构众核处理器的特点,将部分收集进程下沉至计算节点上,并且结合各树层的数据传输效率对树型收集网络进行拓扑优化,能够实现大规模并行程序性能数据的快速收集。

    面向异构众核处理器的低扰动性能数据采集方法

    公开(公告)号:CN112445547A

    公开(公告)日:2021-03-05

    申请号:CN201910822171.5

    申请日:2019-09-02

    Abstract: 本发明公开一种面向异构众核处理器的低扰动性能数据采集方法,用于国产众核处理器,包括以下步骤:S1、在主核设置需要采集的性能数据所对应的性能事件,并对性能事件进行分类;S2、通过CSR寄存器设置硬件计数器的初值、计数使能控制、计数事件的选择,即将性能事件选择为计数事件,以实现对硬件计数器的初始化;S3、用户对需要进行性能数据采集的程序段进行插装,通过计算获得该程序段触发该性能事件的次数为两次统计接口函数的差值;S4、主核通过读取保存在统计接口参数地址中的性能事件的计数值实现性能数据的采集。本发明可以对多类性能事件进行并行采集,大大提高了数据采集效率,实现了高效全面、对程序低扰动的性能数据采集。

Patent Agency Ranking