Addressing for inter-thread push communication
First Claim
1. A switch of a data processing system, the switch comprising:
- integrated circuitry, including;
data buffers for buffering messages;
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;
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
switch logic that, responsive to a request to push a message referenced by an instruction of a sending thread to one or more receiving threads, accesses a send entry among the plurality of send entries selected based on a send window of the sending thread, accesses one or more of the plurality of receive entries selected based on contents of the receive window field accessed in the send entry, and pushes the message to one or more mailboxes of the one or more receiving threads utilizing the addressing information of accessed in the one or more receive entries;
wherein;
each of the plurality of send entries further includes an independently configurable addressing mode field; and
the switch logic employs one of a plurality of different addressing modes based on a configuration of the addressing mode field of the send entry.
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.
-
Citations
12 Claims
-
1. A switch of a data processing system, the switch comprising:
-
integrated circuitry, including; data buffers for buffering messages; 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; 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 switch logic that, responsive to a request to push a message referenced by an instruction of a sending thread to one or more receiving threads, accesses a send entry among the plurality of send entries selected based on a send window of the sending thread, accesses one or more of the plurality of receive entries selected based on contents of the receive window field accessed in the send entry, and pushes the message to one or more mailboxes of the one or more receiving threads utilizing the addressing information of accessed in the one or more receive entries; wherein;
each of the plurality of send entries further includes an independently configurable addressing mode field; and
the switch logic employs one of a plurality of different addressing modes based on a configuration of the addressing mode field of the send entry. - View Dependent Claims (2, 3, 4, 5, 6)
-
-
7. A data processing system, comprising:
-
a plurality of processor cores; one or more memories coupled to the plurality of processor cores; an interconnect fabric coupled to the plurality of processor cores; a switch coupled to the interconnect fabric, wherein the switch includes; data buffers for buffering messages; 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; 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 switch logic that, responsive to a request to push a message referenced by an instruction of a sending thread to one or more receiving threads, accesses a send entry among the plurality of send entries selected based on a send window of the sending thread, accesses one or more of the plurality of receive entries selected based on contents of the receive window field accessed in the send entry, and pushes the message to one or more mailboxes of the one or more receiving threads utilizing the addressing information accessed in of the one or more receive entries; wherein;
each of the plurality of send entries further includes an independently configurable addressing mode field; and
the switch logic employs one of a plurality of different addressing modes based on a configuration of the addressing mode field of the send entry. - View Dependent Claims (8, 9, 10, 11, 12)
-
Specification