Information processing device and barrier synchronization method

US9336064B2 · US · B2

Patent metadata
FieldValue
Publication numberUS-9336064-B2
Application numberUS-201514926597-A
CountryUS
Kind codeB2
Filing dateOct 29, 2015
Priority dateJul 20, 2012
Publication dateMay 10, 2016
Grant dateMay 10, 2016

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 information processing device includes a plurality of barrier banks, and one or more processors including at least one of the plurality of barrier banks. Each of barrier banks includes one or more hardware threads and a barrier synchronization mechanism. The barrier synchronization mechanism includes a bottom unit having a barrier state, and a bitmap indicating that each of the one or more hardware threads has arrived at a synchronization point, and a top unit having a non-arrival counter indicating the number of barrier banks yet to be synchronized. The bottom unit notifies of bottom unit synchronization completion when all the one or more hardware threads have arrived at a barrier synchronization point. The non-arrival counter decrements its value by 1 upon receipt of the bottom unit synchronization completion, and the top unit sets the barrier state to a value indicating synchronization completion when the non-arrival counter decrements to 0.

First claim

Opening claim text (preview).

What is claimed is: 1. An information processing device, comprising: a plurality of barrier banks; and one or more processors including at least one of the plurality of barrier banks, wherein each of the plurality of barrier banks comprises one or more hardware threads configured to execute a thread, and a barrier synchronization mechanism configured to perform barrier synchronization of the plurality of barrier banks, the barrier synchronization mechanism comprises a barrier state indicating whether or not the synchronization is complete, a bottom unit comprising a bitmap indicating that each of the one or more hardware threads has arrived at a synchronization point, and bottom unit target information indicating a notification destination of bottom unit synchronization completion, a middle unit comprising a middle unit non-arrival counter indicating the number of barrier banks that have not transmitted bottom unit synchronization completion, and middle unit target information indicating a notification destination of middle unit synchronization completion, and a top unit comprising a top unit non-arrival counter indicating the number of barrier banks that have not transmitted middle unit synchronization completion, the bottom unit checks the bitmap, and notifies a barrier bank specified using the bottom unit target information of bottom unit synchronization completion when all the one or more hardware threads have arrived at a barrier synchronization point, the middle unit non-arrival counter decrements a value of the middle unit non-arrival counter by 1 upon receipt of the bottom unit synchronization completion, the middle unit notifies a barrier bank specified using the middle unit target information of middle unit synchronization completion when the middle unit non-arrival counter decrements to 0, the top unit non-arrival counter decrements a value of the top unit non-arrival counter by 1 upon receipt of the middle unit synchronization completion, and the top unit sets the barrier state to a value indicating synchronization completion when the top unit non-arrival counter decrements to 0. 2. The information processing device according to claim 1 , wherein the middle unit further comprises a first processing unit flag indicating a processing unit configured to execute a process for the middle unit synchronization completion, the middle unit non-arrival counter decrements a value of the middle unit non-arrival counter by 1 upon receipt of the bottom unit synchronization completion, or middle unit synchronization completion to which the first processing unit flag indicating the middle unit is added, the middle unit adds the first processing unit flag to middle unit synchronization completion, and notifies a barrier bank specified using the middle unit target information of the middle unit synchronization completion when the middle unit non-arrival counter decrements to 0, and the top unit non-arrival counter decrements a value of the top unit non-arrival counter by 1 upon receipt of the middle unit synchronization completion to which the processing unit flag indicating the top unit is added. 3. The information processing device according to claim 2 , wherein the barrier synchronization mechanism further comprises a barrier type indicating a type of barrier synchronization performed by the barrier synchronization mechanism, the bottom unit further comprises a second processing unit flag indicating a processing unit configured to execute a process for the bottom unit synchronization completion, when the barrier type indicates synchronization within a barrier bank, the bottom unit checks the bitmap, and sets the barrier state to a value indicating synchronization completion when all the one or more hardware threads have arrived at a barrier synchronization point, when the barrier type indicates synchronization among barrier banks, the bottom unit checks the bitmap, adds the second processing unit flag to bottom unit synchronization completion and notifies a barrier bank specified using the bottom unit target information of the bottom unit synchronization completion when all the one or more hardware threads have arrived at a barrier synchronization point, the middle unit non-arrival counter decrements a value of the middle unit non-arrival counter by 1 upon receipt of the bottom unit synchronization completion to which the second processing unit flag indicating the middle unit is added, or the middle unit synchronization completion to which the first processing unit flag indicating the middle unit is added, the middle unit adds the first processing unit flag to middle unit synchronization completion, and notifies a barrier bank specified using the middle unit target information of the middle unit synchronization completion when the middle unit non-arrival counter decrements to 0, and the top unit non-arrival counter decrements a value of the top unit non-arrival counter by 1 upon receipt of the bottom unit synchronization completion to which the second processing unit flag indicating the top unit is added, or the middle unit synchronization completion to which the first processing unit flag indicating the top unit is added. 4. A barrier synchronization method executed by an information processing device, including a plurality of barrier banks and one or more processors including at least one of the plurality of barrier banks, for performing synchronization of the plurality of barrier banks, each of the plurality of barrier banks including one or more hardware threads configured to execute a thread and a barrier synchronization mechanism configured to perform barrier synchronization of the plurality of barrier banks, the method comprising: checking a bitmap indicating that each of the one or more hardware threads has arrived at a synchronization point; notifying a barrier bank specified using bottom unit target information indicating a notification destination of bottom unit synchronization completion of the bottom unit synchronization completion when all the one or more hardware threads have arrived at a barrier synchronization point; decrementing, by 1, a middle unit non-arrival counter indicating the number of barrier banks that have not transmitted the bottom unit synchronization completion upon receipt of the bottom unit synchronization completion; notifying a barrier bank specified using middle unit target information indicating a notification destination of the middle unit synchronization completion of the middle unit synchronization completion when the middle unit non-arrival counter decrements to 0; decrementing, by 1, a top unit non-arrival counter indicating the number of barrier banks that have not transmitted the middle unit synchronization completion upon receipt of the middle unit synchronization completion; and setting a barrier state indicating whether or not the synchronization is complete to a value indicating synchronization completion when the top unit non-arrival counter decrements to 0.

Assignees

Inventors

Classifications

  • Concurrent instruction execution, e.g. pipeline or look ahead · CPC title

  • G06F9/522Primary

    Barrier synchronisation · CPC title

  • Program synchronisation; Mutual exclusion, e.g. by means of semaphores · 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 US9336064B2 cover?
An information processing device includes a plurality of barrier banks, and one or more processors including at least one of the plurality of barrier banks. Each of barrier banks includes one or more hardware threads and a barrier synchronization mechanism. The barrier synchronization mechanism includes a bottom unit having a barrier state, and a bitmap indicating that each of the one or more h…
Who is the assignee on this patent?
Fujitsu Ltd
What technology area does this patent fall under?
Primary CPC classification G06F9/522. Mapped technology areas include Physics.
When was this patent published?
Publication date Tue May 10 2016 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 8 related publications on this page (citations in our corpus or others sharing the same primary CPC).