Abstract:
A method and apparatus for hierarchical routing in mesh systems. The method may include splitting 420 a mesh network of nodes into a plurality of partitions, each partition including at least one node, dividing 430 a first partition into a plurality of rectangular regions, determining 440 a partition route from a source region to a destination region of the plurality of rectangular regions, and providing 450 a region route from a source node within one of the plurality of rectangular regions to a destination node within the same rectangular region. The method may also include routing 460 a packet from a source node within the source region to a destination node within the destination region using the partition route and the region route.
Abstract:
A method and apparatus for hierarchical routing in mesh systems. The method may include splitting 420 a mesh network of nodes into a plurality of partitions, each partition including at least one node, dividing 430 a first partition into a plurality of rectangular regions, determining 440 a partition route from a source region to a destination region of the plurality of rectangular regions, and providing 450 a region route from a source node within one of the plurality of rectangular regions to a destination node within the same rectangular region. The method may also include routing 460 a packet from a source node within the source region to a destination node within the destination region using the partition route and the region route.
Abstract:
A method and apparatus for hierarchical routing in mesh systems. The method may include splitting 420 a mesh network of nodes into a plurality of partitions, each partition including at least one node, dividing 430 a first partition into a plurality of rectangular regions, determining 440 a partition route from a source region to a destination region of the plurality of rectangular regions, and providing 450 a region route from a source node within one of the plurality of rectangular regions to a destination node within the same rectangular region. The method may also include routing 460 a packet from a source node within the source region to a destination node within the destination region using the partition route and the region route.
Abstract:
Offenbarte Ausführungsformen betreffen entfernte atomare Operationen (RAO, Remote Atomic Operation) in Multi-Sockel-Systemen. In einem Beispiel umfasst ein Verfahren, das von einer Cache-Steuerschaltung eines Requester-Sockels durchgeführt wird, Folgendes: Empfangen des RAO-Befehls vom Requester-CPU-Kern, Bestimmen eines Home-Agenten in einem Home-Sockel für die adressierte Cache-Zeile, Bereitstellen einer Anforderung nach Besitz (RFO, Request for Ownership) der adressierten Cache-Zeile an den Home-Agenten, Warten, bis der Home-Agent entweder eine letzte Kopie der adressierten Cache-Zeile aus einem Cache invalidiert und abruft oder die adressierte Cache-Zeile vom Speicher fetcht, Empfangen einer Bestätigung und der adressierten Cache-Zeile, atomares Ausführen des RAO-Befehls auf der empfangenen Cache-Zeile, anschließendes Empfangen mehrerer lokaler RAO-Befehle an die adressierte Cache-Zeile von einem oder mehreren Requester-CPU-Kernen und Ausführen der mehreren lokalen RAO-Befehle auf der empfangenen Cache-Zeile unabhängig vom Home-Agenten.
Abstract:
Die offenbarten Ausführungsformen betreffen atomare Speicheroperationen. In einem Beispiel enthält ein Verfahren zum atomaren Ausführen eines Befehls mit schwacher Ordnung Folgendes: Holen des Befehls aus einem Codespeicherelement durch eine Holschaltungsanordnung, wobei der Befehl einen Opcode, eine Quellen-ID und eine Ziel-ID enthält, Decodieren des geholten Befehls durch eine Decodierschaltungsanordnung, Auswählen einer Ausführungsschaltung aus mehreren Schaltungen in einem System durch eine Scheduler-Schaltung, Scheduling der Ausführung des decodierten Befehls außerhalb der Programmreihenfolge mit Bezug auf andere Befehle durch die Scheduler-Schaltung mit einer Ordnung, die so ausgewählt ist, dass die Latenz und/oder der Durchsatz und/oder der Energieverbrauch und/oder die Performance optimiert werden, und Ausführen des decodierten Befehls durch die Ausführungsschaltung für Folgendes: atomares Auslesen eines Datenelements von einem durch die Ziel-ID identifizierten Ort, Durchführen einer Operation am Datenelement, wie durch den Opcode angegeben, wobei bei der Operation ein durch die Quellen-ID identifizierter Quelloperand zu verwenden ist, und Zurückschreiben eines Ergebnisses an den Ort.
Abstract:
Verfahren, das aufweist:Aufteilen (420) eines Gitternetzwerkes aus Knoten in eine Vielzahl von Partitionen, wobei jede Partition wenigstens einen Knoten umfasst;Teilen (430) einer ersten Partition, die einer nicht-rechteckigen Partition entspricht, in eine Vielzahl von rechteckigen Bereichen, die jeweils einen Superknoten darstellen und mit mindestens einem anderen benachbarten rechteckigen Bereich aus der Vielzahl der rechteckigen Bereiche über eine Superkante verbunden sind;Festlegen (440) eines Partitionsweges von einem Quellenbereich zu einem Zielbereich aus der Vielzahl der rechteckigen Bereiche;Bereitstellen (450) eines Bereichsweges von einem Bereichsquellenknoten innerhalb eines aus der Vielzahl der rechteckigen Bereiche zu einem Bereichszielknoten innerhalb desselben rechteckigen Bereichs;Leiten (460) eines Paketes von einem Quellenknoten innerhalb des Quellenbereiches zu einem Zielknoten innerhalb des Zielbereiches, wobei der Partitionsweg und der Bereichsweg verwendet werden, aufweisend Nehmen eines Pfades von einem Superknoten des Quellknotens zu einem Superknoten des Zielknotens auf einem ersten Netzwerk unter Verwendung eines Spannbaumes eines Supergraphen, der die nicht-rechteckige Partition darstellt, und danach Leiten des Pakets innerhalb des rechteckigen Bereichs auf einem zweiten Netzwerk.