使用高速缓存一致性协议数据来解耦跟踪数据流

    公开(公告)号:CN111615687A

    公开(公告)日:2020-09-01

    申请号:CN201980008659.2

    申请日:2019-01-09

    Inventor: J·莫拉

    Abstract: 使用高速缓存一致性协议(CCP)数据来解耦跟踪数据流。一个或多个跟踪数据流包括与执行多个线程有关的高速缓存活动跟踪数据和CCP跟踪数据。高速缓存活动跟踪数据包括线程间数据相依性,线程间数据相依性包括相依高速缓存活动跟踪条目,每个相依高速缓存活动跟踪条目依赖于被跟踪的线程之间的CCP相依性来记录对应线程进行的对应存储器访问。移除线程间数据相依性,以针对多个线程中的每个线程创建使得每个线程能够被独立地重放的独立高速缓存活动跟踪数据。针对每个相依高速缓存活动跟踪条目,该移除包括:(i)基于被跟踪的线程之间的CCP相依性,标识对应线程进行的对应存储器访问的对应值,以及(ii)代表对应线程记录对应存储器访问的对应值。

    调试器中的代码的试验性执行

    公开(公告)号:CN110998541A

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

    申请号:CN201880050455.0

    申请日:2018-06-01

    Inventor: J·莫拉

    Abstract: 试验性执行实体包括执行实体的第一执行。在第一执行中的点处,暂停第一执行并且接收指定用于运行时数据元素的替换值的输入。基于该输入,在第一执行中的点处开始执行实体的第二执行,同时使得第一执行能够稍后恢复,而不由第二执行影响。第二执行包括将运行时数据元素设定为替换值,并且模拟在第二执行期间由实体执行的一个或多个存储器写入。实体的第一执行可以包括实时执行、基于跟踪数据的执行、基于过程转储的执行等。

    对处理器未定义行为依赖的重放时间行程跟踪

    公开(公告)号:CN110892384A

    公开(公告)日:2020-03-17

    申请号:CN201880045607.8

    申请日:2018-05-25

    Inventor: J·莫拉

    Abstract: 重放对处理器未定义行为依赖的跟踪包括:通过基于来自跟踪文件的所跟踪的程序执行的重放所执行的指令,标识对处理器未定义行为的依赖。基于对处理器未定义行为的依赖,重放包括以下中的一项或多项:(i)发起对未定义行为的依赖的通知,(ii)跳转到跟踪文件中的关键帧,并且在该关键帧处恢复重放,(iii)使用两个或更多个潜在行为来分叉重放,或(iv)使用从两个或更多个潜在行为中选择的所选择的行为来继续重放。

    虚拟机运行跟踪
    84.
    发明公开

    公开(公告)号:CN110462588A

    公开(公告)日:2019-11-15

    申请号:CN201880021127.8

    申请日:2018-03-26

    Inventor: J·莫拉

    Abstract: 实施方式涉及虚拟化层捕获由虚拟化层所管理的VM的可重放运行跟踪。可以在由虚拟化层管理的任何运行单元上执行运行跟踪,运行单元例如线程、进程、虚拟处理器、个体VM、多个VM等。被跟踪的运行单元可以并行运行。运行跟踪涉及将以下各项捕获到缓冲区中:运行的指令、输入到指令的存储器、由指令输出的存储器、指令接触的寄存器和排序标记。可以以块捕获跟踪数据,其中保留了因果关系,并且保留了块之间但不必是块内的排序。可以通过在上下文切换之间插入单调递增的标记来描绘块,由此对块进行相对排序。可以通过标识非确定性事件而部分地提供确定性。VM跟踪对客户软件是透明的,客户软件不需要感知。备选地,客户可以与虚拟化层对接以控制跟踪功能性。

    经由高速缓存的有效断点检测

    公开(公告)号:CN110168508A

    公开(公告)日:2019-08-23

    申请号:CN201780083409.6

    申请日:2017-12-29

    Inventor: J·莫拉

    Abstract: 经由高速缓存的有效断点检测包括通过检测高速缓存上的高速缓存未命中来监测存储器位置。将要被监测的储存器地址存储在监测列表中,并且如果高速缓存中存在与储存器地址重叠的任何高速缓存行,则将其逐出。当检测到基于存储器访问操作发生高速缓存未命中时,确定基于高速缓存未命中导入到高速缓存中的高速缓存行的一部分是否与存储在监测列表中的存储器地址重叠。当存在重叠时,对存储器地址处理一个或多个监测操作,并且从高速缓存中逐出导入的高速缓存行。

    用于时间旅行调试和分析的程序跟踪

    公开(公告)号:CN109643273A

    公开(公告)日:2019-04-16

    申请号:CN201780053059.9

    申请日:2017-08-23

    Inventor: J·莫拉

    Abstract: 记录多线程进程的执行的可重放跟踪包括标识跟踪存储器模型,其限定将要跨多线程进程的多个线程被排序的一个或多个可排序事件。跨一个或多个处理器的一个或多个处理单元同时执行多个线程。在多个线程的执行期间,针对每个线程独立地记录单独的可重放跟踪。记录包括针对每个线程:记录针对线程的初始状态;记录由至少一个处理器指令执行的至少一个存储器读取,由线程执行的至少一个处理器指令将存储器作为输入;以及利用单调增加的数字记录由线程执行的至少一个可排序事件,单调增加的数字将事件在跨多个线程的其他可排序事件间进行排序。

Patent Agency Ranking