CPC G06F 13/1668 (2013.01) [G06F 13/4027 (2013.01)] | 16 Claims |
1. A method of data processing in a coherent data processing system including a system fabric communicatively coupling a plurality of nodes arranged in a plurality of groups, wherein a plurality of coherence agents distributed among the nodes are assigned responsibility for certain addresses, said method comprising:
maintaining a topology data structure indicating, by group and node, differing physical locations within the data processing system of the plurality of coherence agents, wherein:
the topology data structure includes a plurality of entries each associated with a respective one of a plurality of values of an index portion of a request address; and
each of the plurality of entries includes a field including one or more bits for indicating group membership and one or more bits for indicating node membership;
a master in the data processing system accessing one of the plurality of entries in the topology data structure utilizing the index portion of the request address to obtain a particular group and particular node of a particular coherence agent among the plurality of coherence agents uniquely assigned the request address; and
based on the accessing, the master initially issuing, on the system fabric, a memory access request specifying the request address and utilizing a remote scope of broadcast that includes the particular node and excludes at least one other node in the particular group, wherein the particular node is a different one of the plurality of nodes than a home node containing the master.
|