Abstract:
PROBLEM TO BE SOLVED: To provide a processor, method and system, effectively achieving optimizing of power usage by factoring in processor architectural events to a PCU. SOLUTION: This invention provides a processor including a bus for detecting whether an architectural event occurs in a core or not, and a power unit for performing power sequence in response to the occurrence of the architectural event. COPYRIGHT: (C)2008,JPO&INPIT
Abstract:
Verfahren und Vorrichtungen zum Implementieren des Intel QuickPath Interconnect®(QPI)-Protokolls auf einer PCIe-Schnittstelle werden beschrieben. Die oberen Schichten des QPI-Protokolls werden auf einer Bitübertragungsschicht der PCIe-Schnittstelle durch Verwendung von QPI-Datenbitabbildungen auf entsprechende PCIe x16, x8 und x4-Spürkonfigurationen implementiert. Eine Schnittstelle einer QPI-Sicherungsschicht zu einer PCIe-Bitübertragungsschicht wird verwendet, um die QPI-Sicherungs-, Routing- und Protokoll-Schichten von der zugrunde liegenden PCIe-Bitübertragungsschicht (und entsprechender PCIe-Schnittstellenschaltung) zu abstrahieren, wodurch möglich wird, dass QPI-Protokollnachrichten auf PCIe-Hardware verwendet werden. Somit kann die QPI-Funktionalität, wie z. B. eine Unterstützung für kohärente Speichertransaktionen, auf einer PCIe-Schnittstellenschaltung implementiert werden.
Abstract:
Methods and apparatus for implementing the Intel QuickPath Interconnect® (QPI) protocol over a PCIe interface. The upper layers of the QPI protocol are implemented over a physical layer of the PCIe interface via use of QPI data bit mappings onto corresponding PCIe x16, x8, and x4 lane configurations. A QPI link layer to PCIe physical layer interface is employed to abstract the QPI link, routing, and protocol layers from the underlying PCIe physical layer (and corresponding PCIe interface circuitry), enabling QPI protocol messages to be employed over PCIe hardware. Thus, QPI functionality, such as support for coherent memory transactions, may be implemented over PCIe interface circuitry.
Abstract:
Ein Prozessor enthält mehrere physikalische Kerne, die mehrere logische Kerne verschiedener Kerntypen unterstützen, wobei die Kerntypen einen Typ großer Kerne und einen Typ kleiner Kerne enthalten. Eine Multi-Thread-Anwendung enthält mehrere Software-Threads, die von einem ersten Teilsatz logischer Kerne in einem ersten Zeitschlitz gleichzeitig ausgeführt werden. Basierend auf Daten, die aus Überwachen der Ausführung in dem ersten Zeitschlitz erfasst wurden, wählt der Prozessor einen zweiten Teilsatz logischer Kerne für gleichzeitige Ausführung der Software-Threads in einem zweiten Zeitschlitz aus. Jeder logische Kern in dem zweiten Teilsatz weist einen der Kerntypen auf, der mit den Charakteristika eines der Software-Threads übereinstimmt.
Abstract:
Bei einer Ausführungsform schließt die vorliegende Erfindung einen Mehrkernprozessor ein, der eine Vielzahl von Kernen aufweist, einen gemeinsam benutzten Cache-Speicher, ein integriertes Ein-/Ausgabe-(IIO)-Modul, um eine Schnittstelle zwischen dem Mehrkernprozessor und wenigstens einem IO-Gerät herzustellen, das mit dem Mehrkernprozessor gekoppelt ist, und einen Caching-Agenten, um Cache-Kohärenz-Operationen für die Vielzahl von Kernen und das IIO-Modul auszuführen.
Abstract:
According to one embodiment of the invention, a method is disclosed for selecting a first subset of a plurality of cache ways in a cache for storing hardware threads identified as high priority hardware threads for processing by a multi-threaded processor in communication with the cache; assigning high priority hardware threads to the selected first subset; monitoring a cache usage of a high priority hardware thread assigned to the selected first subset of plurality of cache ways; and reassigning the assigned high priority hardware thread to any cache way of the plurality of cache ways if the cache usage of the high priority hardware thread exceeds a predetermined inactive cache usage threshold value based on the monitoring.
Abstract:
System mit: – einem Multithreadprozessorteilsystem, das wenigstens einen Prozessor aufweist mit wenigstens einem Mehrwege-Cache-Teilsystem (105) in Kommunikation mit dem Prozessor, wobei das Mehrwege-Cache-Teilsystem eine Mehrzahl von Cachewegen (251) zum Speichern von Daten von Hardwarethreads (11) umfasst; – einem Cachewegauswahllogikteilsystem (202) in Verbindung mit dem Mehrwege-Cache-Teilsystem (105) und zum Auswählen einer ersten Teilmenge aus einer Mehrzahl von Cachewegen (251) nur zum Speichern von Daten von Hardwarethreads (11), die als Hardwarethreads (11) hoher Priorität zum Verarbeiten durch den Prozessor identifiziert wurden; – einem Hardwarethreadzuordnungsteilsystem (200) in Kommunikation mit dem Cachewegeauswahllogikteilsystem und zum Zuordnen von Hardwarethreads (11) hoher Priorität zur ausgewählten ersten Teilmenge aus der Mehrzahl von Cachewegen (251); und – einem Cachenutzungsüberwachungsteilsystem in Kommunikation mit dem Mehrwege-Cache-Teilsystem (105) und zum Überwachen eines Hardwarethreads (11) hoher Priorität, der der ausgewählten ersten Teilmenge aus der Mehrzahl von Cachewegen (251) zugeordnet ist und zum Vergleichen der Cachenutzung des Hardwarethreads (11) hoher Priorität mit einem vorbestimmten Cachenutzungsschwellenwerts, und – dem Hardwarethreadzuordnungsteilsystem (200) zum Wiederzuordnen des zugeordneten Hardwarethreads (11) hoher Priorität zu irgendeinem Cacheweg der Mehrzahl von Cachewegen (251), wenn die Cachenutzung des Hardwarethreads (11) hoher Priorität den vorbestimmten Schwellenwert inaktiver Cachenutzung basierend auf dem Überwachen überschreitet.
Abstract:
Gemäß einer Ausführungsform enthält ein Prozessor eine Vielzahl an Prozessorkernen zum Ausführen einer Vielzahl von Threads, einen gemeinsam genutzten Speicher, der kommunikativ an die Vielzahl von Prozessorkernen gekoppelt ist, eine Leistungssteuereinheit (PCU), die kommunikativ an die Vielzahl der Prozessoren gekoppelt ist, zum Bestimmen, ohne irgendein Eingreifen von Software (SW), ob ein Thread, der gerade durch einen ersten Prozessorkern durchgeführt wird, zu einem zweiten Prozessorkern migriert werden sollte, und eine Migrationseinheit zum, als Reaktion auf das Empfangen eines Befehls von der PCU, Migrieren des Thread, zum Speichern mindestens eines Abschnitts des Architekturzustands des ersten Prozessorkerns im gemeinsam genutzten Speicher und zum Migrieren des Thread zum zweiten Prozessorkern, ohne ein Eingreifen von SW, derart, dass der zweite Prozessorkern mit der Ausführung des Thread auf der Basis des Architekturzustands aus dem gemeinsam genutzten Speicher ohne Wissen der SW fortfahren kann.
Abstract:
Vorrichtung, umfassend:ein Mehrkernprozessor einschließlich einer Vielzahl von Kernen, ein gemeinsam benutzter Cache-Speicher, ein integriertes Ein-/Ausgabe-(IIO)-Modul, um eine Schnittstelle zwischen dem Mehrkernprozessor und wenigstens einem IO-Gerät herzustellen, das mit dem Mehrkernprozessor gekoppelt ist, und einen Caching-Agenten, wobei der Caching-Agent Kohärenz-Logik einschließt, um Cache-Kohärenz-Operationen für die Vielzahl von Kernen und das IIO-Modul auszuführen und kohärenten Zugriff in Bezug auf die Kerntransaktionen als auch die IO-Gerät-Transaktionen zu ermöglichen, wobei das IIO-Modul eine erste Warteschlange für gepostete Anforderungen und eine zweite Warteschlange für nicht gepostete Anforderungen aufweist und wobei das IIO-Modul eine PCI Express-Schnittstelle aufweist, wobei das IIO-Modul ferner eingerichtet ist, mittels der Anforderungen direkt auf den Cache-Speicher zuzugreifen,wobei der Caching-Agent derart eingerichtet ist, dass bei einem Cache-Speicher-Zugriff eine gepostete Anforderung einer nicht geposteten Anforderung vorausgeht.
Abstract:
Es wird eine heterogene Prozessorarchitektur beschrieben. Zum Beispiel umfasst ein Prozessor gemäß einer Ausführungsform der Erfindung: einen Satz von zwei oder mehr kleinen physischen Prozessorkernen; wenigstens einen großen physischen Prozessorkern mit Verarbeitungsfähigkeiten mit einer relativ höheren Leistung und einem relativ höheren Stromverbrauch im Vergleich zu den kleinen physischen Prozessorkernen; eine Virtuell-aufphysisch-(V-P-)-Abbildungslogik zum Offenbaren des Satzes von zwei oder mehr kleinen physischen Prozessorkernen gegenüber der Software durch einen entsprechenden Satz von virtuellen Kernen und zum Verbergen des wenigstens einen großen physischen Prozessorkerns vor der Software.