Coherent Agents For Memory Access

Patent No. US12164445 (titled "Coherent Agents For Memory Access") was filed by Amazon Technologies Inc on Feb 3, 2022.

What is this patent about?

’445 is related to the field of data processing in multi-core systems, specifically addressing the challenge of maintaining data coherency when using hardware accelerators. Traditional multi-core systems rely on coherency protocols to ensure that all processing cores have a consistent view of shared data, preventing data corruption and ensuring correct operation. However, accelerators, which are specialized hardware components designed to accelerate specific workloads, often operate outside the coherency domain, leading to potential inconsistencies and performance bottlenecks.

The underlying idea behind ’445 is to introduce a coherent agent that acts as an intermediary between the coherency fabric and the application accelerator. This agent monitors the state of data within the coherency domain and provides this information to an application accelerator agent . The application accelerator agent then uses this information to ensure that the accelerator accesses data in a coherent manner, effectively extending the coherency domain to include the accelerator.

The claims of ’445 focus on a system comprising a coherency fabric, an accelerator agent, and a coherent agent. The coherent agent supports the coherency protocol and obtains state information about data usage by processing components. This state information is then provided to the accelerator agent, which can modify the performance of data operations based on the type of access and the state information, ensuring coherent data access for the application.

In practice, the coherent agent monitors the system fabric for snoop requests and other coherency-related traffic. It maintains a record of the cache state (e.g., clean, dirty, shared, exclusive) for each cache line that the accelerator is working on. When the application accelerator agent needs to access data, it consults the coherent agent to determine the appropriate access method (e.g., read shared, write exclusive). The coherent agent then ensures that the accelerator's access adheres to the coherency protocol, preventing data corruption and ensuring that the accelerator operates on the most up-to-date data.

This approach differs from prior solutions by providing a flexible and scalable way to integrate accelerators into a coherent memory system. Instead of requiring each accelerator to implement the full coherency protocol, ’445 uses a dedicated coherent agent to handle the complexities of coherency management. This allows accelerators to focus on their specific tasks while still benefiting from the guarantees of a coherent memory system. Furthermore, a single coherent agent can support multiple application accelerator agents, making the solution adaptable to various application requirements and hardware configurations.

How does this patent fit in bigger picture?

Technical landscape at the time

In the early 2020s when ’445 was filed, at a time when coherency protocols were typically implemented to manage data access in multi-core systems. System accelerators were often external to the coherency domain, leading to redundant work due to a lack of coherent data access. Hardware and software constraints made it non-trivial to integrate these accelerators directly into the existing coherency mechanisms.

Novelty and Inventive Step

The examiner approved the application because the applicant admitted that the coherent agent supports a coherency protocol of the coherency fabric. This agent monitors state information indicating the usage of coherency data by processing components at a system level, rather than at a chip level. The examiner considered this difference, as presented in the arguments, sufficient to distinguish the invention from existing coherency protocols. The examiner also noted that the disclosed specification could be further relied upon if the distinction was not apparent enough.

Claims

This patent contains 20 claims, with independent claims numbered 1, 6, and 17. The independent claims are generally directed to systems and methods for managing data access and hardware acceleration using a coherency fabric and coherent agents. The dependent claims generally elaborate on the features and functionalities described in the independent claims, providing more specific details and implementations.

Key Claim Terms New

Definitions of key terms used in the patent claims.

Term (Source)Support for SpecificationInterpretation
Application accelerator agent
(Claim 1, Claim 6)
“The coherent agent can also work with an application accelerator agent that includes functionality specific to an application, such as to migrate a page of data between addresses. In this way, the coherent agent can manage the coherency aspects and the application accelerator agent can provide the application-specific functionality, enabling the same coherent agent to be utilized with different application accelerator agents for different operations to be executed on the data. The coherent agent can provide state information to the application accelerator agent, enabling the application to modify its behavior based on factors such as when unique access can be permitted for write operations and shared access permitted for read operations, where shared access can be obtained for multiple components concurrently.”A component that supports hardware acceleration in the system and performs operations on data, and can modify its behavior based on state information.
Coherency fabric
(Claim 1, Claim 6, Claim 17)
“A system fabric can be used to implement a coherency domain for a system with multiple processing components, such as multiple processors or processor cores. In order to enable one or more accelerators to be used within this coherency domain, which can include one or more microprocessors selected for their ability to accelerate specific types of tasks or workloads, at least with respect to processing the same types of tasks or workloads using a general purpose processor such as a central processing unit (CPU) or graphics processing unit (GPU), and avoid redundant work being done by accelerators without access to the coherency data, such a system can implement a coherent agent that can track and enforce coherency for multiple components in a coherency domain.”A component that connects processing components and system memory, and manages access to data, implementing a coherency domain for multiple processing components.
Coherent agent
(Claim 1, Claim 6, Claim 17)
“In order to enable one or more accelerators to be used within this coherency domain, which can include one or more microprocessors selected for their ability to accelerate specific types of tasks or workloads, at least with respect to processing the same types of tasks or workloads using a general purpose processor such as a central processing unit (CPU) or graphics processing unit (GPU), and avoid redundant work being done by accelerators without access to the coherency data, such a system can implement a coherent agent that can track and enforce coherency for multiple components in a coherency domain. This coherent agent can monitor state information, such as by using a series of snoop requests for state information.”A component connected to the coherency fabric that supports a coherency protocol and monitors state information indicating usage of data.
State information
(Claim 1, Claim 6, Claim 17)
“This coherent agent can monitor state information, such as by using a series of snoop requests for state information. The coherent agent can also track the clean or dirty state of data cached at various locations in the coherency domain and provide this information to the application accelerator agent.”Information indicating usage of the data by processing components, obtained by the coherent agent according to the coherency protocol.

Patent Family

Patent Family

File Wrapper

The dossier documents provide a comprehensive record of the patent's prosecution history - including filings, correspondence, and decisions made by patent offices - and are crucial for understanding the patent's legal journey and any challenges it may have faced during examination.

  • Get instant alerts for new documents

US12164445

AMAZON TECHNOLOGIES INC
Application Number
US17592233
Filing Date
Feb 3, 2022
Status
Granted
Expiry Date
Feb 13, 2042
External Links
Slate, USPTO, Google Patents