Addressing for inter-thread push communication
First Claim
1. A method of inter-thread push communication in a data processing system, the method comprising:
- maintaining, in a switch of the data processing system, a receive data structure including a plurality of receive entries each uniquely corresponding to a receive window, wherein each of the plurality of receive entries includes addressing information for one or more mailboxes into which messages can be injected via inter-thread push communication;
maintaining, in the switch, a send data structure including a plurality of send entries each uniquely corresponding to a send window, wherein each of the plurality of send entries includes a receive window field that identifies one or more receive windows and further includes an independently configurable addressing mode field; and
in response to a request to push a message referenced by an instruction of a sending thread to one or more receiving threads;
accessing a send entry among the plurality of send entries selected based on a send window of the sending thread;
accessing one or more of the plurality of receive entries selected utilizing contents of the receive window field accessed in of the send entry, wherein the accessing includes employing one of a plurality of different addressing modes to determine a respective address of each of the one or more receive entries based on a configuration of the addressing mode field of the send entry; and
pushing the message to one or more mailboxes of the one or more receiving threads utilizing the addressing information accessed in the one or more receive entries.
1 Assignment
0 Petitions
Accused Products
Abstract
In a data processing system, a switch includes a receive data structure including receive entries each uniquely corresponding to a receive window, where each receive entry includes addressing information for one or more mailboxes into which messages can be injected, a send data structure including send entries each uniquely corresponding to a send window, where each send entry includes a receive window field that identifies one or more receive windows, and switch logic. The switch logic, responsive to a request to push a message to one or more receiving threads, accesses a send entry that corresponds to a send window of the sending thread, utilizes contents of the receive window field of the send entry to access one or more of the receive entries, and pushes the message to one or more mailboxes of one or more receiving threads utilizing the addressing information of the receive entry or entries.
20 Citations
5 Claims
-
1. A method of inter-thread push communication in a data processing system, the method comprising:
-
maintaining, in a switch of the data processing system, a receive data structure including a plurality of receive entries each uniquely corresponding to a receive window, wherein each of the plurality of receive entries includes addressing information for one or more mailboxes into which messages can be injected via inter-thread push communication; maintaining, in the switch, a send data structure including a plurality of send entries each uniquely corresponding to a send window, wherein each of the plurality of send entries includes a receive window field that identifies one or more receive windows and further includes an independently configurable addressing mode field; and in response to a request to push a message referenced by an instruction of a sending thread to one or more receiving threads; accessing a send entry among the plurality of send entries selected based on a send window of the sending thread; accessing one or more of the plurality of receive entries selected utilizing contents of the receive window field accessed in of the send entry, wherein the accessing includes employing one of a plurality of different addressing modes to determine a respective address of each of the one or more receive entries based on a configuration of the addressing mode field of the send entry; and pushing the message to one or more mailboxes of the one or more receiving threads utilizing the addressing information accessed in the one or more receive entries. - View Dependent Claims (2, 3, 4, 5)
-
Specification