Unlock instant, AI-driven research and patent intelligence for your innovation.

Cache-based trace replay breakpoints using reserved tag field bits

A cache, cache line technology, applied in memory systems, electrical digital data processing, memory architecture access/allocation, etc., can solve problems affecting execution performance, frequency, etc., and achieve the effect of reducing the number and overhead

Pending Publication Date: 2021-02-12
MICROSOFT TECH LICENSING LLC
View PDF5 Cites 0 Cited by
  • Summary
  • Abstract
  • Description
  • Claims
  • Application Information

AI Technical Summary

Problems solved by technology

However, instrumentation has the serious disadvantage of making a check for the occurrence of a breakpoint performed on every memory access, regardless of whether the memory access actually corresponds to a breakpoint.
While these solutions are an improvement over instrumentation for breakpoint detection, they can severely impact execution performance when a cache miss occurs (even if no breakpoint is hit regarding the cache miss), and also cause cache misses to occur more frequently than if the cache were not used for breakpoint detection (i.e. because they actively evicted cache lines that overlapped the memory address being monitored)

Method used

the structure of the environmentally friendly knitted fabric provided by the present invention; figure 2 Flow chart of the yarn wrapping machine for environmentally friendly knitted fabrics and storage devices; image 3 Is the parameter map of the yarn covering machine
View more

Image

Smart Image Click on the blue labels to locate them in the text.
Viewing Examples
Smart Image
  • Cache-based trace replay breakpoints using reserved tag field bits
  • Cache-based trace replay breakpoints using reserved tag field bits
  • Cache-based trace replay breakpoints using reserved tag field bits

Examples

Experimental program
Comparison scheme
Effect test

Embodiment Construction

[0022] At least some embodiments described herein advance cache-based breakpoint detection in a manner that avoids eviction of cache lines that overlap with monitored memory addresses, while maintaining the advantages of prior cache-based breakpoint detection techniques. . In particular, rather than evict a cache line that overlaps with a monitored memory address, these embodiments exploit one or more "reserved" (or otherwise unavailable) cache lines' tag fields (or similar mechanisms). used) to indicate that the cache line overlaps with the monitored memory address. Doing so not only reduces the number of cache misses that occur, but also enables efficient breakpoint checking to be performed when there are subsequent memory accesses involving the cache line (ie, as opposed to only during a cache miss). In particular, efficient breakpoint checking can be performed when there is a hit on any cache line with the reserved bit set in the cache line's tag field, rather than requir...

the structure of the environmentally friendly knitted fabric provided by the present invention; figure 2 Flow chart of the yarn wrapping machine for environmentally friendly knitted fabrics and storage devices; image 3 Is the parameter map of the yarn covering machine
Login to View More

PUM

No PUM Login to View More

Abstract

Performing breakpoint detection via a cache includes detecting an occurrence of a memory access and identifying whether any cache line of the cache matches an address associated with the memory access. When a cache line does match the address associated with the memory access no breakpoint was encountered. When no cache line matches the address associated with the memory access embodiments identify whether any cache line matches the address associated with the memory access when one or more flag bits are ignored. When a cache line does match the address associated with the memory access when the one or more flag bits are ignored, embodiment perform a check for whether a breakpoint was encountered. Otherwise, embodiments process a cache miss.

Description

Background technique [0001] When writing code during the development of a software application, developers typically spend a significant amount of time "debugging" the code to find runtime errors in the code. In doing so, developers can take several approaches to reproduce and localize source code defects (bugs), such as observing the behavior of the program based on different inputs, inserting debugging code (e.g., printing variable values, tracing branches of execution, etc. ), temporarily remove code sections, etc. Tracking down runtime errors to pinpoint code defects can consume a significant portion of application development time. [0002] Many types of debugging applications ("debuggers") have been developed to assist developers in the code debugging process. These tools enable developers to track, visualize and alter the execution of computer code. For example, a debugger may visualize the execution of code instructions, may present variable values ​​at various time...

Claims

the structure of the environmentally friendly knitted fabric provided by the present invention; figure 2 Flow chart of the yarn wrapping machine for environmentally friendly knitted fabrics and storage devices; image 3 Is the parameter map of the yarn covering machine
Login to View More

Application Information

Patent Timeline
no application Login to View More
Patent Type & Authority Applications(China)
IPC IPC(8): G06F11/36G06F12/126G06F12/0802
CPCG06F11/362G06F11/3636G06F12/1027G06F12/0837G06F12/0833G06F9/327G06F9/328G06F11/3037G06F11/3648G06F12/0817G06F2212/684G06F12/126
Inventor J·莫拉
Owner MICROSOFT TECH LICENSING LLC