Efficiency for coordinated start interpretive execution exit for a multithreaded processor

US2018018174A1 · US · A1

Patent metadata
FieldValue
Publication numberUS-2018018174-A1
Application numberUS-201715717279-A
CountryUS
Kind codeA1
Filing dateSep 27, 2017
Priority dateOct 20, 2014
Publication dateJan 18, 2018
Grant date

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 and method of executing a plurality of threads, including a first thread and a set of remaining threads, on a computer processor core. The system and method includes determining that a start interpretive execution exit condition exists; determining that the computer processor core is within a grace period; and entering by the first thread a start interpretive execution exit sync loop without signaling to any of the set of remaining threads. In turn, the first thread remains in the start interpretive execution exit sync loop until the grace period expires or each of the remaining threads enters a corresponding start interpretive execution exit sync loop.

First claim

Opening claim text (preview).

What is claimed is: 1 . A system comprising a processor and a memory, the system implementing a wait state for a plurality of threads executing on a computer processor core of the processor, the processor being configured to: execute instruction streams by the plurality of threads, wherein the plurality of threads includes a first thread and a set of remaining threads; determine that the first thread has entered a first wait state loop; determine that any of the remaining threads has not entered a corresponding wait state loop; and remain by the first thread in the first wait state loop until each of the remaining threads has entered the corresponding wait state loop. 2 . The system of claim 1 , the processor being configured to: exit the first wait state loop in response to an asynchronous interrupting pending on the first thread. 3 . The system of claim 2 , the processor being configured to: enter a firmware asynchronous interruption handler by the first thread. 4 . The system of claim 3 , wherein the firmware asynchronous interruption handler saves interruption information into a fixed storage location in the memory. 5 . The system of claim 1 , the processor being configured to: exit the first wait state loop in response to receiving a start interpretive execution exit request signal from one of the remaining threads. 6 . The system of claim 1 , wherein a second thread independently executes guest instructions, loads an enabled wait state, and enters a firmware wait state loop. 7 . The system of claim 6 , wherein a third thread independently executes guest instructions, loads an enabled wait state, and enters a firmware wait state loop. 8 . A computer program product comprising a computer readable storage medium having program instructions embodied therewith, the program instructions implementing a wait state for a plurality of threads executing on a computer processor core of a processor, the program instructions executable by the processor to cause the processor to: execute instruction streams by the plurality of threads, wherein the plurality of threads includes a first thread and a set of remaining threads; determine that the first thread has entered a first wait state loop; determine that any of the remaining threads has not entered a corresponding wait state loop; and remain by the first thread in the first wait state loop until each of the remaining threads has entered the corresponding wait state loop. 9 . The computer program product of claim 8 , the program instructions executable by the processor to cause the processor to: exit the first wait state loop in response to an asynchronous interrupting pending on the first thread. 10 . The computer program product of claim 9 , the program instructions executable by the processor to cause the processor to: enter a firmware asynchronous interruption handler by the first thread. 11 . The computer program product of claim 10 , wherein the firmware asynchronous interruption handler saves interruption information into a fixed storage location in the memory. 12 . The computer program product of claim 8 , the program instructions executable by the processor to cause the processor to: exit the first wait state loop in response to receiving a start interpretive execution exit request signal from one of the remaining threads. 13 . The computer program product of claim 8 , wherein a second thread independently executes guest instructions, loads an enabled wait state, and enters a firmware wait state loop. 14 . The computer program product of claim 13 , wherein a third thread independently executes guest instructions, loads an enabled wait state, and enters a firmware wait state loop. 15 . A processor-implemented method implementing a wait state for a plurality of threads executing on a computer processor core of a processor, the processor-implemented method comprising: executing instruction streams by the plurality of threads, wherein the plurality of threads includes a first thread and a set of remaining threads; determining that the first thread has entered a first wait state loop; determining that any of the remaining threads has not entered a corresponding wait state loop; and remaining by the first thread in the first wait state loop until each of the remaining threads has entered the corresponding wait state loop. 16 . The processor-implemented method of claim 15 , the processor-implemented method comprising: exit the first wait state loop in response to an asynchronous interrupting pending on the first thread. 17 . The processor-implemented method of claim 16 , the processor-implemented method comprising: enter a firmware asynchronous interruption handler by the first thread. 18 . The processor-implemented method of claim 17 , wherein the firmware asynchronous interruption handler saves interruption information into a fixed storage location in the memory. 19 . The processor-implemented method of claim 15 , the processor-implemented method comprising: exit the first wait state loop in response to receiving a start interpretive execution exit request signal from one of the remaining threads. 20 . The processor-implemented method of claim 15 , wherein a second thread independently executes guest instructions, loads an enabled wait state, and enters a firmware wait state loop.

Assignees

Inventors

Classifications

  • Instruction analysis, e.g. decoding, instruction word fields · CPC title

  • Barrier synchronisation · CPC title

  • Hypervisors; Virtual machine monitors · CPC title

  • Loop control instructions; iterative instructions, e.g. LOOP, REPEAT · CPC title

  • Scheduling strategies for dispatcher, e.g. round robin, multi-level priority queues · 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 US2018018174A1 cover?
A system and method of executing a plurality of threads, including a first thread and a set of remaining threads, on a computer processor core. The system and method includes determining that a start interpretive execution exit condition exists; determining that the computer processor core is within a grace period; and entering by the first thread a start interpretive execution exit sync loop w…
Who is the assignee on this patent?
IBM
What technology area does this patent fall under?
Primary CPC classification G06F9/45533. Mapped technology areas include Physics.
When was this patent published?
Publication date Thu Jan 18 2018 00:00:00 GMT+0000 (Coordinated Universal Time) (A1). Legal status and post-grant events are not shown on this page.
What related patents are in patentsdb?
We list 8 related publications on this page (citations in our corpus or others sharing the same primary CPC).