Issuing write requests to a fabric

US10691348B2 · US · B2

Patent metadata
FieldValue
Publication numberUS-10691348-B2
Application numberUS-201916274189-A
CountryUS
Kind codeB2
Filing dateFeb 12, 2019
Priority dateMar 8, 2017
Publication dateJun 23, 2020
Grant dateJun 23, 2020

How to read this patent

A practical reading order for non-experts. Skip the full description unless you need deep technical detail.

  1. Title

    What the patent document calls the invention.

  2. Abstract

    A short plain-language summary of the technical disclosure.

  3. Assignees and inventors

    Who owns or filed the patent and who is credited as inventor.

  4. Key dates

    Filing, priority, publication, and grant dates set the timeline.

  5. First independent claim

    The legal scope of protection — read this for what is actually claimed.

  6. CPC / IPC classifications

    Technology tags used to group this patent with similar filings.

  7. Citations and related patents

    Prior art links and similar publications in this corpus.

Abstract

Official abstract text for this publication.

A system comprises a processor, a memory fabric, and a fabric bridge coupled to the memory fabric and the processor. The fabric bridge may receive, from the processor a first eviction request comprising first eviction data, transmit, to the processor, a message indicating the fabric bridge has accepted the first eviction request, transmit a first write comprising the first eviction data to the fabric, receive, from the processor, a second eviction request comprising second eviction data, and transmit a second write comprising the second eviction data to the fabric. Responsive to transmitting the second write request, the fabric bridge may transmit, to the processor, a message indicating the fabric bridge accepted the second eviction request, determine that the first write and the second write have persisted, and transmit, to the processor, a notification to the processor responsive to determining that the first write and the second write have persisted.

First claim

Opening claim text (preview).

The invention claimed is: 1. A system comprising: a processor; a memory fabric; and a fabric bridge, the fabric bridge coupled to the memory fabric and the processor, the fabric bridge to: receive, from the processor a first eviction request comprising first eviction data; transmit, to the processor, a message indicating the fabric bridge has accepted the first eviction request; transmit a first write comprising the first eviction data to the fabric; receive, from the processor, a second eviction request comprising second eviction data; transmit a second write comprising the second eviction data to the fabric; and responsive to transmitting the second write request: transmit; to the processor, a message indicating the fabric bridge accepted the second eviction request; determine that the first write and the second write have persisted; and transmit, to the processor, a notification to the processor responsive to determining that the first write and the second write have persisted; wherein to determine whether the first write and the second write have persisted, the fabric bridge to: store, in a counter, a number of pending writes issued to the fabric; decrement the counter responsive to receiving an indication via the fabric that one of the pending writes has persisted; and transmit the notification to the processor indicating that the first write and the second write have persisted responsive to the counter being equal to zero; wherein the fabric bridge is to: responsive to receiving a request to read a status register of the fabric bridge: assign the first write and the second write to an epoch; track a first number of pending writes in the first epoch with a first counter; receive a third eviction request comprising third eviction data; transmit a third write request comprising the third eviction data to the fabric; receive a second read request for a status register of the fabric bridge; responsive to receiving the second read request: assign the third write request to a second epoch; and track a second number of pending writes in the second epoch with a second counter. 2. The system of claim 1 , the fabric bridge to: receive, from the fabric bridge, a request to read a register of the fabric bridge; responsive to receiving the read request and responsive to determining that the first write and the second write have persisted: transmit the notification, by the fabric bridge and to the processor, that the first write and the second write have persisted. 3. The system of claim 1 , the fabric bridge to: receive an acknowledgement of a write from the fabric, the acknowledgement comprising an identifier; determining an epoch for the acknowledge write based on the identifier; and determine whether the first write and the second write have persisted based on the determined epoch. 4. The system of claim 1 , wherein the fabric bridge to: receive an acknowledgement, via the fabric, of the first write; responsive to receiving the acknowledgement of the first write: update a counter indicating a number of pending writes of an epoch of the first write and the second write. 5. The system of claim 1 , wherein the fabric bridge to: determine whether the first write, and the second write, have a same epoch; and update a first counter indicating a number of pending writes of the same epoch of if the first write and the second write have the same epoch; and update the first counter corresponding to a number of pending writes of an epoch of the first write and a second counter corresponding to a number of pending writes of an epoch of the second write if the first write and the second write do not have the same epoch. 6. A non-transitory computer-readable storage medium storing instructions thereon that, when executed, cause a processor to: receive, by a fabric bridge, a first plurality of eviction requests from a first processor; responsive to receiving each of the first eviction requests: issue, by the fabric bridge, a first plurality of messages indicating that each of the first eviction requests were accepted by the fabric bridge; and issue, by the fabric bridge, a first plurality of write requests to the fabric, wherein each of the first plurality of write requests correspond to each of the first plurality of eviction requests; receive, by a fabric bridge, a second plurality of eviction requests from a second processor; responsive to receiving each of the second eviction requests: issue, by the fabric bridge, a second plurality of messages indicating that each of the second eviction requests were accepted by the fabric bridge; and issue, by the fabric bridge, a second plurality of write requests to the fabric, wherein each of the second plurality of write requests correspond to each of the second plurality of eviction requests; track the first plurality of write requests until each of the first write requests have persisted; and track the second plurality of the second write requests until each of the second write requests have persisted assign the first plurality of writes to a first epoch; assign the second plurality of writes to a second epoch; decrement a first counter associated with the first epoch responsive to receiving an acknowledgement via the fabric for one of the first plurality of writes; and decrement a second counter associated with the second epoch responsive to receiving an acknowledgement via the fabric for one of the second plurality of writes. 7. The non-transitory computer-readable storage medium of claim 6 , storing instructions thereon that, when executed, cause the processor to: transmit a first notification to the processor indicating the first plurality of write requests have persisted. 8. The non-transitory computer-readable storage medium of claim 7 , wherein the instructions that cause the processor to track the first plurality of writes comprise additional instructions that, when executed, cause the processor to receive a first request to read a status register, and wherein the instructions that cause the processor to track the second plurality of writes comprise additional instructions that, when executed, cause the processor to receive a second request to read a status register. 9. The non-transitory computer-readable storage medium of claim 6 , comprising instructions that, when executed, cause the processor to: receive, via the fabric, an acknowledgement for a persisted write request, the acknowledgement comprising an identifier; determine an epoch of the persisted write request based on the identifier; and determine whether one of the first pluralities of writes and the second pluralities of writes have persisted based on the determined epoch. 10. The non-transitory computer-readable storage medium of claim 6 , comprising instructions stored thereon that, when executed, cause the processor to: determine whether the first pluralities of writes, and the second pluralities of writes have a same epoch; and update a first counter indicating a number of pending writes of the same epoch of if the first plurality of writes and the second plurality of writes have the same epoch; and update the first counter corresponding to a number of pending writes of an epoch of the first pluralities of writes and a second counter corresponding to a number of pending writes of an epoch of the second pluralities of writes if the first pluralities of writes and the second pluralities of writes do not have the same epoch. 11. A method, comprising: receiving, by a fabric bridge, a first plurality of eviction requests from a first processor; responsive to receiving each of the

Assignees

Inventors

Classifications

  • Command handling arrangements, e.g. command buffers, queues, command scheduling · CPC title

  • Hybrid storage combining heterogeneous device types, e.g. hierarchical storage, hybrid arrays · CPC title

  • G06F3/0613Primary

    in relation to throughput · CPC title

  • Distributed or networked storage systems, e.g. storage area networks [SAN], network attached storage [NAS] · CPC title

  • Controller construction arrangements · CPC title

Patent family

Related publications grouped by family.

External sources

Frequently asked questions

Answers are generated from the same data shown on this page.

What does patent US10691348B2 cover?
A system comprises a processor, a memory fabric, and a fabric bridge coupled to the memory fabric and the processor. The fabric bridge may receive, from the processor a first eviction request comprising first eviction data, transmit, to the processor, a message indicating the fabric bridge has accepted the first eviction request, transmit a first write comprising the first eviction data to the …
Who is the assignee on this patent?
Hewlett Packard Entpr Dev Lp
What technology area does this patent fall under?
Primary CPC classification G06F3/0613. Mapped technology areas include Physics.
When was this patent published?
Publication date Tue Jun 23 2020 00:00:00 GMT+0000 (Coordinated Universal Time) (B2). Legal status and post-grant events are not shown on this page.
What related patents are in patentsdb?
We list 4 related publications on this page (citations in our corpus or others sharing the same primary CPC).