Distributed history buffer flush and restore handling in a parallel slice design

US9740620B2 · US · B2

Patent metadata
FieldValue
Publication numberUS-9740620-B2
Application numberUS-201514706815-A
CountryUS
Kind codeB2
Filing dateMay 7, 2015
Priority dateMay 7, 2015
Publication dateAug 22, 2017
Grant dateAug 22, 2017

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.

An approach is provided in which a computing system captures content included in a history buffer entry that corresponds to a flush ITAG. The computing system, in turn, uses an execution unit to transmit the content over a results bus to multiple registers and restore at least one of the registers accordingly.

First claim

Opening claim text (preview).

The invention claimed is: 1. An information handling system comprising: one or more processors; a memory coupled to at least one of the processors; and a set of computer program instructions stored in the memory and executed by at least one of the processors in order to perform actions of: sending recovery content included in a history buffer entry to an issue queue, wherein the history buffer entry corresponds to a flush instruction tag (ITAG), and wherein the recovery content comprises the history buffer entry in its entirety that includes register contents from a previous state; passing the recovery content from the issue queue to an execution unit in response to the issue queue determining that the recovery content corresponds to a restore operation; transmitting, by the execution unit included in the processor, the recovery content to a plurality of registers over a results bus; and restoring at least one of the plurality of registers with the recovery content. 2. The information handling system of claim 1 wherein the history buffer entry is included in a history buffer. 3. The information handling system of claim 2 wherein the one or more processors perform additional actions comprising: receiving, at the history buffer, results data corresponding to the flush ITAG subsequent to sending the recovery content to the issue queue and before a pre-determined restore delay period; updating the recovery content to include the results data; and transmitting the updated recovery content to the plurality of registers. 4. The information handling system of claim 1 further comprising: a plurality of slices, each one of the plurality of slices comprising one of a plurality of history buffers, one of a plurality of issue queues, and one of a plurality of execution units; and one or more super slices that each include the plurality of slices and one of the plurality of registers. 5. The information handling system of claim 4 wherein the one or more processors perform additional actions comprising: transmitting the recovery content from the execution unit residing on a first one of the one or more super slices to the one of the plurality of registers that reside on a second one of the one or more super slices. 6. The information handling system of claim 1 wherein the one or more processors perform additional actions comprising: identifying a first thread, from a plurality of threads, that corresponds to the flush ITAG; and setting a recovery mask bit that corresponds to the first thread, wherein the recovery mask bit informs a dispatch unit included in the processor to discontinue dispatching instructions targeted to the first thread. 7. The information handling system of claim 6 wherein the one or more processors perform additional actions comprising: dispatching an instruction corresponding to a second one of the plurality of threads while the dispatcher is discontinuing dispatching instructions targeted to the first thread. 8. A computer program product stored in a computer readable storage medium, comprising computer program code that, when executed by an information handling system, causes the information handling system to perform actions comprising: sending recovery content included in a history buffer entry to an issue queue, wherein the history buffer entry corresponds to a flush instruction tag (ITAG), and wherein the recovery content comprises the history buffer entry in its entirety that includes register contents from a previous state; passing the recovery content from the issue queue to an execution unit in response to the issue queue determining that the recovery content corresponds to a restore operation; transmitting, by the execution unit included in the processor, the recovery content to a plurality of registers over a results bus; and restoring at least one of the plurality of registers with the recovery content. 9. The computer program product of claim 8 wherein the history buffer entry is included in a history buffer. 10. The computer program product of claim 9 wherein the information handling system performs additional actions comprising: receiving, at the history buffer, results data corresponding to the flush ITAG subsequent to sending the recovery content to the issue queue and before a pre-determined restore delay period; updating the recovery content to include the results data; and transmitting the updated recovery content to the plurality of registers. 11. The computer program product of claim 8 wherein the information handling system further comprises: a plurality of slices, each one of the plurality of slices comprising one of a plurality of history buffers, one of a plurality of issue queues, and one of a plurality of execution units; and one or more super slices that each include the plurality of slices and one of the plurality of registers. 12. The computer program product of claim 11 wherein the information handling system performs additional actions comprising: transmitting the recovery content from the execution unit residing on a first one of the one or more super slices to the one of the plurality of registers that reside on a second one of the one or more super slices. 13. The computer program product of claim 8 wherein the information handling system performs additional actions comprising: identifying a first thread, from a plurality of threads, that corresponds to the flush ITAG; setting a recovery mask bit that corresponds to the first thread, wherein the recovery mask bit informs a dispatch unit included in the processor to discontinue dispatching instructions targeted to the first thread; and dispatching an instruction corresponding to a second one of the plurality of threads while the dispatcher is discontinuing dispatching instructions targeted to the first thread.

Assignees

Inventors

Classifications

  • Single storage device · CPC title

  • G06F9/3863Primary

    using multiple copies of the architectural state, e.g. shadow registers · CPC title

  • Migration mechanisms · CPC title

  • Details of cache memory · CPC title

  • Details of cache specific to multiprocessor cache 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 US9740620B2 cover?
An approach is provided in which a computing system captures content included in a history buffer entry that corresponds to a flush ITAG. The computing system, in turn, uses an execution unit to transmit the content over a results bus to multiple registers and restore at least one of the registers accordingly.
Who is the assignee on this patent?
IBM
What technology area does this patent fall under?
Primary CPC classification G06F9/3863. Mapped technology areas include Physics.
When was this patent published?
Publication date Tue Aug 22 2017 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 2 related publications on this page (citations in our corpus or others sharing the same primary CPC).