DE102018212476A1 - Technologien zum bereitstellen von effizientem pooling für eine hyperkonvergente infrastruktur - Google Patents

Technologien zum bereitstellen von effizientem pooling für eine hyperkonvergente infrastruktur Download PDF

Info

Publication number
DE102018212476A1
DE102018212476A1 DE102018212476.0A DE102018212476A DE102018212476A1 DE 102018212476 A1 DE102018212476 A1 DE 102018212476A1 DE 102018212476 A DE102018212476 A DE 102018212476A DE 102018212476 A1 DE102018212476 A1 DE 102018212476A1
Authority
DE
Germany
Prior art keywords
bridge logic
logic unit
memory
request
bay
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
DE102018212476.0A
Other languages
English (en)
Inventor
Mohan J. Kumar
Murugasamy K. Nachimuthu
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Intel Corp
Original Assignee
Intel Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Priority claimed from US15/858,542 external-priority patent/US11748172B2/en
Application filed by Intel Corp filed Critical Intel Corp
Publication of DE102018212476A1 publication Critical patent/DE102018212476A1/de
Pending legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/46Multiprogramming arrangements
    • G06F9/50Allocation of resources, e.g. of the central processing unit [CPU]
    • G06F9/5083Techniques for rebalancing the load in a distributed system
    • G06F9/5088Techniques for rebalancing the load in a distributed system involving task migration
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/46Multiprogramming arrangements
    • G06F9/54Interprogram communication
    • G06F9/547Remote procedure calls [RPC]; Web services
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F1/00Details not covered by groups G06F3/00 - G06F13/00 and G06F21/00
    • G06F1/16Constructional details or arrangements
    • G06F1/18Packaging or power distribution
    • G06F1/183Internal mounting support structures, e.g. for printed circuit boards, internal connecting means
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/30Monitoring
    • G06F11/34Recording or statistical evaluation of computer activity, e.g. of down time, of input/output operation ; Recording or statistical evaluation of user activity, e.g. usability assessment
    • G06F11/3442Recording or statistical evaluation of computer activity, e.g. of down time, of input/output operation ; Recording or statistical evaluation of user activity, e.g. usability assessment for planning or managing the needed capacity
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/46Multiprogramming arrangements
    • G06F9/50Allocation of resources, e.g. of the central processing unit [CPU]
    • G06F9/5005Allocation of resources, e.g. of the central processing unit [CPU] to service a request
    • G06F9/5011Allocation of resources, e.g. of the central processing unit [CPU] to service a request the resources being hardware resources other than CPUs, Servers and Terminals
    • G06F9/5016Allocation of resources, e.g. of the central processing unit [CPU] to service a request the resources being hardware resources other than CPUs, Servers and Terminals the resource being the memory
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/46Multiprogramming arrangements
    • G06F9/54Interprogram communication
    • G06F9/541Interprogram communication via adapters, e.g. between incompatible applications
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2209/00Indexing scheme relating to G06F9/00
    • G06F2209/50Indexing scheme relating to G06F9/50
    • G06F2209/502Proximity
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/46Multiprogramming arrangements
    • G06F9/48Program initiating; Program switching, e.g. by interrupt
    • G06F9/4806Task transfer initiation or dispatching
    • G06F9/4843Task transfer initiation or dispatching by program, e.g. task dispatcher, supervisor, operating system
    • G06F9/485Task life-cycle, e.g. stopping, restarting, resuming execution
    • G06F9/4856Task life-cycle, e.g. stopping, restarting, resuming execution resumption being on a different machine, e.g. task migration, virtual machine migration
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/06Physical realisation, i.e. hardware implementation of neural networks, neurons or parts of neurons
    • G06N3/063Physical realisation, i.e. hardware implementation of neural networks, neurons or parts of neurons using electronic means
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q30/00Commerce
    • G06Q30/02Marketing; Price estimation or determination; Fundraising
    • G06Q30/0283Price estimation or determination
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L49/00Packet switching elements
    • H04L49/40Constructional details, e.g. power supply, mechanical construction or backplane
    • HELECTRICITY
    • H05ELECTRIC TECHNIQUES NOT OTHERWISE PROVIDED FOR
    • H05KPRINTED CIRCUITS; CASINGS OR CONSTRUCTIONAL DETAILS OF ELECTRIC APPARATUS; MANUFACTURE OF ASSEMBLAGES OF ELECTRICAL COMPONENTS
    • H05K7/00Constructional details common to different types of electric apparatus
    • H05K7/14Mounting supporting structure in casing or on frame or rack
    • H05K7/1485Servers; Data center rooms, e.g. 19-inch computer racks
    • H05K7/1498Resource management, Optimisation arrangements, e.g. configuration, identification, tracking, physical location

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • General Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Computer Hardware Design (AREA)
  • Microelectronics & Electronic Packaging (AREA)
  • Human Computer Interaction (AREA)
  • Quality & Reliability (AREA)
  • Power Engineering (AREA)
  • Cooling Or The Like Of Electrical Apparatus (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Thermal Sciences (AREA)
  • Robotics (AREA)
  • Mechanical Engineering (AREA)
  • Computing Systems (AREA)

Abstract

Technologien zum Bereitstellen von effizientem Pooling für ein System, das eine hyperkonvergente Infrastruktur enthält. Ein Einschub des Systems enthält eine Netzwerkschnittstellensteuerung, die eine erste Brückenlogikeinheit enthält, um kommunikativ an ein Netzwerk aus Brückenlogikeinheiten zu koppeln. Die erste Brückenlogikeinheit hat ferner eine Anforderung zum Zugriff auf eine angeforderte Vorrichtung von einer anfordernden Vorrichtung zu erhalten, hat zu ermitteln, ob sich die angeforderte Vorrichtung auf dem vorliegenden Einschub oder einem vom vorliegenden Einschub verschiedenen, entfernten Einschub befindet, hat als Reaktion auf eine Ermittlung, dass sich die angeforderte Vorrichtung auf dem vorliegenden Einschub befindet, die angeforderte Vorrichtung selektiv einzuschalten, hat als Reaktion auf eine Ermittlung, dass sich die angeforderte Vorrichtung auf dem entfernten Einschub befindet, mit einer zweiten Brückenlogikeinheit des entfernten Einschubs zu kommunizieren und hat der anfordernden Vorrichtung über die erste Brückenlogikeinheit Zugriff auf die angeforderte Vorrichtung bereitzustellen.

Description

  • VERWEIS AUF VERWANDTE ANMELDUNGEN
  • Die vorliegende Anmeldung beansprucht den Vorteil der vorläufigen indischen Patentanmeldung Nr. 201741030632 , angemeldet am 30. August 2017, und der vorläufigen US-Patentanmeldung Nr. 62/584,401 , angemeldet am 10. November 2017.
  • STAND DER TECHNIK
  • Pooling (z. B. die Bereitstellung einer Sammlung von Ressourcen wie Beschleunigungsvorrichtungen, Arbeitsspeichervorrichtungen oder Datenspeichervorrichtungen, die mit einer oder mehreren Rechenvorrichtungen in einem Rack oder über mehrere Racks hinweg verbunden sind und von diesen nutzbar sind) in einer hyperkonvergenten Infrastruktur wird in Rechenzentren immer häufiger eingesetzt. Üblicherweise ist jedoch jeder Einschub (z. B. eine Platine mit einer oder mehreren Ressourcen) in derartigen Systemen vollständig eingeschaltet (z. B. der Hauptprozessor und mit E/A-Teilsystemen verbundene Vorrichtungen), um einen Zugriff auf eine bestimmte Vorrichtung zu ermöglichen, die sich auf dem Einschub befindet. In Situationen, in denen eine kleine Teilmenge der Ressourcen (z. B. eine bestimmte Arbeitsspeichervorrichtung), die sich auf einem Einschub befindet, verwendet wird, um eine Arbeitslast (z. B. eine Anwendung) auszuführen, während die anderen Vorrichtungen ungenutzt sind, wird die Energie, die verbraucht wird, um die anderen Vorrichtungen des Einschubs während der Ausführung der Arbeitslast eingeschaltet zu halten (um z. B. einen Zugriff auf die Teilmenge der Ressourcen auf dem Einschub zu ermöglichen), vergeudet und erhöht die finanziellen Kosten für den Betrieb des Rechenzentrums.
  • Figurenliste
  • Die hierin beschriebenen Konzepte werden in den begleitenden Figuren beispielhaft und nicht einschränkend illustriert. Zur Einfachheit und Klarheit der Illustration sind die in den Figuren illustrierten Elemente nicht unbedingt maßstabgerecht gezeichnet. Wo als angebracht erachtet, wurden Referenzzeichen unter den Figuren wiederholt, um entsprechende oder analoge Elemente anzuzeigen.
    • 1 ist ein vereinfachtes Diagramm mindestens einer Ausführungsform eines Rechenzentrums zum Ausführen von Arbeitslasten mit disaggregierten Ressourcen;
    • 2 ist ein vereinfachtes Diagramm mindestens einer Ausführungsform eines Schranks des Rechenzentrums von 1;
    • 3 ist eine perspektivische Ansicht mindestens einer Ausführungsform eines Racks, das im Schrank von 2 enthalten sein kann;
    • 4 ist eine seitliche Draufsicht des Racks von 3;
    • 5 ist eine perspektivische Ansicht des Racks von 3 mit einem darin montierten Einschub;
    • 6 ist ein vereinfachtes Blockdiagramm mindestens einer Ausführungsform einer Oberseite des Einschubs von 5;
    • 7 ist ein vereinfachtes Blockdiagramm mindestens einer Ausführungsform einer Unterseite des Einschubs von 6;
    • 8 ist ein vereinfachtes Blockdiagramm mindestens einer Ausführungsform eines im Rechenzentrum von 1 verwendbaren Recheneinschubs;
    • 9 ist eine perspektivische Draufsicht mindestens einer Ausführungsform des Recheneinschubs von 8;
    • 10 ist ein vereinfachtes Blockdiagramm mindestens einer Ausführungsform eines im Rechenzentrum von 1 verwendbaren Beschleunigungseinschubs;
    • 11 ist eine perspektivische Draufsicht mindestens einer Ausführungsform des Beschleunigungseinschubs von 10;
    • 12 ist ein vereinfachtes Blockdiagramm mindestens einer Ausführungsform eines im Rechenzentrum von 1 verwendbaren Speichereinschubs;
    • 13 ist eine perspektivische Draufsicht mindestens einer Ausführungsform des Speichereinschubs von 12;
    • 14 ist ein vereinfachtes Blockdiagramm mindestens einer Ausführungsform eines im Rechenzentrum von 1 verwendbaren Arbeitsspeichereinschubs; und
    • 15 ist ein vereinfachtes Blockdiagramm eines Systems, das im Rechenzentrum von 1 eingerichtet werden kann, um Arbeitslasten mit verwalteten Knoten auszuführen, die aus disaggregierten Ressourcen bestehen.
    • 16 ist ein vereinfachtes Blockdiagramm mindestens einer Ausführungsform eines Systems zum Bereitstellen von effizientem Pooling in einer hyperkonvergenten Infrastruktur;
    • 17 ist ein vereinfachtes Blockdiagramm mindestens einer Ausführungsform eines Einschubs des Systems von 16;
    • 18 ist ein vereinfachtes Blockdiagramm mindestens einer Ausführungsform einer Umgebung, die vom Einschub von 16 und 17 eingerichtet werden kann; und
    • 19-20 sind ein vereinfachtes Ablaufdiagramm mindestens einer Ausführungsform eines Verfahrens zum Bereitstellen von effizientem Pooling in einer hyperkonvergenten Infrastruktur, das vom Einschub der 16-18 durchgeführt werden kann.
  • AUSFÜHRLICHE BESCHREIBUNG DER ZEICHNUNGEN
  • Während die Konzepte der vorliegenden Offenbarung für verschiedene Modifikationen und alternative Formen geeignet sind, wurden spezifische Ausführungsformen davon beispielhaft in den Zeichnungen gezeigt und werden hierin im Detail beschrieben. Es versteht sich jedoch, dass nicht die Absicht vorliegt, die Konzepte der vorliegenden Offenbarung auf die bestimmten offenbarten Formen zu beschränken, vielmehr sollen im Gegenteil alle Modifikationen, Äquivalente und Alternativen abgedeckt werden, die mit der vorliegenden Offenbarung und den beigefügten Ansprüchen vereinbar sind.
  • Bezugnahmen in der Beschreibung auf „eine Ausführungsform“, „eine illustrative Ausführungsform“ usw. zeigen an, dass die beschriebene Ausführungsform ein bestimmtes Merkmal, eine bestimmte Struktur oder Eigenschaft enthalten kann, aber jede Ausführungsform kann oder kann nicht notwendigerweise dieses bestimmte Merkmal, diese bestimmte Struktur oder Eigenschaft enthalten. Darüber hinaus beziehen sich solche Formulierungen nicht notwendigerweise auf die gleiche Ausführungsform. Ferner, wenn ein bestimmtes Merkmal, Struktur oder Eigenschaft in Verbindung mit einer Ausführungsform beschrieben wird, wird vorgebracht, dass es im Wissen von Fachleuten liegt, ein solches Merkmal, eine solche Struktur oder Eigenschaft in Verbindung mit anderen Ausführungsformen zu erwirken, egal, ob es bzw. sie explizit beschrieben wird oder nicht. Darüber hinaus sollte klar sein, dass Elemente, die in einer Liste in Form von „mindestens eines von A, B und C“ enthalten sind, (A); (B); (C); (A und B); (A und C); (B und C); oder (A, B und C) bedeuten können. Gleichermaßen können Elemente, die in Form von „mindestens eines von A, B oder C“ aufgelistet sind, (A); (B); (C); (A und B); (A und C); (B und C); oder (A, B und C) bedeuten können.
  • Die offenbarten Ausführungsformen können in einigen Fällen in Hardware, Firmware, Software oder einer beliebigen Kombination daraus implementiert werden. Die offenbarten Ausführungsformen können auch als Anweisungen implementiert werden, die von einem transitorischen oder nicht transitorischen maschinenlesbaren (z. B. computerlesbaren) Speichermedium getragen werden oder auf diesem gespeichert sind und von dem einen oder den mehreren Prozessoren gelesen und ausgeführt werden können. Ein maschinenlesbares Speichermedium kann als eine beliebige Speichereinrichtung, ein beliebiger Speichermechanismus oder eine andere physische Struktur zum Speichern oder Senden von Informationen in einer von einer Maschine lesbaren Form ausgeführt sein (z. B. als ein flüchtiger oder nicht flüchtiger Speicher, eine Medienplatte oder andere Medieneinrichtung).
  • In den Zeichnungen können einige Struktur- oder Verfahrensmerkmale in spezifischen Anordnungen und/oder Reihenfolgen gezeigt werden. Es sollte jedoch klar sein, dass solche spezifischen Anordnungen und/oder Reihenfolgen möglicherweise nicht erforderlich sind. Vielmehr können derartige Merkmale in einigen Ausführungsformen auf eine andere Art und/oder in einer anderen Reihenfolge als in den illustrativen Figuren gezeigt angeordnet sein. Zusätzlich soll das Einbeziehen eines Struktur- oder Verfahrensmerkmals in einer bestimmten Figur nicht implizieren, dass ein solches Merkmal in allen Ausführungsformen erforderlich ist, und es kann in einigen Ausführungsformen nicht enthalten sein oder mit anderen Merkmalen kombiniert sein.
  • Nun auf 1 Bezug nehmend, enthält ein Rechenzentrum 100, in dem disaggregierte Ressourcen gemeinsam eine oder mehr Arbeitslasten (z. B. Anwendungen im Auftrag von Kunden) ausführen können, mehrere Schränke 110, 120, 130, 140, von denen jeder eine oder mehrere Reihen von Racks enthält. Wie hierin ausführlicher beschrieben wird, beherbergt jedes Rack mehrere Einschübe, die jeweils als eine Rechenvorrichtung, wie ein Server, ausgebildet sein können, die primär mit einem bestimmten Ressourcentyp (z. B. Arbeits speichervorrichtungen, Datenspeichervorrichtungen, Beschleunigungsvorrichtungen, Universalprozessoren) ausgestattet sein kann. In der veranschaulichten Ausführungsform sind die Einschübe in jedem Schrank 110, 120, 130, 140 mit mehreren Schrankswitches (z. B. Switches, die Datenkommunikationen zu und von Einschüben im Inneren des Schranks leiten) verbunden. Die Schrankswitches sind wiederum mit Spine-Switches 150 verbunden, die Kommunikationen zwischen Schränken (z. B. den Schränken 110, 120, 130, 140) im Rechenzentrum 100 schalten. In einigen Ausführungsformen können die Einschübe unter Verwendung von Intel-Omni-Path-Technologie mit einem Fabric verbunden sein. Wie hierin ausführlicher beschrieben wird, können Ressourcen in Einschüben im Rechenzentrum 100 einer Gruppe (die hierin als ein „verwalteter Knoten“ bezeichnet wird) zugeordnet sein, die Ressourcen von einem oder mehreren anderen Einschüben beinhaltet, die gemeinsam bei der Ausführung einer Arbeitslast eingesetzt werden können. Die Arbeitslast kann ausgeführt werden, als ob sich die Ressourcen, die zum verwalteten Knoten gehören, auf dem gleichen Einschub befinden würden. Die Ressourcen in einem verwalteten Knoten können sogar zu Einschüben gehören, die zu verschiedenen Racks gehören, und sogar zu verschiedenen Schränken 110, 120, 130, 140. Einige Ressourcen eines einzigen Einschubs können einem verwalteten Knoten zugeordnet sein, während andere Ressourcen des gleichen Einschubs einem anderen verwalteten Knoten zugeordnet sind (z. B. ist ein Prozessor einem verwalteten Knoten zugeordnet und ein anderer Prozessor des gleichen Einschubs ist einem anderen verwalteten Knoten zugeordnet). Durch Disaggegieren von Ressourcen auf Einschübe, die vorwiegend aus einem einzigen Ressourcentyp bestehen (z. B. Recheneinschübe, die hauptsächlich Rechenressourcen umfassen, Arbeitsspeichereinschübe, die hauptsächlich Arbeitsspeicherressourcen beinhalten), und selektives Zuordnen und Aufheben von Zuordnungen der disaggregierten Ressourcen, um einen verwalteten Knoten zu bilden, dem zugewiesen ist, eine Arbeitslast auszuführen, bietet das Rechenzentrum 100 eine effizientere Ressourcennutzung gegenüber typischen Rechenzentren, die aus hyperkonvergenten Servern bestehen, die Rechen-, Arbeitsspeicher-, Speicher- und möglicherweise zusätzliche Ressourcen beinhalten. Als solches kann das Rechenzentrum 100 eine größere Leistung (z. B. Durchsatz, Operationen pro Sekunden, Latenzzeit usw.) als ein typisches Rechenzentrum bieten, das die gleiche Ressourcenanzahl aufweist.
  • Nun auf 2 Bezug nehmend, enthält der Schrank 110 in der illustrativen Ausführungsform einen Satz von Reihen 200, 210, 220, 230 aus Racks 240. Jedes Rack 240 kann mehrere Einschübe (z. B. sechzehn Einschübe) aufnehmen und den aufgenommenen Einschüben Leistungs- und Datenverbindungen bereitstellen, wie hierin ausführlicher beschrieben wird. In der illustrativen Ausführungsform sind die Racks in jeder Reihe 200, 210, 220, 230 mit mehreren Schrankswitches 250, 260 verbunden. Der Schrankswitch 250 enthält einen Satz von Anschlüssen 252, mit denen die Einschübe der Racks des Schranks 110 verbunden sind, und einen anderen Satz von Anschlüssen 254, die den Schrank 110 mit den Spine-Switches 150 verbinden, um anderen Schränken im Rechenzentrum 100 Konnektivität bereitzustellen. Gleichermaßen enthält der Schrankswitch 260 einen Satz von Anschlüssen 262, mit denen die Einschübe der Racks des Schranks 110 verbunden sind, und einen Satz von Anschlüssen 264, die den Schrank 110 mit den Spine-Switches 150 verbinden. Als solche bietet die Nutzung des Paars von Switches 250, 260 dem Schrank 110 ein Ausmaß an Redundanz. Falls beispielsweise einer der Switches 250, 260 versagt, können die Einschübe im Schrank 110 weiterhin über den anderen Switch 250, 260 eine Datenkommunikation mit dem Rest des Rechenzentrums 100 (z. B. mit Einschüben anderer Schränke) aufrechterhalten. Ferner können die Switches 150, 250, 260 in der illustrativen Ausführungsform als optische Switches mit zwei Modi ausgeführt sein, die fähig sind, sowohl Ethernetprotokoll-Kommunikationen, die Internetprotokoll-Pakete (IP-Pakete) tragen, als auch Kommunikationen gemäß einem zweiten Hochleistungs-Verbindungsschichtprotokoll (z. B. Infiniband der Omni-Path-Architektur von Intel) über optische Signalgebungsmedien eines optischen Fabric leiten können.
  • Es sollte klar sein, dass jeder der anderen Schränke 120, 130, 140 (sowie alle zusätzlichen Schränke des Rechenzentrums 100) ähnlich wie der in 2 gezeigte und in Bezug auf diesen beschriebenen Schrank 110 strukturiert sein kann und ähnliche Komponenten aufweisen kann (z. B. kann jeder Schrank Reihen von Racks aufweisen, die mehrere Einschübe aufnehmen, wie oben beschrieben). Darüber hinaus, während zwei Schrankswitches 250, 260 gezeigt sind, sollte klar sein, dass in anderen Ausführungsformen jeder Schrank 110, 120, 130, 140 mit einer anderen Anzahl an Schrankswitches verbunden sein kann (und z. B. noch mehr Ausfallsicherungskapazitäten bereitstellen kann).
  • Nun auf 3-5 Bezug nehmend, enthält jedes illustrative Rack 240 des Rechenzentrums 100 zwei verlängerte Stützpfosten 302, 304, die vertikal angeordnet sind. Die verlängerten Stützpfosten 302, 304 können sich beispielsweise bei Einsatz von einem Boden des Rechenzentrums 100 nach oben erstrecken. Das Rack 240 enthält auch ein oder mehrere horizontale Paare 310 von verlängerten Stützarmen 312 (in 3 durch eine gestrichelte Ellipse identifiziert), die ausgelegt sind, einen Einschub des Rechenzentrums 100 zu tragen, wie unten besprochen wird. Ein verlängerter Stützarm 312 des Paars der verlängerten Stützarme 312 verläuft vom verlängerten Stützpfosten 302 nach außen und der andere verlängerte Stützarm 312 verläuft vom verlängerten Stützpfosten 304 nach außen.
  • In den illustrativen Ausführungsformen ist jeder Einschub des Rechenzentrums 100 als ein gehäuseloser Einschub ausgeführt. Das heißt, jeder Einschub weist ein gehäuseloses Leiterplattensubstrat auf, auf dem physische Ressourcen (z. B. Prozessoren, Arbeitsspeicher, Beschleuniger, Speicher usw.) montiert sind, wie unten ausführlicher besprochen wird. Als solches ist das Rack 240 ausgelegt, die gehäuselosen Einschübe aufzunehmen. Jedes Paar 310 von verlängerten Stützarmen 312 definiert einen Einschubschlitz 320 des Racks 240, der ausgelegt ist, einen entsprechenden gehäuselosen Einschub aufzunehmen. Hierzu enthält jeder illustrative Stützarm 312 eine Leiterplattenführung 330, die ausgelegt ist, das gehäuselose Leiterplattensubstrat des Einschubs aufzunehmen. Jede Leiterplattenführung 330 ist an einer Oberseite 332 des entsprechenden verlängerten Stützarms 312 gesichert oder anderweitig montiert. In der illustrativen Ausführungsform ist beispielsweise jede Leiterplattenführung 330 an einem distalen Ende des entsprechenden verlängerten Stützarms 312 relativ zum entsprechenden verlängerten Stützpfosten 302, 304 montiert. Zur Verdeutlichung der Figuren ist möglicherweise nicht jede Leiterplattenführung 330 in jeder Figur referenziert.
  • Jede Leiterplattenführung 330 enthält eine Innenwand, die einen Leiterplattenschlitz 380 definiert, der ausgelegt ist, das gehäuselose Leiterplattensubstrat eines Einschubs 400 aufzunehmen, wenn der Einschub 400 im entsprechenden Einschubschlitz 320 des Racks 240 aufgenommen ist. Hierzu richtet ein Benutzer (oder Roboter) wie in 4 gezeigt das gehäuselose Leiterplattensubstrat eines illustrativen gehäuselosen Einschubs 400 an einem Einschubschlitz 320 aus. Der Benutzer oder der Roboter kann dann das gehäuselose Leiterplattensubstrat vorwärts in den Einschubschlitz 320 schieben, sodass jede Seitenkante 414 des gehäuselosen Leiterplattensubstrats in einem entsprechenden Leiterplattenschlitz 380 der Leiterplattenführungen 330 des Paars 310 der verlängerten Stützarme 312 aufgenommen wird, die den entsprechenden Einschubschlitz 320 definieren, wie in 4 gezeigt. Dadurch, dass jeder Ressourcentyp Einschübe aufweist, auf die Roboter zugreifen können und die Roboter manipulieren können und die disaggregierte Ressourcen umfassen, kann jeder Ressourcentyp unabhängig voneinander und mit seiner eigenen optimierten Aktualisierungsrate nachgerüstet werden. Darüber hinaus sind die Einschübe ausgelegt, blind mit Energie- und Datenkommunikationskabeln in jedem Rack 240 zusammenzupassen, was ihre Fähigkeit verbessert, schnell entfernt, nachgerüstet, neu installiert und/oder ausgetauscht zu werden. Als solches kann das Rechenzentrum 100 in einigen Ausführungsformen ohne menschliche Beteiligung vor Ort im Rechenzentrum arbeiten (z. B. Arbeitslasten ausführen, einer Wartung und/oder Nachrüstungen unterzogen werden usw.). In anderen Ausführungsformen kann ein Mensch ein oder mehrere Wartungs- oder Nachrüstvorgänge im Rechenzentrum 100 ermöglichen.
  • Es sollte klar sein, dass jede Leiterplattenführung 330 doppelseitig ist. Das heißt, jede Leiterplattenführung 330 enthält eine Innenwand, die auf jeder Seite der Leiterplattenführung 330 einen Leiterplattenschlitz 380 definiert. Auf diese Weise kann jede Leiterplattenführung 330 auf beiden Seiten ein gehäuseloses Leiterplattensubstrat tragen. Als solcher kann ein einziger zusätzlicher verlängerter Stützpfosten zum Rack 240 hinzugefügt werden, um das Rack 240 in eine Zwei-Rack-Lösung umzuwandeln, die doppelt so viele Einschubschlitze 320 halten kann, wie in 3 gezeigt. Das illustrative Rack 240 enthält sieben Paare 310 von verlängerten Stützarmen 312, die entsprechende sieben Einschubschlitze 320 definieren, die jeweils ausgelegt sind, einen entsprechenden Einschub 400 aufzunehmen und zu tragen, wie oben besprochen. Natürlich kann das Rack 240 in anderen Ausführungsformen zusätzliche oder weniger Paare 310 von verlängerten Stützarmen 312 enthalten (d. h. zusätzliche oder weniger Einschubschlitze 320). Es sollte klar sein, dass der Einschub 400 eine Gesamthöhe aufweisen kann, die sich von typischen Servern unterscheidet, da der Einschub 400 gehäuselos ist. Als solche kann die Höhe jedes Einschubschlitzes 320 in einigen Ausführungsformen kürzer als die Höhe eines typischen Servers sein (z. B. kürzer als eine einzelne Höheneinheit, „1 HE“). Das heißt, die vertikale Distanz zwischen jedem Paar 310 von verlängerten Stützarmen 312 kann kleiner als eine Standard-Höheneinheit „1 HE“ sein. Darüber hinaus kann die Gesamthöhe des Racks 240 in einigen Ausführungsformen aufgrund der relativen Verringerung der Höhe der Einschubschlitze 320 geringer als die Höhe von herkömmlichen Rackgehäusen sein. In einigen Ausführungsformen kann jeder der verlängerten Stützpfosten 302, 304 beispielsweise eine Länge von sechs Fuß oder darunter aufweisen. In anderen Ausführungsformen kann das Rack 240 wiederum andere Abmessungen aufweisen. Ferner sollte klar sein, dass das Rack 240 keine Wände, Gehäuse oder Ähnliches enthält. Das Rack 240 ist vielmehr ein gehäuseloses Rack, das zur lokalen Umgebung hin offen ist. In einigen Fällen kann natürlich in den Fällen, in denen das Rack 240 ein Rack am Ende einer Reihe im Rechenzentrum 100 bildet, eine Endplatte an einem der verlängerten Stützpfosten 302, 304 befestigt sein.
  • In einigen Ausführungsformen können verschiedene Verbindungen nach oben oder unten durch die verlängerten Stützpfosten 302, 304 geleitet sein. Um eine solche Leitung zu erleichtern, enthält jeder verlängerte Stützpfosten 302, 304 eine Innenwand, die eine innere Kammer definiert, in der sich die Verbindung befinden kann. Die durch die verlängerten Stützpfosten 302, 304 geleiteten Verbindungen können als ein beliebiger Typ von Verbindungen ausgebildet sein, einschließlich Daten- oder Kommunikationsverbindungen, um jedem Einschubschlitz 320 Kommunikationsanbindungen bereitzustellen, Energieverbindungen, um jeden Einschubschlitz 320 mit Energie zu versorgen, und/oder andere Arten von Verbindungen.
  • Das Rack 240 enthält in der illustrativen Ausführungsform eine Trägerplattform, auf der ein entsprechender optischer Datenanschluss (nicht gezeigt) montiert ist. Jeder optische Datenanschluss ist mit einem entsprechenden Einschubschlitz 320 assoziiert und ist ausgelegt, in einen optischen Datenanschluss eines entsprechenden Einschubs 400 einzugreifen, wenn der Einschub 400 im entsprechenden Einschubschlitz 320 aufgenommen ist. In einigen Ausführungsformen erfolgen optische Verbindungen zwischen Komponenten (z. B. Einschübe, Racks und Switches) im Rechenzentrum 100 durch eine blind steckbare optische Verbindung. Eine Klappe an jedem Kabel kann beispielsweise verhindern, dass Staub den Leiter im Inneren des Kabels verunreinigt. Beim Anschließen an einen blind steckbaren optischen Verbindungsmechanismus wird die Klappe aufgedrückt, wenn das Ende des Kabels in den Verbindungsmechanismus eindringt. Danach dringt der optische Leiter in ein Gel im Inneren des Verbindungsmechanismus ein und der optische Leiter eines Kabels kommt im Gel im Inneren des Verbindungsmechanismus mit dem optischen Leiter eines anderen Kabels in Kontakt.
  • Das illustrative Rack 240 enthält auch eine Ventilatoranordnung 370, die an die Querstützarme des Racks 240 gekoppelt ist. Die Ventilatoranordnung 370 enthält eine oder mehrere Reihen von Kühlventilatoren 372, die in einer horizontalen Linie zwischen den verlängerten Stützpfosten 302, 304 ausgerichtet sind. In der illustrativen Ausführungsform enthält die Ventilatoranordnung 370 eine Reihe von Kühlventilatoren 372 für jeden Einschubschlitz 320 des Racks 240. Wie oben besprochen enthält keiner der Einschübe 400 irgendein integriertes Kühlsystem in der illustrativen Ausführungsform und die Ventilatoranordnung 370 sorgt als solche für Kühlung für jeden im Rack 240 aufgenommenen Einschub 400. Jedes Rack 240 in der illustrativen Ausführungsform enthält auch eine mit jedem Einschubschlitz 320 assoziierte Stromversorgung. Jede Stromversorgung ist an einem der verlängerten Stützarme 312 des Paars 310 von verlängerten Stützarmen 312 gesichert, die den entsprechenden Einschubschlitz 320 definieren. Das Rack 240 kann zum Beispiel eine Stromversorgung enthalten, die an jeden verlängerten Stützarm 312 gekoppelt oder gesichert ist, der sich vom verlängerten Stützpfosten 302 erstreckt. Jede Stromversorgung enthält einen Stromanschluss, der ausgelegt ist, in einen Stromanschluss des Einschubs 400 einzugreifen, wenn der Einschub 400 im entsprechenden Einschubschlitz 320 aufgenommen ist. In der illustrativen Ausführungsform enthält der Einschub 400 keine integrierte Stromversorgung und die im Rack 240 vorgesehenen Stromversorgungen liefern als solche Strom an entsprechende Einschübe 400, wenn sie am Rack 240 montiert sind.
  • Nun auf 6 Bezug nehmend ist der Einschub 400 in der illustrativen Ausführungsform ausgelegt, in einem entsprechenden Rack 240 des Rechenzentrums 100 montiert zu werden, wie oben besprochen. In einigen Ausführungsformen kann jeder Einschub 400 zum Durchführen bestimmter Aufgaben, wie Rechenaufgaben, Beschleunigungsaufgaben, Datenspeicheraufgaben usw., optimiert oder anderweitig konfiguriert sein. Der Einschub 400 kann zum Beispiel als ein Recheneinschub 800 wie unten in Bezug auf 8-9 besprochen, ein Beschleunigungseinschub 1000 wie unten in Bezug auf 10-11 besprochen, ein Speichereinschub 1200 wie unten in Bezug auf 12-13 besprochen oder als ein Einschub ausgebildet sein, der optimiert oder anderweitig ausgelegt ist, um andere spezialisierte Aufgaben durchzuführen, wie ein Arbeitsspeichereinschub 1400, der unten in Bezug auf 14 besprochen wird.
  • Wie oben besprochen enthält der illustrative Einschub 400 ein gehäuseloses Leiterplattensubstrat 602, das verschiedene physische Ressourcen trägt (z. B. elektrische Komponenten), die darauf montiert sind. Es sollte klar sein, dass das Leiterplattensubstrat 602 in dem Sinn „gehäuselos“ ist, dass der Einschub 400 kein Gehäuse oder keine Umhüllung enthält. Vielmehr ist das gehäuselose Leiterplattensubstrat 602 zur lokalen Umgebung hin offen. Das gehäuselose Leiterplattensubstrat 602 kann aus einem beliebigen Material gebildet sein, das fähig ist, die verschiedenen, darauf montierten elektrischen Komponenten zu tragen. In einer illustrativen Ausführungsform ist das gehäuselose Leiterplattensubstrat 602 aus einem FR-4-glasverstärkten Epoxylaminatmaterial geformt. Natürlich können in anderen Ausführungsformen auch andere Materialien verwendet werden, um das gehäuselose Leiterplattensubstrat 602 zu formen.
  • Wie unten ausführlicher besprochen wird, enthält das gehäuselose Leiterplattensubstrat 602 mehrere Merkmale, die die thermalen Kühleigenschaften der verschiedenen elektrischen Komponenten verbessern, die auf dem gehäuselosen Leiterplattensubstrat 602 montiert sind. Wie besprochen enthält das gehäuselose Leiterplattensubstrat 602 kein Gehäuse oder keine Umhüllung, was den Luftstrom über die elektrischen Komponenten des Einschubs 400 durch Reduzieren derjenigen Strukturen verbessern kann, die den Luftstrom behindern können. Da das gehäuselose Leiterplattensubstrat 602 nicht in einem individuellen Gehäuse oder in einer individuellen Umhüllung positioniert ist, gibt es beispielsweise keine Rückwandplatine (z. B. eine Rückplatte des Gestells) am gehäuselosen Leiterplattensubstrat 602, die einen Luftstrom über die elektrischen Komponenten verhindern könnte. Darüber hinaus weist das gehäuselose Leiterplattensubstrat 602 eine geometrische Form auf, die ausgelegt ist, die Länge des Luftstrompfads über die elektrischen Komponenten zu reduzieren, die am gehäuselosen Leiterplattensubstrat 602 montiert sind. Das illustrative gehäuselose Leiterplattensubstrat 602 weist zum Beispiel eine Breite 604 auf, die größer als eine Tiefe 606 des gehäuselosen Leiterplattensubstrats 602 ist. In einer bestimmten Ausführungsform weist das gehäuselose Leiterplattensubstrat 602 beispielsweise eine Breite von ungefähr 53,34 cm (21 Zoll) und eine Tiefe von ungefähr 22,86 cm (9 Zoll) auf, im Vergleich zu einem typischen Server, der eine Breite von ungefähr 43,18 cm (17 Zoll) und eine Tiefe von ungefähr 99,06 cm (39 Zoll) aufweist. Als solcher weist ein Luftstrompfad 608, der von einer Vorderkante 610 des gehäuselosen Leiterplattensubstrats 602 zu einer Hinterkante 612 verläuft, relativ zu typischen Servern eine kürzere Distanz auf, was die thermalen Kühlungsmerkmale des Einschubs 400 verbessern kann. Ferner, obwohl in 6 nicht veranschaulicht, sind die verschiedenen physischen Ressourcen, die am gehäuselosen Leiterplattensubstrat 602 montiert sind, an entsprechenden Positionen montiert, sodass keine zwei elektrischen Komponenten, die wesentliche Wärme erzeugen, einander begleiten, wie unten ausführlicher besprochen wird. Das heißt, keine zwei elektrischen Komponenten, die während des Betriebs merkliche Wärme erzeugen (d. h. größer als eine nominale Wärme, die ausreicht, um die Kühlung anderer elektrischer Komponenten nachteilig zu beeinflussen), sind am gehäuselosen Leiterplattensubstrat 602 linear in einer Reihe zueinander entlang der Richtung des Luftstrompfads 608 montiert (d. h. entlang einer Richtung, die von der Vorderkante 610 zur Hinterkante 612 des gehäuselosen Leiterplattensubstrats 602 verläuft).
  • Wie oben besprochen, enthält der illustrative Einschub 400 eine oder mehrere physische Ressourcen 620, die an einer Oberseite 650 des gehäuselosen Leiterplattensubstrats 602 montiert sind. Obwohl in 6 nur zwei physische Ressourcen 620 gezeigt sind, sollte klar sein, dass der Einschub 400 in anderen Ausführungsformen eine, zwei oder mehr physische Ressourcen 620 enthalten kann. Die physischen Ressourcen 620 können als ein beliebiger Typ von einem Prozessor, einer Steuerung oder einem anderen Rechenschaltkreis ausgebildet sein, der verschiedene Aufgaben wie Rechenfunktionen und/oder Steuern der Funktionen des Einschubs 400 durchführen kann, beispielsweise abhängig vom Typ oder der beabsichtigten Funktionalität des Einschubs 400. Wie unten ausführlicher besprochen wird, können die physischen Ressourcen 620 beispielsweise als Hochleistungsprozessoren in Ausführungsformen, in denen der Einschub 400 als ein Recheneinschub ausgebildet ist, als Beschleunigungs-Coprozessoren oder Schaltkreise in Ausführungsformen, in denen der Einschub 400 als ein Beschleunigungseinschub ausgebildet ist, als Speichersteuerungen in Ausführungsformen, in denen der Einschub 400 als ein Speichereinschub ausgebildet ist, oder eine Gruppe von Arbeitsspeichervorrichtungen in Ausführungsformen ausgebildet sein, in denen der Einschub 400 als ein Arbeitsspeichereinschub ausgebildet ist.
  • Der Einschub 400 enthält auch eine oder mehrere zusätzliche physische Ressourcen 630, die an einer Oberseite 650 des gehäuselosen Leiterplattensubstrats 602 montiert sind. In der illustrativen Ausführungsform enthalten die zusätzlichen physischen Ressourcen eine Netzwerkschnittstellensteuerung (NIC), wie unten ausführlicher besprochen wird. Natürlich können die physischen Ressourcen 630 in anderen Ausführungsformen abhängig vom Typ und der Funktionalität des Einschubs 400 zusätzliche oder andere elektrische Komponenten, Schaltkreise und/oder Vorrichtungen enthalten.
  • Die physischen Ressourcen 620 sind über ein Eingabe/Ausgabe(E/A)-Subsystem 622 kommunikativ an die physischen Ressourcen 630 gekoppelt. Das E/A-Subsystem 622 kann als eine Verschaltung und/oder Komponenten ausgebildet sein, um Eingabe/Ausgabe-Vorgänge mit den physischen Ressourcen 620, den physischen Ressourcen 630 und/oder anderen Komponenten des Einschubs 400 zu ermöglichen. Das E/A-Subsystem 622 kann beispielsweise als Arbeitsspeichersteuerungshubs, Eingabe/Ausgabe-Steuerungshubs, integrierte Sensorhubs, Firmwarevorrichtungen, Kommunikationsverbindungen (z. B. Punkt-zu-Punkt-Verknüpfungen, Busverbindungen, Drähte, Kabel, Lichtleiter, Bahnen auf gedruckten Leiterplatten usw.) und/oder andere Komponenten und Subsysteme ausgebildet sein oder diese anderweitig enthalten, um die Eingabe/Ausgabe-Vorgänge zu ermöglichen. In der illustrativen Ausführungsform ist das E/A-Subsystem 622 als ein doppelter Datenraten-4(DDR4)-Datenbus oder ein DDR5-Datenbus ausgebildet oder enthält einen solchen anderweitig.
  • In einigen Ausführungsformen kann der Einschub 400 auch eine Ressource-zu-Ressource-Verbindung 624 enthalten. Die Ressource-zu-Ressource-Verbindung 624 kann als ein beliebiger Typ von Kommunikationsverbindung ausgebildet sein, der fähig ist, Ressource-zu-Ressource-Kommunikationen zu ermöglichen. In der illustrativen Ausführungsform ist die Ressource-zu-Ressource-Verbindung 624 als eine Hochgeschwindigkeits-Punkt-zu-Punkt-Verbindung ausgebildet (z. B. schneller als das E/A-Teilsystem 622). Die Ressource-zu-Ressource-Verbindung 624 kann zum Beispiel als QuickPath Interconnect (QPI), UltraPath Interconnect (UPI) oder eine andere Hochgeschwindigkeits-Punkt-zu-Punkt-Verbindung ausgebildet sein, die für Ressource-zu-Ressource-Kommunikationen zweckbestimmt ist.
  • Der Einschub 400 enthält auch einen Stromanschluss 640, der ausgelegt ist, in einen entsprechenden Stromanschluss des Racks 240 einzugreifen, wenn der Einschub 400 im entsprechenden Rack 240 montiert ist. Der Einschub 400 empfängt über den Stromanschluss 640 Strom von einer Stromversorgung des Racks 240, um Strom an die verschiedenen elektrischen Komponenten des Einschubs 400 zu liefern. Das heißt, der Einschub 400 enthält keine lokale Stromversorgung (d. h. eine integrierte Stromversorgung), um die elektrischen Komponenten des Einschubs 400 mit Strom zu versorgen. Der Ausschluss einer lokalen oder integrierten Stromversorgung ermöglicht die Reduktion des Gesamtplatzbedarfs des gehäuselosen Leiterplattensubstrats 602, was die thermalen Kühlungsmerkmale der verschiedenen elektrischen Komponenten erhöhen kann, die auf dem gehäuselosen Leiterplattensubstrat 602 montiert sind, wie oben besprochen. In einigen Ausführungsformen wird den Prozessoren 820 über Durchkontaktierungen direkt unter den Prozessoren 820 (z. B. durch die Unterseite 750 des gehäuselosen Leiterplattensubstrats 602) Strom geliefert, was eine erhöhte Wärmebilanz, zusätzlichen Strom und/oder Spannung und eine bessere Spannungssteuerung gegenüber typischen Platten bietet.
  • In einigen Ausführungsformen kann der Einschub 400 auch Montageelemente 642 enthalten, die ausgelegt sind, in einen Montagearm oder einer anderen Struktur eines Roboters einzugreifen, um die Platzierung des Einschubs 600 durch den Roboter in einem Rack 240 zu ermöglichen. Die Montageelemente 642 können als ein beliebiger Typ von physischen Strukturen ausgebildet sein, die dem Roboter ermöglichen, den Einschub 400 zu ergreifen, ohne das gehäuselose Leiterplattensubstrat 602 oder die darauf montierten elektrischen Komponenten zu beschädigen. In einigen Ausführungsformen können die Montageelemente 642 als nicht leitende Anschlussfelder ausgebildet sein, die am gehäuselosen Leiterplattensubstrat 602 befestigt sind. In anderen Ausführungsformen können die Montageelemente als Halterungen, Klammern oder andere ähnliche Strukturen ausgebildet sein, die am gehäuselosen Leiterplattensubstrat 602 befestigt sind. Die spezifische Anzahl, Form, Größe und/oder der spezifische Aufbau des Montageelements 642 kann von der Konstruktion des Roboters abhängen, der ausgelegt ist, den Einschub 400 zu verwalten.
  • Nun auf 7 Bezug nehmend, enthält der Einschub 400 zusätzlich zu den physischen Ressourcen 630, die auf der Oberseite 650 des gehäuselosen Leiterplattensubstrats 602 montiert sind, auch eine oder mehrere Arbeitsspeichervorrichtungen 720, die auf einer Unterseite 750 des gehäuselosen Leiterplattensubstrats 602 montiert sind. Das heißt, das gehäuselose Leiterplattensubstrat 602 ist als eine doppelseitige Leiterplatte ausgebildet. Die physischen Ressourcen 620 sind über das E/A-Subsystem 622 kommunikativ an die Arbeitsspeichervorrichtungen 720 gekoppelt. Die physischen Ressourcen 620 und die Arbeitsspeichervorrichtungen 720 können zum Beispiel über eine oder mehrere Durchkontaktierungen kommunikativ gekoppelt sein, die durch das gehäuselose Leiterplattensubstrat 602 verlaufen. Jede physische Ressource 620 kann in einigen Ausführungsformen kommunikativ an eine andere Gruppe aus einer oder mehreren Arbeitsspeichervorrichtungen 720 gekoppelt sein. Alternativ kann jede physische Ressource 620 in anderen Ausführungsformen kommunikativ an jede Arbeitsspeichervorrichtung 720 gekoppelt sein.
  • Die Arbeitsspeichervorrichtungen 720 können als ein beliebiger Typ von Arbeitsspeichervorrichtung ausgebildet sein, der fähig ist, während eines Betriebs des Einschubs 400 Daten für die physischen Ressourcen 620 zu speichern, wie beispielsweise ein beliebiger Typ von flüchtigem (z. B. dynamischem Arbeitsspeicher mit wahlfreiem Zugriff (DRAM) usw.) oder nichtflüchtigem Arbeitsspeicher. Flüchtiger Arbeitsspeicher kann ein Speichermedium sein, das Strom erfordert, um den Zustand von vom Medium gespeicherten Daten zu bewahren. Nicht einschränkende Beispiele von flüchtigem Arbeitsspeicher können verschiedene Arten von Arbeitsspeicher mit wahlfreiem Zugriff (RAM) wie dynamischen Arbeitsspeicher mit wahlfreiem Zugriff (DRAM) oder statischen Arbeitsspeicher mit wahlfreiem Zugriff (SRAM) enthalten. Ein bestimmter Typ von DRAM, der in einem Arbeitsspeichermodul verwendet werden kann, ist synchroner dynamischer Arbeitsspeicher mit wahlfreiem Zugriff (SDRAM). In bestimmten Ausführungsformen kann der DRAM einer Arbeitsspeicherkomponente einen von JEDEC veröffentlichten Standard erfüllen, wie JESD79F für DDR-SDRAM, JESD79-2F für DDR2-SDRAM, JESD79-3F für DDR3-SDRAM, JESD79-4A für DDR4-SDRAM, JESD209 für Niedrigleistungs-DDR (LPDDR), JESD209-2 für LPDDR2, JESD209-3 für LPDDR3 und JESD209-4 für LPDDR4 (diese Standards sind auf www.jedec.org verfügbar). Derartige Standards (und ähnliche Standards) können als DDR-basierte Standards bezeichnet werden und Kommunikationsschnittstellen der Speichervorrichtungen, die derartige Standards implementieren, können als DDR-basierte Schnittstellen bezeichnet werden.
  • In einer Ausführungsform ist die Arbeitsspeichervorrichtung eine blockadressierbare Arbeitsspeichervorrichtung, wie diejenigen, die auf NAND- oder NOR-Technologien basieren. Eine Arbeitsspeichervorrichtung kann auch nichtflüchtige Vorrichtungen zukünftiger Generationen enthalten, wie einen Intel 3D XPoint™-Arbeitsspeicher oder andere Byte-adressierbare, in situ beschreibbare nichtflüchtige Arbeitsspeichervorrichtungen. In einer Ausführungsform kann die Arbeitsspeichervorrichtung Arbeitsspeichervorrichtungen sein oder solche enthalten, die Chalkogenglas, NAND-Flashspeicher mit mehreren Schwellenpegeln, NOR-Flashspeicher, Phasenwechselspeicher (PCM) mit einem oder mehreren Pegeln, einen resistiven Arbeitsspeicher, Nanodrahtpeicher, ferroelektrischen Transistorspeicher mit wahlfreiem Zugriff (FeTRAM), antiferroelektrischen Arbeitsspeicher, magnetoresistiven Arbeitsspeicher mit wahlfreiem Zugriff (MRAM), der Memristor-Technologie einbindet, resistiven Arbeitsspeicher auf Metalloxidbasis, Sauerstofleerstellenbasis und Leiterbrückenarbeitsspeicher mit wahlfreiem Zugriff (CB-RAM) oder Spin-Transfer-Torque(STT)-MRAM, eine Vorrichtung auf Spintronik-Magnetübergang-Arbeitsspeicherbasis, eine Vorrichtung auf Magnettunnelübergangsbasis (MTJ-Basis), eine Vorrichtung auf Domänenwand(DW)- und SOT(Spin-Orbit-Transfer)-Basis, eine Arbeitsspeichervorrichtung auf Thyristorbasis oder eine Kombination von beliebigen der obigen oder einen anderen Arbeitsspeicher einsetzen. Die Arbeitsspeichervorrichtung kann den Chip selbst und/oder ein verpacktes Arbeitsspeicherprodukt bezeichnen. In einigen Ausführungsformen kann die Arbeitsspeichervorrichtung eine transistorlose stapelbare Koppelpunkt-Architektur umfassen, in der Arbeitsspeicherzellen am Schnittpunkt von Wortleitungen und Bitleitungen sitzen und individuell adressierbar sind und in der eine Bitspeicherung auf einer Änderung im Bulkwiderstand basiert.
  • Nun auf 8 Bezug nehmend, kann der Einschub 400 als ein Recheneinschub 800 ausgeführt sein. Der Recheneinschub 800 ist optimiert oder anderweitig ausgelegt, um Rechenaufgaben durchzuführen. Natürlich, wie oben besprochen, kann sich der Recheneinschub 800 auf andere Einschübe, wie Beschleunigungseinschübe und/oder Speichereinschübe, stützen, um derartige Rechenaufgaben durchzuführen. Der Recheneinschub 800 enthält verschiedene physische Ressourcen (z. B. elektrische Komponenten), die den physischen Ressourcen des Einschubs 400 ähnlich sind, die in 8 unter Verwendung der gleichen Bezugsziffern identifiziert wurden. Die oben in Bezug auf 6 und 7 bereitgestellte Beschreibung derartiger Komponenten gilt für die entsprechenden Komponenten des Recheneinschubs 800 und wird hierin aus Gründen der Klarheit der Beschreibung des Recheneinschubs 800 nicht beschrieben.
  • Im illustrativen Recheneinschub 800 sind die physischen Ressourcen 620 als Prozessoren 820 ausgebildet. Obwohl in 8 nur zwei Prozessoren 820 gezeigt sind, sollte klar sein, dass der Recheneinschub 800 in anderen Ausführungsformen zusätzliche Prozessoren 820 enthalten kann. Illustrativ sind die Prozessoren 820 als Hochleistungsprozessoren 820 ausgebildet und können ausgelegt sein, mit einer relativ hohen Nennleistung zu arbeiten. Obwohl die Prozessoren 820 beim Arbeiten mit größeren Nennleistungen als übliche Prozessoren (die mit ungefähr 155-230 W arbeiten) zusätzliche Wärme generieren, ermöglichen die oben besprochenen verbesserten thermalen Kühlungsmerkmale des gehäuselosen Leiterplattensubstrats 602 den Betrieb bei höherer Leistung. In der illustrativen Ausführungsform sind die Prozessoren 820 beispielsweise ausgelegt, mit einer Nennleistung von mindestens 250 W zu arbeiten. In einigen Ausführungsformen können die Prozessoren 820 ausgelegt sein, mit einer Nennleistung von mindestens 350 W zu arbeiten.
  • In einigen Ausführungsformen kann der Recheneinschub 800 auch eine Prozessor-zu-Prozessor-Verbindung 842 enthalten. Ähnlich wie die oben besprochene Ressource-zu-Ressource-Verbindung 624 des Einschubs 400 kann die Prozessor-zu-Prozessor-Verbindung 842 als ein beliebiger Typ von Kommunikationsverbindung ausgebildet sein, die fähig ist, Kommunikationen der Prozessor-zu-Prozessor-Verbindung 842 zu ermöglichen. In der illustrativen Ausführungsform ist die Prozessor-zu-Prozessor-Verbindung 842 als eine Hochgeschwindigkeits-Punkt-zu-Punkt-Verbindung ausgebildet (z. B. schneller als das E/A-Teilsystem 622). Die Prozessor-zu-Prozessor-Verbindung 842 kann zum Beispiel als QuickPath Interconnect (QPI), UltraPath Interconnect (UPI) oder eine andere Hochgeschwindigkeits-Punkt-zu-Punkt-Verbindung ausgebildet sein, die für Prozessor-zu-Prozessor-Kommunikationen zweckbestimmt ist.
  • Der Recheneinschub 800 enthält auch einen Kommunikationsschaltkreis 830. Der illustrative Kommunikationsschaltkreis 830 enthält eine Netzwerkschnittstellensteuerung (NIC) 832, die auch als eine Host-Fabric-Schnittstelle (HFI) bezeichnet werden kann. Die NIC 832 kann als ein beliebiger Typ von integriertem Schaltkreis, von diskreten Schaltkreisen, Steuerungschips, Chipsätzen, Zusatzplatinen, Tochterkarten, Netzwerkschnittstellenkarten, anderen Vorrichtungen, die vom Recheneinschub 800 verwendet werden können, um an eine andere Rechenvorrichtung (z. B. an andere Einschübe 400) anzubinden, ausgebildet sein oder einen derartigen Typ anderweitig enthalten. In einigen Ausführungsformen kann die NIC 832 als ein Teil eines Ein-Chip-Systems (SoC) ausgebildet sein, das einen oder mehrere Prozessoren enthält, oder auf einem Mehrchippaket enthalten sein, das auch einen oder mehrere Prozessoren enthält. In einigen Ausführungsformen kann die NIC 832 einen lokalen Prozessor (nicht gezeigt) und/oder einen lokalen Arbeitsspeicher (nicht gezeigt) enthalten, die beide lokal zur NIC 832 sind. In derartigen Ausführungsformen kann der lokale Prozessor der NIC 832 fähig sein, eine oder mehrere der Funktionen des Prozessors 820 durchzuführen. Zusätzlich oder alternativ kann der lokale Arbeitsspeicher der NIC 832 in derartigen Ausführungsformen in eine oder mehrere Komponenten des Recheneinschubs auf Platinenebene, Sockelebene, Chipebene und/oder anderen Ebenen integriert sein.
  • Der Kommunikationsschaltkreis 830 ist kommunikativ an einen optischen Datenanschluss 834 gekoppelt. Der optische Datenanschluss 834 ist ausgelegt, in einen entsprechenden optischen Datenanschluss des Racks 240 einzugreifen, wenn der Recheneinschub 800 im Rack 240 montiert ist. Illustrativ enthält der optische Datenanschluss 834 eine Vielzahl von optischen Leitern, die von einer Gegenfläche des optischen Datenanschlusses 834 zu einem optischen Sende-Empfänger 836 führen. Der optische Sende-Empfänger 836 ist ausgelegt, eingehende optische Signale vom rackseitigen optischen Datenanschluss in elektrische Signale umzuwandeln und elektrische Signale in ausgehende optische Signale an den rackseitigen optischen Datenanschluss umzuwandeln. Obwohl der optische Sende-Empfänger 836 in der illustrativen Ausführungsform als einen Teil des optischen Datenanschlusses 834 bildend gezeigt ist, kann er in anderen Ausführungsformen einen Abschnitt des Kommunikationsschaltkreises 830 bilden.
  • In einigen Ausführungsformen kann der Recheneinschub 800 auch einen Erweiterungsanschluss 840 enthalten. In derartigen Ausführungsformen ist der Erweiterungsanschluss 840 ausgelegt, in einen entsprechenden Anschluss eines gehäuselosen Erweiterungs-Leiterplattensubstrats einzugreifen, um dem Recheneinschub 800 zusätzliche physische Ressourcen bereitzustellen. Die zusätzlichen physischen Ressourcen können zum Beispiel von den Prozessoren 820 während des Betriebs des Recheneinschubs 800 verwendet werden. Das gehäuselose Erweiterungs-Leiterplattensubstrat kann im Wesentlichen dem oben besprochenen gehäuselosen Leiterplattensubstrat 602 ähnlich sein und kann verschiedene darauf montierte elektrische Komponenten enthalten. Die bestimmten elektrischen Komponenten, die am gehäuselosen Erweiterungs-Leiterplattensubstrat montiert sind, können von der beabsichtigten Funktionalität des gehäuselosen Erweiterungs-Leiterplattensubstrats abhängen. Das gehäuselose Erweiterungs-Leiterplattensubstrat kann zusätzliche Rechenressourcen, Arbeitsspeicherressourcen und/oder Speicherressourcen bereitstellen. Als solche können die zusätzlichen physischen Ressourcen des gehäuselosen Erweiterungs-Leiterplattensubstrats Prozessoren, Arbeitsspeichervorrichtungen, Speichervorrichtungen und/oder Beschleunigerschaltkreise enthalten, sind jedoch nicht darauf beschränkt, einschließlich, beispielsweise, feldprogrammierbare Gatearrays (FPGA), anwendungsspezifische integrierte Schaltungen (ASICs), Sicherheits-Coprozessoren, Grafikverarbeitungseinheiten (GPUs), Schaltkreise für maschinelles Lernen oder andere spezialisierte Prozessoren, Steuerungen, Vorrichtungen und/oder Schaltkreise.
  • Nun auf 9 Bezug nehmend, wird eine illustrative Ausführungsform des Recheneinschubs 800 gezeigt. Wie gezeigt sind die Prozessoren 820, der Kommunikationsschaltkreis 830 und der optische Datenanschluss 834 an der Oberseite 650 des gehäuselosen Leiterplattensubstrats 602 montiert. Eine beliebige geeignete Befestigungs- oder Montagetechnologie kann verwendet werden, um die physischen Ressourcen des Recheneinschubs 800 am gehäuselosen Leiterplattensubstrat 602 zu montieren. Die verschiedenen physischen Ressourcen können zum Beispiel in entsprechenden Sockeln (z. B. einem Prozessorsockel), Halterungen oder Klammern montiert sein. In einigen Fällen können einige der elektrischen Komponenten direkt durch Löten oder ähnliche Techniken am gehäuselosen Leiterplattensubstrat 602 montiert sein.
  • Wie oben besprochen sind die einzelnen Prozessoren 820 und der Kommunikationsschaltkreis 830 auf der Oberseite 650 des gehäuselosen Leiterplattensubstrats 602 montiert, sodass keine zwei Wärme erzeugenden, elektrischen Komponenten einander begleiten. In der illustrativen Ausführungsform sind die Prozessoren 820 und der Kommunikationsschaltkreis 830 an entsprechenden Positionen auf der Oberseite 650 des gehäuselosen Leiterplattensubstrats 602 montiert, sodass sich keine zwei der physischen Ressourcen linear in einer Reihe mit anderen entlang der Richtung des Luftstrompfads 608 befinden. Es sollte klar sein, dass, obwohl sich der optische Datenanschluss 834 in einer Reihe mit dem Kommunikationsschaltkreis 830 befindet, der optische Datenanschluss 834 während des Betriebs keine oder nominale Wärme erzeugt.
  • Die Arbeitsspeichervorrichtungen 720 des Recheneinschubs 800 sind auf der Unterseite 750 des gehäuselosen Leiterplattensubstrats 602 montiert, wie oben in Bezug auf den Einschub 400 besprochen. Obwohl an der Unterseite 750 montiert, sind die Arbeitsspeichervorrichtungen 720 kommunikativ über das E/A-Subsystem 622 an die Prozessoren 820 gekoppelt, die sich auf der Oberseite 650 befinden. Da das gehäuselose Leiterplattensubstrat 602 als eine doppelseitige Leiterplatte ausgebildet ist, können die Arbeitsspeichervorrichtungen 720 und die Prozessoren 820 kommunikativ durch eine oder mehrere Durchkontaktierungen, Anschlüsse oder andere Mechanismen gekoppelt sein, die durch das gehäuselose Leiterplattensubstrat 602 verlaufen. Jeder Prozessor 820 kann natürlich in einigen Ausführungsformen kommunikativ an eine andere Gruppe aus einer oder mehreren Arbeitsspeichervorrichtungen 720 gekoppelt sein. Alternativ kann jeder Prozessor 820 in anderen Ausführungsformen kommunikativ an jede Arbeitsspeichervorrichtung 720 gekoppelt sein. In einigen Ausführungsformen können die Arbeitsspeichervorrichtungen 720 auf einer oder mehreren Arbeitsspeicherzwischenschichten auf der Unterseite des gehäuselosen Leiterplattensubstrats 602 montiert sein können und mit einem entsprechenden Prozessor 820 über eine Kugelgitteranordnung verbunden sein.
  • Jeder der Prozessoren 820 enthält einen daran gesicherten Kühlkörper 850. Aufgrund der Montage der Arbeitsspeichervorrichtungen 720 auf der Unterseite 750 des gehäuselosen Leiterplattensubstrats 602 (sowie der vertikalen Beabstandung der Einschübe 400 im entsprechenden Rack 240) enthält die Oberseite 650 des gehäuselosen Leiterplattensubstrats 602 eine zusätzliche „freie“ Fläche oder einen zusätzlichen „freien“ Raum, der die Verwendung von Kühlkörpern 850 mit einer größeren Größe relativ zu herkömmlichen, in typischen Servern verwendeten Kühlkörpern ermöglicht. Aufgrund der verbesserten thermalen Kühlungsmerkmale des gehäuselosen Leiterplattensubstrats 602 enthält darüber hinaus keiner der Kühlkörper 850 daran befestigte Kühlventilatoren. Das heißt, jeder der Kühlkörper 850 ist als ein ventilatorloser Kühlkörper ausgebildet.
  • Nun auf 10 Bezug nehmend, kann der Einschub 400 als ein Beschleunigungseinschub 1000 ausgeführt sein. Der Beschleunigungseinschub 1000 ist optimiert oder anderweitig ausgelegt, um spezialisierte Rechenaufgaben durchzuführen, wie maschinelles Lernen, Verschlüsselung, Hashing oder eine andere rechenintensive Aufgabe. In einigen Ausführungsformen kann ein Recheneinschub 800 zum Beispiel während des Betriebs Aufgaben an den Beschleunigungseinschub 1000 auslagern. Der Beschleunigungseinschub 1000 enthält verschiedene Komponenten, die den Komponenten des Einschubs 400 und/oder des Recheneinschubs 800 ähnlich sind, die in 10 unter Verwendung der gleichen Bezugsziffern identifiziert wurden. Die oben in Bezug auf 6, 7 und 8 bereitgestellte Beschreibung derartiger Komponenten gilt für die entsprechenden Komponenten des Beschleunigungseinschubs 1000 und wird hierin aus Gründen der Klarheit der Beschreibung des Beschleunigungseinschubs 1000 nicht beschrieben.
  • Im illustrativen Beschleunigungseinschub 1000 sind die physischen Ressourcen 620 als Beschleunigungsschaltkreise 1020 ausgebildet. Obwohl in 10 nur zwei Beschleunigungsschaltkreise 1020 gezeigt sind, sollte klar sein, dass der Beschleunigungseinschub 1000 in anderen Ausführungsformen zusätzliche Beschleunigungsschaltkreise 1020 enthalten kann. Wie beispielsweise in 11 gezeigt, kann der Beschleunigungseinschub 1000 in einigen Ausführungsformen vier Beschleunigungsschaltkreise 1020 enthalten. Die Beschleunigungsschaltkreise 1020 können als ein beliebiger Typ von Prozessor, Coprozessor, Rechenschaltkreis oder eine andere Vorrichtung ausgebildet sein, die Rechen- oder Verarbeitungsvorgänge durchführen kann. Die Beschleunigungsschaltkreise 1020 können zum Beispiel als feldprogrammierbare Gatearrays (FPGA), anwendungsspezifische integrierte Schaltkreise (ASICs), Sicherheits-Coprozessoren, Grafikverarbeitungseinheiten (GPUs), Schaltkreise für maschinelles Lernen oder andere spezialisierte Prozessoren, Steuerungen, Vorrichtungen und/oder Schaltkreise ausgebildet sein.
  • In einigen Ausführungsformen kann der Beschleunigungseinschub 1000 auch eine Beschleuniger-zu-Beschleuniger-Verbindung 1042 enthalten. Ähnlich wie die oben besprochene Ressource-zu-Ressource-Verbindung 624 des Einschubs 600 kann die Beschleuniger-zu-Beschleuniger-Verbindung 1042 als ein beliebiger Typ von Kommunikationsverbindung ausgebildet sein, die fähig ist, Beschleuniger-zu-Beschleuniger-Kommunikationen zu ermöglichen. In der illustrativen Ausführungsform ist die Beschleuniger-zu-Beschleuniger-Verbindung 1042 als eine Hochgeschwindigkeits-Prozessor-zu-Prozessor-Verbindung ausgebildet (z. B. schneller als das E/A-Teilsystem 622). Die Beschleuniger-zu-Beschleuniger-Verbindung 1042 kann zum Beispiel als QuickPath Interconnect (QPI), UltraPath Interconnect (UPI) oder eine andere Hochgeschwindigkeits-Punkt-zu-Punkt-Verbindung ausgebildet sein, die für Prozessor-zu-Prozessor-Kommunikationen zweckbestimmt ist. In einigen Ausführungsformen können die Beschleunigungsschaltkreise 1020 mit einem primären Beschleunigungsschaltkreis 1020, der über das E/A-Subsystem 622 mit der NIC 832 und dem Arbeitsspeicher 720 verbunden ist, und einem sekundären Beschleunigungsschaltkreis 1020 in Reihe geschaltet sein, der über einen primären Beschleunigungsschaltkreis 1020 mit der NIC 832 und dem Arbeitsspeicher 720 verbunden ist.
  • Nun auf 11 Bezug nehmend, wird eine illustrative Ausführungsform des Beschleunigungseinschubs 1000 gezeigt. Wie oben besprochen, sind die Beschleunigungsschaltkreise 1020, der Kommunikationsschaltkreis 830 und der optische Datenanschluss 834 an der Oberseite 650 des gehäuselosen Leiterplattensubstrats 602 montiert. Wiederum sind die einzelnen Beschleunigungsschaltkreise 1020 und der Kommunikationsschaltkreis 830 auf der Oberseite 650 des gehäuselosen Leiterplattensubstrats 602 montiert, sodass keine zwei Wärme erzeugenden, elektrischen Komponenten einander begleiten, wie oben besprochen. Die Arbeitsspeichervorrichtungen 720 des Beschleunigungseinschubs 1000 sind auf der Unterseite 750 des gehäuselosen Leiterplattensubstrats 602 montiert, wie oben in Bezug auf den Einschub 600 besprochen. Obwohl an der Unterseite 750 montiert, sind die Arbeitsspeichervorrichtungen 720 kommunikativ über das E/A-Subsystem 622 (z. B. über Durchkontaktierungen) an die Beschleunigungsschaltkreise 1020 gekoppelt, die sich auf der Oberseite 650 befinden. Ferner kann jeder der Beschleunigungsschaltkreise 1020 einen Kühlkörper 1070 enthalten, der größer als ein herkömmlicher, in einem Server verwendeter Kühlkörper ist. Wie oben in Bezug auf die Kühlkörper 870 besprochen, können die Kühlkörper 1070 aufgrund der „freien“ Fläche, die dadurch bereitgestellt wird, dass sich die Arbeitsspeichervorrichtungen 750 auf der Unterseite 750 des gehäuselosen Leiterplattensubstrats 602 anstatt auf der Oberseite 650 befinden, größer als herkömmliche Kühlkörper sein.
  • Nun auf 12 Bezug nehmend, kann der Einschub 400 als ein Speichereinschub 1200 ausgeführt sein. Der Speichereinschub 1200 ist optimiert oder anderweitig ausgelegt, Daten in einem zum Speichereinschub 1200 lokalen Datenspeicher 1250 zu speichern. Beispielsweise kann ein Recheneinschub 800 oder ein Beschleunigungseinschub 1000 während des Betriebs Daten im Datenspeicher 1250 des Speichereinschubs 1200 speichern und aus diesem abrufen. Der Speichereinschub 1200 enthält verschiedene Komponenten, die den Komponenten des Einschubs 400 und/oder des Recheneinschubs 800 ähnlich sind, die in 12 unter Verwendung der gleichen Bezugsziffern identifiziert wurden. Die oben in Bezug auf 6, 7 und 8 bereitgestellte Beschreibung derartiger Komponenten gilt für die entsprechenden Komponenten des Speichereinschubs 1200 und wird hierin aus Gründen der Klarheit der Beschreibung des Speichereinschubs 1200 nicht beschrieben.
  • Im illustrativen Speichereinschub 1200 sind die physischen Ressourcen 620 als Speichersteuerungen 1220 ausgebildet. Obwohl in 12 nur zwei Speichersteuerungen 1220 gezeigt sind, sollte klar sein, dass der Speichereinschub 1200 in anderen Ausführungsformen zusätzliche Speichersteuerungen 1220 enthalten kann. Die Speichersteuerungen 1220 können als ein beliebiger Typ von Prozessor, Steuerung oder Steuerschaltkreis ausgebildet sein, der bzw. die fähig ist, die Speicherung und das Abrufen von Daten in den Datenspeicher 1250 auf Grundlage von über den Kommunikationsschaltkreis 830 empfangenen Anforderungen zu steuern. In der illustrativen Ausführungsform sind die Speichersteuerungen 1220 als Prozessoren oder Steuerungen mit relativ niedriger Leistung ausgebildet. In einigen Ausführungsformen können die Speichersteuerungen 1220 zum Beispiel ausgelegt sein, mit einer Nennleistung von ungefähr 75 Watt zu arbeiten.
  • In einigen Ausführungsformen kann der Speichereinschub 1200 auch eine Steuerung-zu-Steuerung-Verbindung 1242 enthalten. Ähnlich wie die oben besprochene Ressource-zu-Ressource-Verbindung 624 des Einschubs 400 kann die Steuerung-zu-Steuerung-Verbindung 1242 als ein beliebiger Typ von Kommunikationsverbindung ausgebildet sein, die fähig ist, Steuerung-zu-Steuerung-Kommunikationen zu ermöglichen. In der illustrativen Ausführungsform ist die Steuerung-zu-Steuerung-Verbindung 1242 als eine Hochgeschwindigkeits-Prozessor-zu-Prozessor-Verbindung ausgebildet (z. B. schneller als das E/A-Teilsystem 622). Die Steuerung-zu-Steuerung-Verbindung 1242 kann zum Beispiel als QuickPath Interconnect (QPI), UltraPath Interconnect (UPI) oder eine andere Hochgeschwindigkeits-Punkt-zu-Punkt-Verbindung ausgebildet sein, die für Prozessor-zu-Prozessor-Kommunikationen zweckbestimmt ist.
  • Nun auf 13 Bezug nehmend, wird eine illustrative Ausführungsform des Speichereinschubs 1200 gezeigt. In der illustrativen Ausführungsform ist der Datenspeicher 1250 als eine Speichereinhausung 1252, die ausgelegt ist, eine oder mehrere Festkörperlaufwerke (SSDs) 1254 aufzunehmen, ausgebildet oder enthält eine solche Speichereinhausung. Hierzu enthält die Speichereinhausung 1252 eine Anzahl an Montageschlitzen 1256, von denen jeder ausgelegt ist, ein entsprechendes Festkörperlaufwerk 1254 aufzunehmen. Jeder der Montageschlitze 1256 enthält eine Anzahl an Laufwerksführungen 1258, die zusammenarbeiten, um eine Zugangsöffnung 1260 des entsprechenden Montageschlitzes 1256 zu definieren. Die Speichereinhausung 1252 ist so am gehäuselosen Leiterplattensubstrat 602 gesichert, dass die Zugangsöffnungen vom gehäuselosen Leiterplattensubstrat 602 abgewandt sind (d. h., zur Vorderseite dieses zeigen). Als solche sind die Festkörperlaufwerke 1254 zugänglich, während der Speichereinschub 1200 in einem entsprechenden Rack 204 montiert ist. Ein Festkörperlaufwerk 1254 kann beispielsweise aus einem Rack 240 (z. B. über einen Roboter) ausgelagert werden, während der Speichereinschub 1200 im entsprechenden Rack 240 montiert bleibt.
  • Die Speichereinhausung 1252 enthält veranschaulichend sechzehn Montageschlitze 1256 und kann sechzehn Festkörperlaufwerke 1254 montieren und unterbringen. Natürlich kann die Speichereinhausung 1252 in anderen Ausführungsformen ausgelegt sein, zusätzliche oder weniger Festkörperlaufwerke 1254 unterzubringen. Zusätzlich sind die Festkörpertreiber in der illustrativen Ausführungsform vertikal in der Speichereinhausung 1252 montiert, aber können in anderen Ausführungsformen in einer unterschiedlichen Ausrichtung in der Speichereinhausung 1252 montiert sein. Jedes Festkörperlaufwerk 1254 kann als ein beliebiger Typ von Datenspeichervorrichtung ausgebildet sein, der Daten langfristig speichern kann. Hierzu können die Festkörperlaufwerke 1254 die oben besprochenen flüchtigen und nichtflüchtigen Arbeitsspeichervorrichtungen enthalten.
  • Wie in 13 gezeigt, sind die Speichersteuerungen 1220, der Kommunikationsschaltkreis 830 und der optische Datenanschluss 834 veranschaulichend an der Oberseite 650 des gehäuselosen Leiterplattensubstrats 602 montiert. Wiederum kann wie oben besprochen eine beliebige geeignete Befestigungs- oder Montagetechnologie verwendet werden, um die elektrischen Komponenten des Speichereinschubs 1200 am gehäuselosen Leiterplattensubstrat 602 zu montieren, einschließlich beispielsweise Sockel (z. B. Prozessorsockel), Halterungen, Klammern, gelötete Verbindungen und/oder andere Montage- oder Sicherungstechniken.
  • Wie oben besprochen sind die einzelnen Speichersteuerungen 1220 und der Kommunikationsschaltkreis 830 auf der Oberseite 650 des gehäuselosen Leiterplattensubstrats 602 montiert, sodass keine zwei Wärme erzeugenden, elektrischen Komponenten einander begleiten. Die Speichersteuerungen 1220 und der Kommunikationsschaltkreis 830 sind zum Beispiel an entsprechenden Positionen auf der Oberseite 650 des gehäuselosen Leiterplattensubstrats 602 montiert, sodass sich keine zwei dieser elektrischen Komponenten linear in einer Reihe zueinander entlang der Richtung des Luftstrompfads 608 befinden.
  • Die Arbeitsspeichervorrichtungen 720 des Speichereinschubs 1200 sind auf der Unterseite 750 des gehäuselosen Leiterplattensubstrats 602 montiert, wie oben in Bezug auf den Einschub 400 besprochen. Obwohl an der Unterseite 750 montiert, sind die Arbeitsspeichervorrichtungen 720 kommunikativ über das E/A-Subsystem 622 an die Speichersteuerungen 1220 gekoppelt, die sich auf der Oberseite 650 befinden. Wiederum, da das gehäuselose Leiterplattensubstrat 602 als eine doppelseitige Leiterplatte ausgebildet ist, können die Arbeitsspeichervorrichtungen 720 und die Speichersteuerungen 1220 kommunikativ durch eine oder mehrere Durchkontaktierungen, Anschlüsse oder andere Mechanismen gekoppelt sein, die durch das gehäuselose Leiterplattensubstrat 602 verlaufen. Jede der Speichersteuerungen 1220 enthält einen daran gesicherten Kühlkörper 1270. Wie oben besprochen, aufgrund der verbesserten thermalen Kühlungsmerkmale des gehäuselosen Leiterplattensubstrats 602 des Speichereinschubs 1200, enthält keiner der Kühlkörper 1270 daran befestigte Kühlventilatoren. Das heißt, jeder der Kühlkörper 1270 ist als ein ventilatorloser Kühlkörper ausgebildet.
  • Nun auf 14 Bezug nehmend, kann der Einschub 400 als ein Arbeitsspeichereinschub 1400 ausgeführt sein. Der Speichereinschub 1400 ist optimiert oder anderweitig ausgelegt, anderen Einschüben 400 (z. B. den Recheneinschüben 800, den Beschleunigungseinschüben 1000 usw.) Zugriff auf einen zum Arbeitsspeichereinschub 1200 lokalen Arbeitsspeicherbestand (z. B. in zwei oder mehr Gruppen 1430, 1432 von Arbeitsspeichervorrichtungen 720) bereitzustellen. Während des Betriebs kann ein Recheneinschub 800 oder ein Beschleunigungseinschub 1000 entfernt unter Verwendung eines logischen Adressraums, der auf physische Adressen in den Arbeitsspeichergruppen 1430, 1432 abbildet, in eine oder mehrere der Arbeitsspeichergruppen 1430, 1432 des Arbeitsspeichereinschubs 1200 schreiben und/oder aus diesen lesen. Der Arbeitsspeichereinschub 1400 enthält verschiedene Komponenten, die den Komponenten des Einschubs 400 und/oder des Recheneinschubs 800 ähnlich sind, die in 14 unter Verwendung der gleichen Bezugsziffern identifiziert wurden. Die oben in Bezug auf 6, 7 und 8 bereitgestellte Beschreibung derartiger Komponenten gilt für die entsprechenden Komponenten des Arbeitsspeichereinschubs 1400 und wird hierin aus Gründen der Klarheit der Beschreibung des Arbeitsspeichereinschubs 1400 nicht beschrieben.
  • Im illustrativen Arbeitsspeichereinschub 1400 sind die physischen Ressourcen 620 als Arbeitsspeichersteuerungen 1420 ausgebildet. Obwohl in 14 nur zwei Arbeitsspeichersteuerungen 1420 gezeigt sind, sollte klar sein, dass der Arbeitsspeichereinschub 1400 in anderen Ausführungsformen zusätzliche Arbeitsspeichersteuerungen 1420 enthalten kann. Die Arbeitsspeichersteuerungen 1420 können als ein beliebiger Typ von Prozessor, Steuerung oder Steuerschaltkreis ausgebildet sein, der bzw. die fähig ist, das Schreiben und Lesen von Daten in die Arbeitsspeichergruppen 1430, 1432 auf Grundlage von über den Kommunikationsschaltkreis 830 empfangenen Anforderungen zu steuern. In der illustrativen Ausführungsform ist jede Speichersteuerung 1220 mit einer entsprechenden Arbeitsspeichergruppe 1430, 1432 verbunden, um in die Arbeitsspeichervorrichtungen 720 innerhalb der entsprechenden Arbeitsspeichergruppe 1430, 1432 zu schreiben und aus diesen zu lesen und alle Berechtigungen (z. B. Lesen, Schreiben usw.) geltend zu machen, die mit dem Einschub 400 verknüpft sind, der eine Anforderung an den Arbeitsspeichereinschub 1400 gesendet hat, einen Arbeitsspeicherzugriffvorgang (z. B. Lesen oder Schreiben) durchzuführen.
  • In einigen Ausführungsformen kann der Arbeitsspeichereinschub 1400 auch eine Steuerung-zu-Steuerung-Verbindung 1442 enthalten. Ähnlich wie die oben besprochene Ressource-zu-Ressource-Verbindung 624 des Einschubs 400 kann die Steuerung-zu-Steuerung-Verbindung 1442 als ein beliebiger Typ von Kommunikationsverbindung ausgebildet sein, die fähig ist, Steuerung-zu-Steuerung-Kommunikationen zu ermöglichen. In der illustrativen Ausführungsform ist die Steuerung-zu-Steuerung-Verbindung 1442 als eine Hochgeschwindigkeits-Prozessor-zu-Prozessor-Verbindung ausgebildet (z. B. schneller als das E/A-Teilsystem 622). Die Steuerung-zu-Steuerung-Verbindung 1442 kann zum Beispiel als QuickPath Interconnect (QPI), UltraPath Interconnect (UPI) oder eine andere Hochgeschwindigkeits-Punkt-zu-Punkt-Verbindung ausgebildet sein, die für Prozessor-zu-Prozessor-Kommunikationen zweckbestimmt ist. Als solche kann eine Arbeitsspeichersteuerung 1420 in einigen Ausführungsformen über die Steuerung-zu-Steuerung-Verbindung 1442 auf Arbeitsspeicher zugreifen, der sich in der Arbeitsspeichergruppe 1432 befindet, die mit einer anderen Arbeitsspeichersteuerung 1420 verknüpft ist. In einigen Ausführungsformen besteht eine skalierbare Arbeitsspeichersteuerung aus mehreren kleineren Arbeitsspeichersteuerungen, die hierin als „Chiplet“ bezeichnet werden, auf einem Arbeitsspeichereinschub (z. B. dem Arbeitsspeichereinschub 1400). Die Chiplets können miteinander verbunden sein (z. B. unter Verwendung von EMIB (Embedded Multi-Die Interconnect Bridge)). Die kombinierte Chiplet-Arbeitsspeichersteuerung kann auf eine relativ große Anzahl an Arbeitsspeichersteuerungen und E/A-Anschlüssen hochskalieren (z. B. auf bis zu 16 Arbeitsspeicherkanäle). In einigen Ausführungsformen können die Arbeitsspeichersteuerungen 1420 eine Arbeitsspeicherverschränkung implementieren (z. B. ist eine Arbeitsspeicheradresse auf die Arbeitsspeichergruppe 1430 abgebildet, die nächste Arbeitsspeicheradresse ist auf die Arbeitsspeichergruppe 1432 abgebildet und die dritte Adresse ist auf die Arbeitsspeichergruppe 1430 abgebildet usw.). Die Verschränkung kann innerhalb der Arbeitsspeichersteuerung 1420 verwaltet oder von CPU-Sockeln (z. B. des Recheneinschubs 800) über Netzwerkverbindungen mit den Arbeitsspeichergruppen 1430, 1432 hinweg verwaltet werden und kann die mit dem Durchführen von Arbeitsspeicherzugriffvorgängen assoziierte Latenzzeit im Vergleich zum Zugreifen auf fortlaufende Arbeitsspeicheradressen von der gleichen Arbeitsspeichervorrichtung verbessern.
  • Ferner kann der Arbeitsspeichereinschub 1400 in einigen Ausführungsformen unter Verwendung des Wellenleiteranschlusses 1480 über einen Wellenleiter mit einem oder mehreren anderen Einschüben 400 (z. B. im gleichen Rack 240 oder einem benachbarten Rack 240) verbunden sein. In der illustrativen Ausführungsform sind die Wellenleiter 64-Millimeter-Wellenleiter, die 16 Rx-Leitungen (d. h. Empfangsleitungen) und 16 Rt-Leitungen (d. h. Sendeleitungen) bereitstellen. Jede Leitung ist in der illustrativen Ausführungsform entweder 16 GHz oder 32 GHz. In anderen Ausführungsformen können die Frequenzen unterschiedlich sein. Die Verwendung eines Wellenleiters kann einen Zugriff mit hohem Durchsatz auf den Arbeitsspeicherbestand (z. B. die Arbeitsspeichergruppen 1430, 1432) auf einem anderen Einschub (z. B. einen Einschub 400 im gleichen Rack 240 wie der Arbeitsspeichereinschub 1400 oder einem diesem benachbarten Rack 240) bieten, ohne die Belastung des optischen Datenanschlusses 834 zu erhöhen.
  • Nun auf 15 Bezug nehmend kann ein System zum Ausführen einer oder mehrerer Arbeitslasten (z. B. Anwendungen) in Übereinstimmung mit dem Rechenzentrum 100 implementiert werden. In der illustrativen Ausführungsform enthält das System 1510 einen Koordinationsserver 1520, der als ein verwalteter Knoten ausgebildet sein kann, der eine Rechenvorrichtung (z. B. einen Recheneinschub 800) umfasst, die Verwaltungssoftware (z. B. eine Cloud-Betriebsumgebung wie OpenStack) ausführt, die kommunikativ an mehrere Einschübe 400 gekoppelt ist, die eine große Anzahl an Recheneinschüben 1530 (die z. B. jeweils dem Recheneinschub 800 ähnlich sind), Arbeitsspeichereinschüben 1540 (die z. B. jeweils dem Arbeitsspeichereinschub 1400 ähnlich sind), Beschleunigungseinschüben 1550 (die z. B. jeweils dem Beschleunigungseinschub 1000 ähnlich sind) und Speichereinschüben 1560 (die z. B. jeweils dem Speichereinschub 1200 ähnlich sind) enthalten. Ein oder mehrere der Einschübe 1530, 1540, 1550, 1560 können in einen verwalteten Knoten 1570, zum Beispiel durch den Koordinationsserver 1520, gruppiert sein, um gemeinsam eine Arbeitslast (z. B. eine Anwendung 1232, die in einer virtuellen Maschine oder einem Container ausgeführt wird) auszuführen. Der verwaltete Knoten 1570 kann als eine Anordnung physischer Ressourcen 620, wie Prozessoren 820, Arbeitsspeicherressourcen 720, Beschleunigungsschaltkreise 1020 oder Datenspeicher 1250 vom gleichen oder von anderen Einschüben 400 ausgebildet sein. Ferner kann der verwaltete Knoten vom Koordinationsserver 1520 zu dem Zeitpunkt, zu dem eine Arbeitslast dem verwalteten Knoten zuzuweisen ist, oder zu einem anderen Zeitpunkt eingerichtet, definiert oder „hochgefahren“ werden und kann unabhängig davon existieren, ob derzeit dem verwalteten Knoten irgendwelche Arbeitslasten zugewiesen sind. In der illustrativen Ausführungsform kann der Koordinationsserver 1520 den Einschüben 400 physische Ressourcen 620 selektiv zuordnen und/oder deren Zuordnung aufheben und/oder dem verwalteten Knoten 1570 einen oder mehrere Einschübe 400 als eine Funktion von Dienstqualitätszielen (QoS-Zielen) (z. B. Leistungszielen, die mit einem Durchsatz, einer Latenzzeit, Anweisungen pro Sekunde usw. assoziiert sind), die mit einer Dienstgütevereinbarung für die Arbeitslast (z. B. die Anwendung 1532) assoziiert sind, hinzufügen oder von diesem entfernen. Dadurch kann der Koordinationsserver 1520 Telemetriedaten empfangen, die auf Leistungsbedingungen (z. B. Durchsatz, Latenzzeit, Anweisungen pro Sekunde usw.) in jedem Einschub 400 des verwalteten Knotens 1570 hinweisen, und die Telemetriedaten mit den Dienstqualitätszielen vergleichen, um zu ermitteln, ob die Dienstqualitätsziele erfüllt sind. Falls sie dies sind, kann der Koordinationsserver 1520 zusätzlich ermitteln, ob die Zuweisung einer oder mehrerer physischen Ressourcen zum verwalteten Knoten 1570 aufgehoben werden kann, während weiterhin die QoS-Ziele erfüllt werden, wodurch diese physischen Ressourcen zur Verwendung in einem anderen verwalteten Knoten freigegeben werden (um z. B. eine andere Arbeitslast auszuführen). Falls die QoS-Ziele derzeit nicht erfüllt werden, kann der Koordinationsserver 1520 alternativ ermitteln, zusätzliche physische Ressourcen dynamisch zuzuweisen, um bei der Ausführung der Arbeitslast (z. B. der Anwendung 1532) zu helfen, während die Arbeitslast ausgeführt wird.
  • In einigen Ausführungsformen kann der Koordinationsserver 1520 zusätzlich Trends in der Ressourcennutzung der Arbeitslast (z. B. der Anwendung 1532) identifizieren, zum Beispiel durch Identifizieren von Ausführungsphasen (z. B. Zeitperioden, in denen unterschiedliche Vorgänge durchgeführt werden, die jeweils unterschiedliche Ressourcennutzungseigenschaften aufweisen) der Arbeitslast (z. B. der Anwendung 1532) und präventives Identifizieren von verfügbaren Ressourcen im Rechenzentrum 100 und Zuweisen dieser zum verwalteten Knoten 1570 (z. B. innerhalb einer vordefinierten Zeitperiode, ab dem Beginn der assoziierten Phase). In einigen Ausführungsformen kann der Koordinationsserver 1520 eine Leistung auf Grundlage von verschiedenen Latenzzeiten und eines Verteilungsschemas modellieren, um Arbeitslasten unter Recheneinschüben und anderen Ressourcen (z. B. Beschleunigungseinschüben, Arbeitsspeichereinschüben, Speichereinschüben) im Rechenzentrum 100 zu vermitteln. Der Koordinationsserver 1520 kann zum Beispiel ein Modell einsetzen, das die Leistung von Ressourcen auf den Einschüben 400 (z. B. FPGA-Leistung, Arbeitsspeicherzugriffslatenz usw.) und die Leistung (z. B. Anhäufung, Latenz, Bandbreite) des Pfads durch das Netzwerk zur Ressource (z. B. FPGA) berücksichtigt. Als solcher kann der Koordinationsserver 1520 auf Grundlage der Gesamtlatenzzeit, die mit jeder möglichen, im Rechenzentrum 100 verfügbaren Ressource assoziiert ist, ermitteln, welche Ressource(n) mit welchen Arbeitslasten verwendet werden sollte(n) (z. B. die mit der Durchführung der Ressource selbst assoziierte Latenzzeit, zusätzlich zur Latenzzeit, die mit dem Pfad um das Netzwerk zwischen dem Recheneinschub, der die Arbeitslast ausführt, und dem Einschub 400, auf dem sich die Ressource befindet, assoziiert ist).
  • In einigen Ausführungsformen kann der Koordinationsserver 1520 unter Verwendung von von den Einschüben 400 gemeldeten Telemetriedaten (z. B. Temperaturen, Ventilatordrehzahlen usw.) eine Karte der Wärmeerzeugung im Rechenzentrum 100 erstellen und verwalteten Knoten Ressourcen als eine Funktion der Karte der Wärmeerzeugung und der vorhergesagten Wärmeerzeugung zuweisen, die mit unterschiedlichen Arbeitslasten assoziiert ist, um eine Zieltemperatur und Zielwärmeverteilung im Rechenzentrum 100 beizubehalten. Zusätzlich oder alternativ kann der Koordinationsserver 1520 in einigen Ausführungsformen empfangene Telemetriedaten in ein hierarchisches Modell organisieren, das auf eine Beziehung zwischen den verwalteten Knoten hinweist (z. B. eine räumliche Beziehung wie die physischen Positionen der Ressourcen der verwalteten Knoten innerhalb des Rechenzentrums 100 und/oder eine funktionale Beziehung, wie Gruppierungen der verwalteten Knoten durch die Kunden, für die die verwalteten Knoten Dienste bereitstellen, die Arten der von den verwalteten Knoten üblicherweise durchgeführten Funktionen, verwaltete Knoten, die üblicherweise Arbeitslasten untereinander verteilen oder austauschen, usw.). Auf Grundlage von Unterschieden in den physischen Positionen und Ressourcen in den verwalteten Knoten kann eine bestimmte Arbeitslast unterschiedliche Ressourcennutzungen über die Ressourcen verschiedener verwalteter Knoten hinweg zeigen (z. B. eine unterschiedliche interne Temperatur verursachen, einen unterschiedlichen Prozentsatz von Prozessor- oder Arbeitsspeicherkapazität verwenden). Der Koordinationsserver 1520 kann die Unterschiede auf Grundlage der im hierarchischen Modell gespeicherten Telemetriedaten ermitteln und die Unterschiede in eine Vorhersage von zukünftiger Ressourcennutzung einer Arbeitslast einbeziehen, falls die Arbeitslast von einem verwalteten Knoten einem anderen verwalteten Knoten neu zugewiesen wird, um die Ressourcennutzung im Rechenzentrum 100 genau auszugleichen.
  • Um die Rechenbelastung des Koordinationsservers 1520 und die Datentransferbelastung des Netzwerks zu reduzieren, kann der Koordinationsserver 1520 in einigen Ausführungsformen Selbsttestinformationen an die Einschübe 400 senden, um zu ermöglichen, dass jeder Einschub 400 lokal (z. B. auf dem Einschub 400) ermittelt, ob vom Einschub 400 generierte Telemetriedaten eine oder mehrere Bedingungen erfüllen (z. B. eine verfügbare Kapazität, die einen vordefinierten Schwellwert erfüllt, eine Temperatur, die einen vordefinierten Schwellwert erfüllt, usw.). Jeder Einschub 400 kann dann ein vereinfachtes Ergebnis (z. B. ja oder nein) an den Koordinationsserver 1520 zurückmelden, die der Koordinationsserver 1520 beim Ermitteln der Zuordnung von Ressourcen zu verwalteten Knoten einsetzen kann.
  • Nun auf 16 Bezug nehmend, kann ein System 1600 zum Pooling in einer hyperkonvergenten Infrastruktur in Übereinstimmung mit dem Rechenzentrum 100 implementiert werden, das oben in Bezug auf 1 beschrieben wurde. In der illustrativen Ausführungsform enthält das System 1600 einen Koordinationsserver 1602 in Kommunikation mit einem Einschub A 1604, einem Einschub B 1606 und einem Einschub C 1608. Obwohl nur die Einschübe A-C 1604, 1606, 1608 gezeigt sind, kann es eine beliebige Anzahl von Einschüben geben, die im System 1600 eingesetzt sind. Die Einschübe können als ein Recheneinschub, ein Beschleunigungseinschub, ein Arbeitsspeichereinschub und/oder ein Datenspeichereinschub ausgebildet sein. Ein oder mehrere der Einschübe 1604, 1606, 1608 können in einen verwalteten Knoten, zum Beispiel durch den Koordinationsserver 1602, gruppiert sein, um gemeinsam eine Arbeitslast, zum Beispiel eine Anwendung, auszuführen. Ein verwalteter Knoten kann als eine Anordnung von Ressourcen, wie Rechenressourcen, Arbeitsspeicherressourcen, Speicherressourcen oder anderen Ressourcen vom gleichen oder von anderen Einschüben oder Racks ausgebildet sein. Ferner kann ein verwalteter Knoten vom Koordinationsserver 1602 zum Zeitpunkt, zu dem eine Arbeitslast dem verwalteten Knoten zuzuweisen ist, oder zu einem anderen Zeitpunkt eingerichtet, definiert oder „hochgefahren“ werden und kann unabhängig davon existieren, ob derzeit dem verwalteten Knoten irgendwelche Arbeitslasten zugewiesen sind. Das System 1600 kann sich in einem Rechenzentrum befinden und einer Client-Vorrichtung (nicht gezeigt) Speicher- und Rechendienste (z. B. Cloud-Dienste) bereitstellen, die über ein Netzwerk (nicht gezeigt) mit dem System 1600 in Kommunikation steht. Der Koordinationsserver 1602 kann eine Cloud-Betriebsumgebung, wie OpenStack, unterstützen und vom Koordinationsserver 1602 eingerichtete verwaltete Knoten können im Auftrag eines Benutzers der Client-Vorrichtung eine oder mehrere Anwendungen oder Prozesse (d. h. Arbeitslasten) ausführen, zum Beispiel in virtuellen Maschinen oder Containern. In der illustrativen Ausführungsform setzt der Einschub A 1604 eine Brückenlogikeinheit 1616 ein, die als eine beliebige Vorrichtung oder Verschaltung ausgebildet sein kann, die Zugriffsanforderungen einer Netzwerkschnittstellensteuerung (NIC) 1610 in Übereinstimmung mit einem Vorrichtungsschema weiterleiten kann, um mit dem Koordinationsserver 1602 und den anderen Einschüben 1606, 1608 zu kommunizieren. Darüber hinaus enthalten die Einschübe 1606, 1608 Brückenlogikeinheiten 1628, 1640 von NICs 1624, 1636, um gleichermaßen mit dem Koordinationsserver 1602 und den anderen Einschüben zu kommunizieren. Ferner enthält der Einschub A 1604 in der illustrativen Ausführungsform eine Zentralverarbeitungseinheit (CPU) 1610, um eine Arbeitslast (z. B. eine Anwendung) auszuführen, und eine Vorrichtung bzw. Vorrichtungen 1614, die zwei Beschleunigungsvorrichtungen 1618, 1620 enthalten kann bzw. können. Jeder der Einschübe 1604, 1606, 1608 ist gleichermaßen ausgebildet und kann eine Vielzahl von Vorrichtungen 1614, 1626, 1638 enthalten. Die Vielzahl der Vorrichtungen 1614, 1626, 1638 kann eine beliebige Kombination von Beschleunigungsvorrichtungen 1618, 1620, Arbeitsspeichervorrichtungen 1630, 1632 und Datenspeichervorrichtungen 1642, 1644 enthalten.
  • Die Einschübe 1604, 1606, 1608 bilden in der illustrativen Ausführungsform einen Vorrichtungsbestand, der von anderen Einschüben im Netzwerk einzusetzen ist. Die Brückenlogikeinheiten 1616, 1628, 1640 erhalten im Betrieb eine Anforderung von einer anfordernden Vorrichtung, auf eine Vorrichtung zuzugreifen. Die anfordernde Vorrichtung kann zum Beispiel als die CPU 1610 ausgebildet sein, während die CPU 1610 eine Arbeitslast ausführt. Obwohl im Kontext des Einschubs A 1604 und seiner Komponenten beschrieben, kann jeder der Einschübe 1604, 1606, 1608 gleichermaßen die unten beschriebenen Funktionen durchführen. Die CPU 1610, die die Arbeitslast ausführt, kann Ressourcen benötigen, um die Arbeitslast zu verarbeiten, und kann als solche eine Anforderung an die Brückenlogikeinheit 1616 zum Zugriff auf eine Vorrichtung senden. Die Brückenlogikeinheit 1616 kann ein Vorrichtungsschema verwenden, das entweder vom Koordinationsserver 1602 (z. B. vom Koordinationsserver 1602 durch Abfragen der Einschübe generiert, um die verfügbaren Vorrichtungen zu identifizieren, von einem menschlichen Administrator eingegeben usw.) oder einer anderen Rechenvorrichtung (nicht gezeigt) oder anderen Einschüben 1606, 1608 empfangen wurde und auf die Positionen einer Vielzahl von Vorrichtungen 1614, 1626, 1638 hinweist, die an die Brückenlogikeinheiten 1616, 1628, 1640 gekoppelt sind. Als solche werden die von der Brückenlogikeinheit 1616 erhaltenen Zugriffsanforderungen (die z. B. von der CPU 1610 während einer Ausführung einer Arbeitslast generiert wurden) von der Brückenlogikeinheit 1616 unter Verwendung des Vorrichtungsschemas analysiert, um zu ermitteln, welcher der Einschübe 1604, 1606, 1608 die angeforderte Vorrichtung aufweist. In der illustrativen Ausführungsform kann die Brückenlogikeinheit 1616 beispielsweise ermitteln, dass Einschub B 1606 eine Vielzahl von Arbeitsspeichervorrichtungen 1630, 1632 enthält, und anfordern, auf die Arbeitsspeichervorrichtung 1630 zuzugreifen. Hierzu kann die Brückenlogikeinheit 1616 mit der Brückenlogikeinheit 1628 kommunizieren, die selektiv eingeschaltet ist, um anzufordern, dass die Brückenlogikeinheit 1628 Zugriff auf die Arbeitsspeichervorrichtung 1630 bereitstellt. Beim Bereitstellen von Zugriff auf die Arbeitsspeichervorrichtung 1630 schaltet die Brückenlogikeinheit 1628 in der illustrativen Ausführungsform selektiv die Arbeitsspeichervorrichtung 1630 an, wobei sie andere Vorrichtungen wie die CPU 1622 ausgeschaltet lässt, um einen Energieverbrauch zu reduzieren. Darüber hinaus kann die angeforderte Vorrichtung (z. B. die Arbeitsspeichervorrichtung 1630) als lokal zum Einschub A 1604 kartiert sein, nachdem die Arbeitsspeichervorrichtung 1630 eingeschaltet wurde. In einigen Ausführungsformen kann die Brückenlogikeinheit 1616 auch selektiv Vorrichtungen einschalten, die zum Einschub A 1604 lokal (z. B. in diesen integriert) sind (z. B. Beschleunigungsvorrichtungen 1618, 1620, als Reaktion auf Anforderungen von der CPU 1610 und/oder anderen Einschüben, wie den Einschüben 1606, 1608 über deren jeweilige Brückenlogikeinheiten 1628, 1640). Die Brückenlogikeinheit 1616 kann einem betriebssystemunabhängigen Treiber ermöglichen, mit der angeforderten Vorrichtung zu kommunizieren, zum Beispiel einem Nonvolatile-Memory-Express-Treiber oder einem Nonvolatile-Memory-Express-over-Fabric-Treiber. Durch selektives Einschalten von Vorrichtungen auf den Einschüben auf Anforderungsbasis, anstatt alle Vorrichtungen auf allen Einschüben eingeschaltet zu lassen, reduziert das System 1600 die von den Einschüben 1604, 1606, 1608 verbrauchte Energiemenge, während es gleichzeitig weiterhin Zugriff auf die zum Ausführen von Arbeitslasten benötigten Ressourcen bereitstellt.
  • Nun auf 17 Bezug nehmend kann der Einschub 1604 als ein beliebiger Typ von Rechenvorrichtung ausgebildet sein, der fähig ist, die hierin beschriebenen Funktionen durchzuführen, einschließlich des Ausführens einer oder mehrerer Arbeitslasten und des Zugreifens auf einen Bestand von Vorrichtungen. Wie in 17 gezeigt enthält der illustrative Einschub 1604 eine Rechenengine 1702, Kommunikationsverschaltung 1704 und eine Vorrichtung bzw. Vorrichtungen 1614. In einigen Ausführungsformen kann der Einschub 1604 periphere Vorrichtungen 1706 enthalten. Natürlich kann der Einschub 1604 in anderen Ausführungsformen andere oder zusätzliche Komponenten enthalten, wie diejenigen, die üblicherweise in einem Einschub zu finden sind. Eine oder mehrere der illustrativen Komponenten können zusätzlich in einigen Ausführungsformen in eine andere Komponente eingebunden sein oder anderweitig einen Teil dieser bilden.
  • Die Rechenengine 1702 kann als ein beliebiger Typ von Vorrichtung oder eine beliebige Sammlung von Vorrichtungen ausgebildet sein, die verschiedene unten beschriebene Rechenfunktionen durchführen kann bzw. können. In einigen Ausführungsformen kann die Rechenengine 1702 als eine einzelne Vorrichtung wie ein integrierter Schaltkreis, ein eingebettetes System, ein feldprogrammierbares Gatearray (FPGA), ein Ein-Chip-System (SOC) oder ein anderes integriertes System oder eine andere integrierte Vorrichtung ausgebildet sein. Zusätzlich enthält die Rechenengine 1702 in einigen Ausführungsformen einen Prozessor 1708 und einen Arbeitsspeicher 1710 oder ist als diese ausgebildet. Der Prozessor 1708 kann als ein beliebiger Typ von Prozessor ausgebildet sein, der die hierin beschriebenen Funktionen durchführen kann. Der Prozessor 1708 kann als ein Einzel- oder ein Mehrkernprozessor, ein Mikrocontroller oder ein anderer Prozessor oder Verarbeitungs-/Steuerschaltkreis ausgebildet sein. In einigen Ausführungsformen kann der Prozessor 1708 als ein feldprogrammierbares Gatearray (FPGA), ein anwendungsspezifischer integrierter Schaltkreis (ASIC), eine neu konfigurierbare Hardware oder Hardwareverschaltung oder eine andere spezialisierte Hardware ausgebildet sein, diese enthalten oder an diese gekoppelt sein, um eine Durchführung der hierin beschriebenen Funktionen zu ermöglichen.
  • Der Arbeitsspeicher 1710 kann als ein beliebiger Typ von flüchtigem (z. B. dynamischem Arbeitsspeicher mit wahlfreiem Zugriff (DRAM) usw.) oder nichtflüchtigem Arbeitsspeicher oder Datenspeicher ausgebildet sein, der fähig ist, die hierin beschriebenen Funktionen durchzuführen. Darüber hinaus können die anderen Arbeitsspeichervorrichtungen 1630, 1632 von 16 ähnlich wie der Arbeitsspeicher 1710 ausgebildet sein. Flüchtiger Arbeitsspeicher kann ein Speichermedium sein, das Strom erfordert, um den Zustand von vom Medium gespeicherten Daten zu bewahren. Nicht einschränkende Beispiele von flüchtigem Arbeitsspeicher können verschiedene Arten von Arbeitsspeicher mit wahlfreiem Zugriff (RAM) wie dynamischen Arbeitsspeicher mit wahlfreiem Zugriff (DRAM) oder statischen Arbeitsspeicher mit wahlfreiem Zugriff (SRAM) enthalten. Ein bestimmter Typ von DRAM, der in einem Arbeitsspeichermodul verwendet werden kann, ist synchroner dynamischer Arbeitsspeicher mit wahlfreiem Zugriff (SDRAM). In bestimmten Ausführungsformen kann der DRAM einer Arbeitsspeicherkomponente einen von JEDEC veröffentlichten Standard erfüllen, wie JESD79F für DDR-SDRAM, JESD79-2F für DDR2-SDRAM, JESD79-3F für DDR3-SDRAM, JESD79-4A für DDR4-SDRAM, JESD209 für Niedrigleistungs-DDR (LPDDR), JESD209-2 für LPDDR2, JESD209-3 für LPDDR3 und JESD209-4 für LPDDR4 (diese Standards sind auf www.jedec.org verfügbar). Derartige Standards (und ähnliche Standards) können als DDR-basierte Standards bezeichnet werden und Kommunikationsschnittstellen der Speichervorrichtungen, die derartige Standards implementieren, können als DDR-basierte Schnittstellen bezeichnet werden.
  • In einer Ausführungsform ist die Arbeitsspeichervorrichtung eine blockadressierbare Arbeitsspeichervorrichtung, wie diejenigen, die auf NAND- oder NOR-Technologien basieren. Eine Arbeitsspeichervorrichtung kann auch nichtflüchtige Vorrichtungen zukünftiger Generationen enthalten, wie eine dreidimensionale (3D) Koppelpunkt-Arbeitsspeichervorrichtung oder andere Byte-adressierbare in situ beschreibbare nichtflüchtige Arbeitsspeichervorrichtungen. In einer Ausführungsform kann die Arbeitsspeichervorrichtung Arbeitsspeichervorrichtungen sein oder solche enthalten, die Chalkogenglas, NAND-Flashspeicher mit mehreren Schwellenpegeln, NOR-Flashspeicher, Phasenwechselspeicher (PCM) mit einem oder mehreren Pegeln, einen resistiven Arbeitsspeicher, Nanodrahtpeicher, ferroelektrischen Transistorspeicher mit wahlfreiem Zugriff (FeTRAM), antiferroelektrischen Arbeitsspeicher, magnetoresistiven Arbeitsspeicher mit wahlfreiem Zugriff (MRAM), der Memristor-Technologie einbindet, resistiven Arbeitsspeicher auf Metalloxidbasis, Sauerstofleerstellenbasis und Leiterbrückenarbeitsspeicher mit wahlfreiem Zugriff (CB-RAM) oder Spin-Transfer-Torque(STT)-MRAM, eine Vorrichtung auf Spintronik-Magnetübergang-Arbeitsspeicherbasis, eine Vorrichtung auf Magnettunnelübergangsbasis (MTJ-Basis), eine Vorrichtung auf Domänenwand(DW)- und SOT(Spin-Orbit-Transfer)-Basis, eine Arbeitsspeichervorrichtung auf Thyristorbasis oder eine Kombination von beliebigen der obigen oder einen anderen Arbeitsspeicher einsetzen. Die Arbeitsspeichervorrichtung kann den Chip selbst und/oder ein verpacktes Arbeitsspeicherprodukt bezeichnen.
  • In einigen Ausführungsformen kann der 3D-Koppelpunkt-Arbeitsspeicher eine transistorlose stapelbare Koppelpunkt-Architektur umfassen, in der Arbeitsspeicherzellen am Schnittpunkt von Wortleitungen und Bitleitungen sitzen und individuell adressierbar sind und in der eine Bitspeicherung auf einer Änderung im Bulkwiderstand basiert. Im Betrieb kann der Arbeitsspeicher 1710 verschiedene Software und Daten speichern, die während des Betriebs verwendet werden, wie Vorrichtungsschemadaten, Anwendungen, Programme, Bibliotheken und Treiber.
  • Die Kommunikationsverschaltung 1704 kann als eine beliebige Kommunikationsverschaltung, Vorrichtung oder Sammlung davon ausgebildet sein, die fähig ist, über ein Netzwerk Kommunikationen zwischen den Rechenvorrichtungen (z. B. dem Koordinationsserver 1602 und/oder einem oder mehreren Einschüben 1604, 1606, 1608) zu ermöglichen. Die Kommunikationsverschaltung 1704 kann ausgelegt sein, eine oder mehrere Kommunikationstechnologien (z. B. verdrahtete oder drahtlose Kommunikationen) und zugehörige Protokolle (z. B. Ethernet, Bluetooth®, Wi-Fi®, WiMAX usw.) zu verwenden, um eine derartige Kommunikation zu bewirken. In der illustrativen Ausführungsform kann die Kommunikationsverschaltung 1704 die Netzwerkschnittstellensteuerung (NIC) 1612 (auch als eine Host-Fabric-Schnittstelle (HFI) bezeichnet) enthalten, die gleichermaßen als eine beliebige Kommunikationsverschaltung, Vorrichtung oder Sammlung davon ausgebildet sein kann, die fähig ist, über ein Netzwerk Kommunikationen zwischen den Rechenvorrichtungen (z. B. dem Koordinationsserver 1602 und/oder einem oder mehreren Einschüben 1604, 1606, 1608) zu ermöglichen. In der illustrativen Ausführungsform enthält die NIC 1612 eine Brückenlogikeinheit 1616, die als ein beliebiger Typ von Rechenvorrichtung ausgebildet sein kann, der fähig ist, die hierin beschriebenen Funktionen durchzuführen. Die Brückenlogikeinheit 1616 kann beispielsweise als ein feldprogrammierbares Gatearray (FPGA), ein anwendungsspezifischer integrierter Schaltkreis (ASIC), eine neu konfigurierbare Hardware oder Hardwareverschaltung oder eine andere spezialisierte Hardware ausgebildet sein, diese enthalten oder an diese gekoppelt sein, um eine Durchführung der hierin beschriebenen Funktionen zu ermöglichen. Die Brückenlogikeinheit 1616 kann ausgelegt sein, mit dem Koordinationsserver 1602, den Einschüben 1604, 1606, 1608 oder einer Rechenvorrichtung (nicht gezeigt) zu kommunizieren, um ein Schema der Vorrichtungen zu empfangen und/oder das Schema der Vorrichtungen zusammen mit dem Koordinationsserver 1602 und den Einschüben 1604, 1606, 1608 einzurichten.
  • Wie oben erwähnt, kann der Einschub 1604 in einigen Ausführungsformen eine oder mehrere periphere Vorrichtungen 1706 enthalten. Derartige periphere Vorrichtungen 1706 können einen beliebigen Typ von peripherer Vorrichtung enthalten, wie man sie üblicherweise in einer Rechenvorrichtung, wie einer Anzeige, Lautsprechern, einer Maus, einer Tastatur und/oder anderen Eingabe/Ausgabe-Vorrichtungen, Schnittstellenvorrichtungen und/oder anderen peripheren Vorrichtungen findet.
  • Der Koordinationsserver 1602 und die Einschübe 1606, 1608 können Komponenten aufweisen, die denen in 17 beschriebenen ähnlich sind. Die Beschreibung dieser Komponenten des Einschubs 1604 gilt gleichermaßen für die Beschreibung der Komponenten des Koordinationsservers 1602 und der Einschübe 1606, 1608 und wird hierin der Klarheit der Beschreibung halber nicht wiederholt. Ferner sollte klar sein, dass der Koordinationsserver 1602 und die Einschübe 1606, 1608 andere Komponenten, Teilkomponenten und Vorrichtungen enthalten können, wie man sie üblicherweise in einer Rechenvorrichtung findet, die oben in Bezug auf den Einschub 1604 nicht besprochen wurden und hierin der Klarheit der Beschreibung halber nicht besprochen werden.
  • Wie oben beschrieben stehen der Koordinationsserver 1602 und die Einschübe 1604, 1606, 1608 illustrativ über ein Netzwerk (nicht gezeigt) in Kommunikation, das als ein beliebiger Typ von verdrahtetem oder drahtlosem Kommunikationsnetzwerk ausgebildet sein kann, einschließlich globaler Netzwerke (z. B. dem Internet), lokaler Netzwerke (LANs) oder Weitverkehrsnetzen (WANs), Mobilfunknetzen (z. B. Global System for Mobile Communications (GSM), 3G, Long Term Evolution (LTE), Worldwide Interoperability for Microwave Access (WiMAX) usw.), Digital-Subscriber-Line(DSL)-Netzwerke, Kabelnetzwerke (z. B. koaxialer Netzwerke, Fasernetzwerke usw.) oder einer beliebigen Kombination davon.
  • Nun auf 18 Bezug nehmend, kann der Einschub 1604 eine Umgebung 1800 während des Betriebs einrichten. Die illustrative Umgebung 1800 enthält eine Netzwerkkommunikationseinrichtung 1802 und eine Brückenverbindungsschnittstelle 1804. Jede der Komponenten der Umgebung 1800 kann als Hardware, Firmware, Software oder eine Kombination daraus ausgebildet sein. Als solche können eine oder mehrere der Komponenten der Umgebung 1800 in einigen Ausführungsformen als eine Verschaltung oder eine Sammlung von elektrischen Vorrichtungen ausgebildet sein (z. B. Netzwerkkommunikationsverschaltung 1802, Brückenverbindungsschnittstellenverschaltung 1804 usw.). Es sollte klar sein, dass in derartigen Ausführungsformen eine oder mehrere der Netzwerkkommunikationsverschaltung 1802 oder der Brückenverbindungsschnittstellenverschaltung 1804 einen Teil eines oder mehrerer der Rechenengine 1702, der Kommunikationsverschaltung 1704 und/oder beliebigen anderen Komponenten des Einschubs 1604 bilden kann bzw. können. In der illustrativen Ausführungsform enthält die Umgebung 1800 Vorrichtungsschemadaten 1812, die als beliebige Daten ausgebildet sein können, die vom Koordinationsserver 1602, den Einschüben 1604, 1606, 1608 und/oder beliebigen anderen Rechenvorrichtungen während der Ausführung einer oder mehrerer Arbeitslasten durch die Einschübe 1604, 1606, 1608 eingerichtet sind und auf die Position der Vorrichtungen 1614, 1626, 1638 hinweisen. Das Vorrichtungsschema 1812 kann zum Beispiel anzeigen, mit welchen Brückenlogikeinheiten 1616, 1628, 1640 die Vorrichtungen 1614, 1626, 1638 verbunden sind und auf welchen Einschüben 1604, 1606, 1608 sich die Vorrichtungen 1614, 1626, 1638 befinden. Als solche enthalten die Vorrichtungsschemadaten 1812 in der illustrativen Ausführungsform Informationen, die verwendet werden können, um zu ermitteln, ob sich eine anfordernde Vorrichtung, wie die CPU 1610, auf dem gleichen Einschub wie die angeforderte Vorrichtung (z. B. eine Beschleunigungsvorrichtung 1618) befindet.
  • In der illustrativen Umgebung 1800 ist die Netzwerkkommunikationseinrichtung 1802, die als Hardware, Firmware, Software, virtualisierte Hardware, eine emulierte Architektur und/oder eine Kombination daraus, wie oben besprochen, ausgebildet sein kann, ausgelegt, eingehende und ausgehende Netzwerkkommunikationen (z. B. Netzwerkverkehr, Netzwerkpakete, Netzwerkflüsse usw.) zum bzw. vom Einschub 1604 zu ermöglichen. Hierzu ist die Netzwerkkommunikationseinrichtung 1802 ausgelegt, Datenpakete von einem System oder einer Rechenvorrichtung (z. B. einem Einschub 1606 oder 1608 und/oder einem Koordinationsserver 1602) zu empfangen und zu verarbeiten und Datenpakete an eine andere Rechenvorrichtung oder ein anderes System (z. B. einem Einschub 1606 oder 1608 und/oder einen Koordinationsserver 1602) vorzubereiten und zu senden. Dementsprechend kann in einigen Ausführungsformen zumindest ein Teil der Funktionalität der Netzwerkkommunikationseinrichtung 1802 von der Kommunikationsverschaltung 1704 und in der illustrativen Ausführungsform von der Brückenlogikeinheit 1616 der NIC 1612 durchgeführt werden. In einigen Ausführungsformen kann die Netzwerkkommunikationseinrichtung 1802 mit dem Koordinationsserver 1602, den Einschüben 1604, 1606, 1608 und/oder einer Rechenvorrichtung (nicht gezeigt) kommunizieren, um Vorrichtungsschemadaten 1812 zu empfangen.
  • Die Brückenverbindungsschnittstelle 1804, die als Hardware, Firmware, Software, virtualisierte Hardware, eine emulierte Architektur und/oder eine Kombination daraus ausgebildet sein kann, ist ausgelegt, um eine Position einer angeforderten Vorrichtung zu ermitteln und zu ermitteln, an welche Brückenlogikeinheit 1616, 1628, 1640 die angeforderte Vorrichtung kommunikativ gekoppelt ist. Die angeforderte Vorrichtung kann als beliebige der Vorrichtung(en) 1614, 1626, 1638 ausgebildet sein, die eine auf beliebigen der CPUs 1610, 1622, 1634 ausgeführte Arbeitslast anfordert, um beim Verarbeiten der Arbeitslast zu helfen. Darüber hinaus kann die Brückenverbindungsschnittstelle 1804 ausgelegt sein, die angeforderte Vorrichtung selektiv einzuschalten und der anfordernden Vorrichtung Zugriff auf die angeforderte Vorrichtung bereitzustellen. Hierzu enthält die Brückenverbindungsschnittstelle 1804 in der illustrativen Ausführungsform eine Vorrichtungskennung 1806, eine Energieverwaltung 1808 und einen Brückenlogikeinheits-Kommunikationseinrichtung 1810. Die Vorrichtungskennung 1806 ist in der illustrativen Ausführungsform ausgelegt, Anforderungen (die z. B. von den CPUs 1610, 1622, 1634 und/oder einer beliebigen anderen Vorrichtung, die fähig ist, Anforderungen zum Zugriff auf die Vorrichtung(en) 1614, 1626, 1638 zu generieren, generiert wurden) zum Zugriff auf die Vorrichtung(en) 1614, 1626, 1638 zu erhalten und die Anforderungen zu bearbeiten (z. B. ein Lesen der und/oder Schreiben in die Vorrichtung(en) 1614, 1626, 1638 zu ermöglichen, die in der Zugriffsanforderung angegeben wurde bzw. wurden). Die Vorrichtungskennung 1806 ist in der illustrativen Ausführungsform ausgelegt, die Vorrichtungsschemadaten 1812 zu verwenden, um eine Position einer angeforderten Vorrichtung durch Identifizieren zu ermitteln, auf welche Vorrichtung(en) 1614, 1626, 1638 die anfordernde Vorrichtung (z. B. die CPU 1610, 1622, 1634) Zugriff anfordert, indem ermittelt wird, auf welchem Einschub 1604, 1606, 1608 sich die angeforderte Vorrichtung befindet. Die Ermittlung der Position kann auch ein Ermitteln umfassen, an welche Brückenlogikeinheit 1616, 1628, 1640 die Vorrichtung(en) 1614, 1626, 1638 gekoppelt ist bzw. sind. In einigen Ausführungsformen kann die Vorrichtungskennung 1806 ausgelegt sein, die Vorrichtungsschemadaten 1812 als Reaktion auf ein Empfangen einer Benachrichtigung von einem Host, dem Koordinationsserver 1602 und/oder den Einschüben 1604, 1606, 1608 zu aktualisieren. Dies kann zum Beispiel eintreten, wenn irgendwelche Vorrichtungen zum System 1600 hinzugefügt oder von diesem entfernt werden.
  • Die Energieverwaltung 1808 ist in der illustrativen Ausführungsform ausgelegt, die Vorrichtung(en) 1614, 1626, 1634 selektiv einzuschalten, indem sie anfordert, dass die mit der bzw. den Vorrichtung(en) 1614, 1626, 1634 assoziierte Brückenlogikeinheit 1616, 1628, 1640 die angeforderte(n) Vorrichtung(en) 1614, 1626, 1634 einschaltet und (die) andere Vorrichtung(en) 1614, 1626, 1634 ausgeschaltet lässt. Dadurch kann die Energieverwaltung 1808 anfordern, dass eine Brückenlogikeinheit 1616, 1628, 1640 (eine) angeforderte Vorrichtung(en) 1614, 1626, 1634 einschaltet und die CPU 1610, 1622, 1634 des entsprechenden Einschubs 1604, 1606, 1608 ausgeschaltet lässt, um Energie zu sparen.
  • Die Brückenlogikeinheits-Kommunikationseinrichtung 1810 ist in der illustrativen Ausführungsform ausgelegt, mit einer anderen Brückenlogikeinheit 1628, 1640 zu kommunizieren, um auf die angeforderte Vorrichtung auf dem entsprechenden Einschub 1606, 1608 zuzugreifen. Die Brückenlogikeinheits-Kommunikationseinrichtung 1810 kann die Energieverwaltung 1808 einsetzen, um anzufordern, dass die Brückenlogikeinheit 1628, 1640 eine angeforderte Vorrichtung selektiv einschaltet, die sich auf dem assoziierten Einschub 1606, 1608 befindet. Die Brückenlogikeinheits-Kommunikationseinrichtung 1810 kann fortfahren, die angeforderte Vorrichtung (die sich auf einem separaten Einschub 1604, 1606, 1608 befinden kann) als lokal zum Einschub 1604, 1606, 1608 zu kartieren, der die anfordernde Vorrichtung enthält. In einigen Ausführungsformen kann die Brückenlogikeinheits-Kommunikationseinrichtung 1810 ausgelegt sein, Anforderungen zum Zugriff auf eine Vorrichtung (z. B. eine Beschleunigungsvorrichtung 1614) zu empfangen, die lokal zum Einschub (z. B. dem Einschub 1604) ist (sich z. B. darauf befindet), auf dem sich die Brückenlogikeinheit 1616 befindet. Die Brückenlogikeinheits-Kommunikationseinrichtung 1810 kann ausgelegt sein, einem betriebssystemunabhängigen Treiber zu ermöglichen, mit der angeforderten Vorrichtung bzw. mit den angeforderten Vorrichtungen 1614, 1626, 1634 zu kommunizieren. In einigen Ausführungsformen kann der betriebssystemunabhängige Treiber als ein Nonvolatile-Memory-Express-Treiber ausgebildet sein. Alternativ kann der betriebssystemunabhängige Treiber als ein Nonvolatile-Memory-Express-over-Fabric-Treiber ausgebildet sein. Um die Kommunikation zu ermöglichen, kann die Brückenlogikeinheits-Kommunikationseinrichtung 1810 alle Daten bereitstellen, die sich aus der Zugriffsanforderung (z. B. von der angeforderten Vorrichtung gelesene Daten) oder von der anfordernden Vorrichtung an die angeforderte Vorrichtung (z. B. Schreibdaten an die angeforderte Vorrichtung) ergeben.
  • Nun auf 19 Bezug nehmend, kann der Einschub 1604 in Verwendung ein Verfahren 1900 zum Bereitstellen von effizientem Pooling in einer hyperkonvergenten Infrastruktur (z. B. dem System 1600) ausführen. Der Einfachheit halber wird das Verfahren 1900 unten als vom Einschub 1604 ausgeführt beschrieben. In einigen Ausführungsformen kann jedoch jeder der Einschübe 1604, 1606, 1608 das Verfahren 1900 individuell entweder separat oder gleichzeitig ausführen. Das Verfahren beginnt bei Block 1902, wobei der Einschub 1604 ermittelt, ob eine Aktualisierung eines Schemas von Vorrichtungen (z. B. Vorrichtungsschemadaten 1812) empfangen wurden. In der illustrativen Ausführungsform kann der Einschub 1604 Aktualisierungen am Schema von Vorrichtungen vom Koordinationsserver 1602, anderen Einschüben 1606, 1608 und/oder einer anderen Rechenvorrichtung (nicht gezeigt) empfangen. Der Einschub 1604 kann eine Aktualisierung empfangen, wenn eine Vorrichtung zum System 1600 hinzugefügt oder von diesem entfernt wird (z. B. bei Erkennen durch den entsprechenden Einschub, zu dem die Vorrichtungen hinzugefügt oder von dem sie entfernt wurden). Falls der Einschub 1604 eine Aktualisierung empfängt, geht das Verfahren 1900 zu Block 1904 weiter, in dem der Einschub 1604 Vorrichtungen identifiziert, die mit den Brückenlogikeinheiten 1616, 1628, 1640 verbunden sind. Falls es jedoch keine Aktualisierung des Vorrichtungsschemas gibt, zweigt das Verfahren 1900 zu Block 1908 ab, in dem der Einschub 1604 in einigen Ausführungsformen eine Arbeitslast ausführt (z. B. unter Verwendung der CPU 1610). Wieder auf Block 1904 Bezug nehmend, aktualisiert der Einschub 1604 jedoch nach dem Identifizieren der Vorrichtungen das Vorrichtungsschema der mit den Brückenlogikeinheiten 1616, 1628, 1640 verbundenen Vorrichtungen in Block 1906. Die Aktualisierung kann zum Beispiel anzeigen, dass eine neue Arbeitsspeichervorrichtung hinzugefügt wurde und der Einschub 1604 kann als Reaktion die neue Arbeitsspeichervorrichtung zu einer Liste von Vorrichtungen hinzufügen, die an die jeweilige Brückenlogikeinheit 1616, 1628, 1640 gekoppelt sind, die mit der neuen Arbeitsspeichervorrichtung assoziiert ist. Gleichermaßen kann der Einschub 1604 (eine) Vorrichtung(en) 1614, 1626, 1638 von der Liste entfernen, falls die Vorrichtung(en) 1614, 1626, 1638 entfernt wird bzw. werden.
  • In Block 1910 erhält der Einschub 1604 von einer anfordernden Vorrichtung eine Anforderung, auf die Vorrichtung(en) 1614, 1626, 1638 zuzugreifen. Die anfordernde Vorrichtung kann als eine CPU 1610, 1622, 1634 ausgebildet sein, die eine Arbeitslast ausführt, wie zum Beispiel in Block 1908 beschrieben. In einigen Ausführungsformen erhält der Einschub 1604 die Anforderung in Block 1912 von der Rechenengine 1702, die die Arbeitslast auf dem vorliegenden Einschub 1604 ausführt. Alternativ kann der Einschub 1604 in Block 1914 die Anforderung von einem entfernten Einschub erhalten (z. B. einem anderen Einschub, wie einem der Einschübe 1606, 1608). Hierzu kann der Einschub 1604 die Anforderung von einer Brückenlogikeinheit 1628, 1640 des entfernten Einschubs 1606, 1608 erhalten, wie in Block 1916 angezeigt. Nach Erhalten der Anforderung zum Zugriff auf eine Vorrichtung geht das Verfahren zu Block 1918 weiter, in dem der Einschub 104 mit der Brückenlogikeinheit 1616 ermittelt, ob die angeforderte Vorrichtung auf dem Einschub 1604 verfügbar ist. Hierzu nimmt der Einschub 1604 in Block 1920 in der illustrativen Ausführungsform auf ein Vorrichtungsschema Bezug, das auf eine Position der angeforderten Vorrichtung hinweist. Das Vorrichtungsschema kann zum Beispiel anzeigen, auf welchem Einschub 1604, 1606, 1608 sich die angeforderte Vorrichtung befindet. Darüber hinaus kann das Vorrichtungsschema in einigen Ausführungsformen anzeigen, an welche Brückenlogikeinheit 1616, 1628, 1640 die angeforderte Vorrichtung kommunikativ gekoppelt ist, und dadurch identifizieren, mit welcher Brückenlogikeinheit 1616, 1628, 1640 zu kommunizieren ist, um auf die angeforderte Vorrichtung zuzugreifen.
  • Nun auf 20 Bezug nehmend, ermittelt der Einschub 1604 in Block 1922, ob sich die angeforderte Vorrichtung auf dem vorliegenden Einschub 1604 befindet. Falls der Einschub 1604 ermittelt, dass sich die angeforderte Vorrichtung nicht auf dem vorliegenden Einschub 1604 befindet, geht das Verfahren 1900 zu Block 1924 weiter, in dem der Einschub 1604 mit der Brückenlogikeinheit 1628, 1640 des entfernten Einschubs 1606, 1608 kommuniziert. Falls der Einschub 1604 jedoch ermittelt, dass sich die angeforderte Vorrichtung auf dem vorliegenden Einschub 1604 befindet, geht das Verfahren zu Block 1930 weiter, in dem der Einschub 1604 die angeforderte Vorrichtung (z. B. die Vorrichtung(en) 1614) selektiv einschaltet. In der illustrativen Ausführungsform schaltet der Einschub 1604 die angeforderte Vorrichtung über die Brückenlogikeinheit 1616 ein. Darüber hinaus kann der Einschub 1604 durch selektives Einschalten der angeforderten Vorrichtung eine oder mehrere andere Vorrichtungen, die auf dem Einschub 1604 vorhanden sind, ausgeschaltet lassen, wie in Block 1932 angezeigt. Wieder auf Block 1924 Bezug nehmend, fordert der Einschub 1604 beim Kommunizieren mit der Brückenlogikeinheit 1628, 1640 jedoch an, dass die entfernte Brückenlogikeinheit 1628, 1640 die angeforderte Vorrichtung selektiv einschaltet, wie in Block 1926 angezeigt. Die Brückenlogikeinheit 1616 kann zum Beispiel eine Anforderung senden, eine an die Brückenlogikeinheit 1628 gekoppelte Arbeitsspeichervorrichtung 1630 einzuschalten oder eine an die Brückenlogikeinheit 1640 gekoppelte Speichervorrichtung 1642 einzuschalten. Nach dem Kommunizieren mit der Brückenlogikeinheit 1628, 1640 des entfernten Einschubs 1606, 1608 geht das Verfahren 1900 zu Block 1928 weiter, in dem der Einschub 1604 die entfernte Vorrichtung als lokal zum vorliegenden Einschub 1604 kartiert.
  • In Block 1934 ermöglicht der Einschub 1604 einem betriebssystemunabhängigen Treiber, mit der angeforderten Vorrichtung zu kommunizieren. Hierzu aktiviert der Einschub 1604 in einigen Ausführungsformen in Block 1936 einen Nonvolatile-Memory-Express-Treiber. Alternativ kann der Einschub 1604 in Block 1938 einen Nonvolatile-Memory-Express-over-Fabric-Treiber aktivieren. In anderen Ausführungsformen aktiviert der Einschub 1604 einen anderen Typ von betriebssystemunabhängigem Treiber.
  • In Block 1940 stellt der Einschub 1604 über die lokale Brückenlogikeinheit 1616 der anfordernden Vorrichtung (z. B. der CPU 1610, 1622, 1634 und/oder einer anderen Vorrichtung) Zugriff auf die angeforderte Vorrichtung (z. B. die Vorrichtung(en) 1614, 1626, 1638) bereit. In einigen Ausführungsformen stellt der Einschub 1604 in Block 1942 Zugriff auf die Rechenengine 1702 auf dem Einschub 1604 bereit. Die Brückenlogikeinheit 1616 kann zum Beispiel der Rechenengine 1702 Zugriff auf eine angeforderte Beschleunigungsvorrichtung 1618 auf dem vorliegenden Einschub 1604 bereitstellen. Alternativ stellt der Einschub 1604 in Block 1944 in einigen Ausführungsformen einem entfernten Einschub 1606, 1608 Zugriff auf die angeforderte Vorrichtung bereit. Der Einschub 1604 stellt dem Einschub 1606 beispielsweise über die Brückenlogikeinheit 1616 Zugriff auf eine angeforderte Beschleunigungsvorrichtung 1618 bereit. Hierbei stellt der Einschub 1604 der Brückenlogikeinheit (z. B. der Brückenlogikeinheit 1628) des entfernten Einschubs (z. B. des Einschubs 1606) Zugriff bereit, der wiederum die Vorrichtung als lokal zum Einschub 1606 kartieren kann. Danach kehrt das Verfahren 1900 zu Block 1902 von 19 zurück, um weiterhin zu überwachen, ob eine Aktualisierung empfangen wurde.
  • BEISPIELE
  • Nachstechend werden illustrative Beispiele der hierin offenbarten Technologien bereitgestellt. Eine Ausführungsform der Technologien kann eine oder mehrere und eine beliebige Kombination der nachfolgend beschriebenen Beispiele umfassen.
    • Beispiel 1 enthält einen Einschub, der eine Netzwerkschnittstellensteuerung umfasst, die eine erste Brückenlogikeinheit enthält, um kommunikativ an ein Netzwerk aus Brückenlogikeinheiten anderer Einschübe zu koppeln, wobei die erste Brückenlogikeinheit ferner eine Anforderung zum Zugriff auf eine angeforderte Vorrichtung von einer anfordernden Vorrichtung zu erhalten hat; zu ermitteln hat, ob sich die angeforderte Vorrichtung auf dem vorliegenden Einschub oder einem vom vorliegenden Einschub verschiedenen, entfernten Einschub befindet; als Reaktion auf eine Ermittlung, dass sich die angeforderte Vorrichtung auf dem vorliegenden Einschub befindet, die angeforderte Vorrichtung selektiv einzuschalten hat; als Reaktion auf eine Ermittlung, dass sich die angeforderte Vorrichtung auf dem entfernten Einschub befindet, mit einer zweiten Brückenlogikeinheit des entfernten Einschubs zu kommunizieren hat; und der anfordernden Vorrichtung über die erste Brückenlogikeinheit Zugriff auf die angeforderte Vorrichtung bereitzustellen hat.
    • Beispiel 2 enthält den Gegenstand von Beispiel 1, und wobei die erste Brückenlogikeinheit ferner ein Schema von an das Netzwerk von Brückenlogikeinheiten gekoppelten Vorrichtungen von einer Rechenvorrichtung zu empfangen hat.
    • Beispiel 3 enthält den Gegenstand eines der Beispiele 1 und 2, und wobei die erste Brückenlogikeinheit ferner ein Schema von an das Netzwerk von Brückenlogikeinheiten gekoppelten Vorrichtungen von einem kommunikativ an den Einschub gekoppelten Koordinationsserver zu empfangen hat.
    • Beispiel 4 enthält den Gegenstand eines der Beispiele 1-3, und wobei die angeforderte Vorrichtung mindestens eine von einer Arbeitsspeichervorrichtung, einer Datenspeichervorrichtung oder einer Beschleunigungsvorrichtung enthält.
    • Beispiel 5 enthält den Gegenstand eines der Beispiele 1-4, und wobei die Beschleunigungsvorrichtung ein feldprogrammierbares Gatearray (FPGA) enthält.
    • Beispiel 6 enthält den Gegenstand eines der Beispiele 1-5, und wobei der Einschub ferner eine Rechenengine umfasst, um eine Arbeitslast auf dem Einschub auszuführen.
    • Beispiel 7 enthält den Gegenstand eines der Beispiele 1-6, und wobei das Erhalten der Anforderung zum Zugriff auf die Vorrichtung umfasst, die Anforderung von der Rechenengine zu erhalten, auf der die Arbeitslast ausgeführt wird.
    • Beispiel 8 enthält den Gegenstand eines der Beispiele 1-7, und wobei das Erhalten der Anforderung zum Zugriff auf die Vorrichtung umfasst, die Anforderung vom entfernten Einschub zu erhalten.
    • Beispiel 9 enthält den Gegenstand eines der Beispiele 1-8, und wobei das Erhalten der Anforderung vom entfernten Einschub umfasst, die Anforderung von der zweiten Brückenlogikeinheit des entfernten Einschubs zu erhalten.
    • Beispiel 10 enthält den Gegenstand eines der Beispiele 1-9, und wobei das Ermitteln, ob sich die angeforderte Vorrichtung auf dem Einschub befindet, umfasst, auf ein Vorrichtungsschema Bezug zu nehmen, das Positionen einer Vielzahl von Vorrichtungen anzeigt.
    • Beispiel 11 enthält den Gegenstand eines der Beispiele 1-10, und wobei das Kommunizieren mit der zweiten Brückenlogikeinheit des entfernten Einschubs umfasst, anzufordern, dass die zweite Brückenlogikeinheit die angeforderte Vorrichtung selektiv einschaltet.
    • Beispiel 12 enthält den Gegenstand eines der Beispiele 1-11, und wobei die erste Brückenlogikeinheit ferner die angeforderte Vorrichtung als lokal auf dem Einschub zu kartieren hat.
    • Beispiel 13 enthält den Gegenstand eines der Beispiele 1-12, und wobei der Einschub ein Arbeitsspeichereinschub, ein Datenspeichereinschub oder ein Beschleunigungseinschub ist.
    • Beispiel 14 enthält den Gegenstand eines der Beispiele 1-13, und wobei die erste Brückenlogikeinheit ferner einen betriebssystemunabhängigen Treiber zu aktivieren hat, um mit der angeforderten Vorrichtung zu kommunizieren.
    • Beispiel 15 enthält den Gegenstand eines der Beispiele 1-14, und wobei das Aktivieren eines betriebssystemunabhängigen Treibers umfasst, einen Nonvolatile-Memory-Express-Treiber zu aktivieren.
    • Beispiel 16 enthält den Gegenstand eines der Beispiele 1-15, und wobei das Aktivieren eines betriebssystemunabhängigen Treibers umfasst, einen Nonvolatile-Memory-Express-over-Fabric-Treiber zu aktivieren.
    • Beispiel 17 enthält den Gegenstand eines der Beispiele 1-16, und wobei das Bereitstellen, an die anfordernde Vorrichtung, von Zugriff auf die angeforderte Vorrichtung umfasst, einer Rechenengine auf dem Einschub Zugriff auf die angeforderte Vorrichtung bereitzustellen.
    • Beispiel 18 enthält den Gegenstand eines der Beispiele 1-17, und wobei das Bereitstellen von Zugriff auf die angeforderte Vorrichtung umfasst, Zugriff auf den entfernten Einschub bereitzustellen.
    • Beispiel 19 enthält den Gegenstand eines der Beispiele 1-18, und wobei das Bereitstellen von Zugriff auf den entfernten Einschub umfasst, Zugriff auf die zweite Brückenlogikeinheit des entfernten Einschubs bereitzustellen.
    • Beispiel 20 enthält ein Verfahren zum Zugreifen auf eine Vorrichtung, wobei das Verfahren ein Erhalten, mit einer ersten Brückenlogikeinheit einer Netzwerkschnittstellensteuerung, die an ein Netzwerk von Brückenlogikeinheiten gekoppelt ist, einer Anforderung von einer anfordernden Vorrichtung zum Zugriff auf eine angeforderte Vorrichtung; Ermitteln, durch die erste Brückenlogikeinheit, ob sich die angeforderte Vorrichtung auf dem vorliegenden Einschub oder einem vom vorliegenden Einschub verschiedenen, entfernten Einschub befindet; selektives Einschalten, durch die erste Brückenlogikeinheit und als Reaktion auf ein Ermitteln, dass sich die angeforderte Vorrichtung auf dem Einschub befindet, der angeforderten Vorrichtung oder Kommunizieren, durch die erste Brückenlogikeinheit und als Reaktion auf eine Ermittlung, dass sich die angeforderte Vorrichtung auf dem entfernten Einschub befindet, mit einer zweiten Brückenlogikeinheit des entfernten Einschubs; und Bereitstellen, durch die erste Brückenlogikeinheit und an die anfordernde Vorrichtung, von Zugriff auf die angeforderte Vorrichtung umfasst.
    • Beispiel 21 enthält den Gegenstand von Beispiel 20, und enthält ferner Empfangen, durch die erste Brückenlogikeinheit, eines Schemas von an das Netzwerk von Brückenlogikeinheiten gekoppelten Vorrichtungen von einer Rechenvorrichtung.
    • Beispiel 22 enthält den Gegenstand eines der Beispiele 20 und 21, und enthält ferner Empfangen, durch die erste Brückenlogikeinheit, eines Schemas von an das Netzwerk von Brückenlogikeinheiten gekoppelten Vorrichtungen von einem kommunikativ an den Einschub gekoppelten Koordinationsserver.
    • Beispiel 23 enthält den Gegenstand eines der Beispiele 20-22, und wobei das Erhalten einer Anforderung zum Zugriff auf eine Vorrichtung ein Erhalten einer Anforderung zum Zugriff auf mindestens eine von einer Arbeitsspeichervorrichtung, einer Datenspeichervorrichtung oder einer Beschleunigungsvorrichtung umfasst.
    • Beispiel 24 enthält den Gegenstand eines der Beispiele 20-23, und wobei ein Erhalten einer Anforderung zum Zugriff auf eine Beschleunigungsvorrichtung ein Erhalten einer Anforderung zum Zugriff auf ein feldprogrammierbares Gatearray (FPGA) umfasst.
    • Beispiel 25 enthält den Gegenstand eines der Beispiele 20-24, und enthält ferner ein Ausführen einer Arbeitslast durch eine Rechenengine auf dem Einschub.
    • Beispiel 26 enthält den Gegenstand eines der Beispiele 20-25, und wobei das Erhalten der Anforderung zum Zugriff auf die Vorrichtung ein Erhalten der Anforderung von der Rechenengine umfasst, die die Arbeitslast ausführt.
    • Beispiel 27 enthält den Gegenstand eines der Beispiele 20-26, und wobei das Erhalten der Anforderung zum Zugriff auf die Vorrichtung ein Erhalten der Anforderung vom entfernten Einschub umfasst.
    • Beispiel 28 enthält den Gegenstand eines der Beispiele 20-27, und wobei das Erhalten der Anforderung vom entfernten Einschub ein Erhalten der Anforderung von der zweiten Brückenlogikeinheit des entfernten Einschubs umfasst.
    • Beispiel 29 enthält den Gegenstand eines der Beispiele 20-28, und wobei das Ermitteln, ob sich die angeforderte Vorrichtung auf dem Einschub befindet, ein Bezugnehmen auf ein Vorrichtungsschema umfasst, das Positionen einer Vielzahl von Vorrichtungen anzeigt.
    • Beispiel 30 enthält den Gegenstand eines der Beispiele 20-29, und wobei das Kommunizieren mit der zweiten Brückenlogikeinheit des entfernten Einschubs ein Anfordern umfasst, dass die zweite Brückenlogikeinheit die angeforderte Vorrichtung selektiv einschaltet.
    • Beispiel 31 enthält den Gegenstand eines der Beispiele 20-30, und enthält ferner ein Kartieren der angeforderten Vorrichtung als lokal auf dem Einschub durch die erste Brückenlogikeinheit.
    • Beispiel 32 enthält den Gegenstand eines der Beispiele 20-31, und wobei das Ermitteln, ob sich die angeforderte Vorrichtung auf dem Einschub befindet, ein Ermitteln umfasst, ob sich die angeforderte Vorrichtung auf einem Arbeitsspeichereinschub, einem Datenspeichereinschub oder einem Beschleunigereinschub befindet.
    • Beispiel 33 enthält den Gegenstand eines der Beispiele 20-32, und enthält ferner ein Aktivieren eines betriebssystemunabhängigen Treibers durch die erste Brückenlogikeinheit, um mit der angeforderten Vorrichtung zu kommunizieren.
    • Beispiel 34 enthält den Gegenstand eines der Beispiele 20-33, und wobei das Aktivieren eines betriebssystemunabhängigen Treibers ein Aktivieren eines Nonvolatile-Memory-Express-Treibers umfasst.
    • Beispiel 35 enthält den Gegenstand eines der Beispiele 20-34, und wobei das Aktivieren eines betriebssystemunabhängigen Treibers ein Aktivieren eines Nonvolatile-Memory-Express-over-Fabric-Treibers umfasst.
    • Beispiel 36 enthält den Gegenstand eines der Beispiele 20-35, und wobei das Bereitstellen von Zugriff auf die angeforderte Vorrichtung ein Bereitstellen von Zugriff auf die Rechenengine auf dem Einschub umfasst.
    • Beispiel 37 enthält den Gegenstand eines der Beispiele 20-36, und wobei das Bereitstellen von Zugriff auf die angeforderte Vorrichtung ein Bereitstellen von Zugriff auf den entfernten Einschub umfasst.
    • Beispiel 38 enthält den Gegenstand eines der Beispiele 20-37, und wobei das Bereitstellen von Zugriff auf den entfernten Einschub ein Bereitstellen von Zugriff auf die zweite Brückenlogikeinheit des entfernten Einschubs umfasst.
    • Beispiel 39 enthält ein oder mehrere mehrere maschinenlesbare Medien, die eine Vielzahl von darauf gespeicherten Anweisungen umfassen, die als Reaktion auf ihre Ausführung bewirken, dass ein Einschub das Verfahren nach einem der Beispiele 20-38 durchführt.
    • Beispiel 40 enthält einen Einschub, der Mittel zum Durchführen des Verfahrens nach einem der Beispiele 20-38 umfasst.
    • Beispiel 41 enthält einen Einschub, der ein oder mehrere Prozessoren umfasst; eine oder mehrere Arbeitsspeichervorrichtungen mit einer darauf gespeicherten Vielzahl von Anweisungen, die, wenn sie von dem einen oder den mehreren Prozessoren ausgeführt werden, bewirken, dass der Einschub das Verfahren nach einem der Beispiele 20-38 durchführt.
    • Beispiel 42 enthält einen Einschub, der eine Netzwerkschnittstellensteuerung umfasst, die eine erste Brückenanschlussschnittstellenverschaltung enthält, um kommunikativ an ein Netzwerk aus Brückenanschlussschnittstellenverschaltungen anderer Einschübe zu koppeln, wobei die erste Brückenanschlussschnittstellenverschaltung ferner eine Anforderung zum Zugriff auf eine angeforderte Vorrichtung von einer anfordernden Vorrichtung zu erhalten hat; zu ermitteln hat, ob sich die angeforderte Vorrichtung auf dem vorliegenden Einschub oder einem vom vorliegenden Einschub verschiedenen, entfernten Einschub befindet; als Reaktion auf eine Ermittlung, dass sich die angeforderte Vorrichtung auf dem vorliegenden Einschub befindet, die angeforderte Vorrichtung selektiv einzuschalten hat; als Reaktion auf eine Ermittlung, dass sich die angeforderte Vorrichtung auf dem entfernten Einschub befindet, mit einer zweiten Brückenschnittstellenverschaltung des entfernten Einschubs zu kommunizieren hat; und der anfordernden Vorrichtung Zugriff auf die angeforderte Vorrichtung bereitzustellen hat.
    • Beispiel 43 enthält den Gegenstand von Beispiel 42, und wobei die erste Brückenschnittstellenverschaltung ferner ein Schema von an das Netzwerk von Brückenlogikeinheiten gekoppelten Vorrichtungen von einer Rechenvorrichtung zu empfangen hat.
    • Beispiel 44 enthält den Gegenstand eines der Beispiele 42 und 43, und wobei die erste Brückenschnittstellenverschaltung ferner ein Schema von an das Netzwerk von Brückenlogikeinheiten gekoppelten Vorrichtungen von einem kommunikativ an den Einschub gekoppelten Koordinationsserver zu empfangen hat.
    • Beispiel 45 enthält den Gegenstand eines der Beispiele 42-44, und wobei die angeforderte Vorrichtung mindestens eine von einer Arbeitsspeichervorrichtung, einer Datenspeichervorrichtung oder einer Beschleunigungsvorrichtung enthält.
    • Beispiel 46 enthält den Gegenstand eines der Beispiele 42-45, und wobei die Beschleunigungsvorrichtung ein feldprogrammierbares Gatearray (FPGA) enthält.
    • Beispiel 47 enthält den Gegenstand eines der Beispiele 42-46, und wobei der Einschub ferner eine Rechenengine umfasst, um eine Arbeitslast auf dem Einschub auszuführen.
    • Beispiel 48 enthält den Gegenstand eines der Beispiele 42-47, und wobei das Erhalten der Anforderung zum Zugriff auf die Vorrichtung umfasst, die Anforderung von der Rechenengine zu erhalten, auf der die Arbeitslast ausgeführt wird.
    • Beispiel 49 enthält den Gegenstand eines der Beispiele 42-48, und wobei das Erhalten der Anforderung zum Zugriff auf die Vorrichtung umfasst, die Anforderung vom entfernten Einschub zu erhalten.
    • Beispiel 50 enthält den Gegenstand eines der Beispiele 42-49, und wobei das Erhalten der Anforderung vom entfernten Einschub umfasst, die Anforderung von der zweiten Brückenlogikeinheit des entfernten Einschubs zu erhalten.
    • Beispiel 51 enthält den Gegenstand eines der Beispiele 42-50, und wobei das Ermitteln, ob sich die angeforderte Vorrichtung auf dem Einschub befindet, umfasst, auf ein Vorrichtungsschema Bezug zu nehmen, das Positionen einer Vielzahl von Vorrichtungen anzeigt.
    • Beispiel 52 enthält den Gegenstand eines der Beispiele 42-51, und wobei das Kommunizieren mit der zweiten Brückenschnittstellenverschaltung des entfernten Einschubs umfasst, anzufordern, dass die zweite Brückenschnittstellenverschaltung die angeforderte Vorrichtung selektiv einschaltet.
    • Beispiel 53 enthält den Gegenstand eines der Beispiele 42-52, und wobei die erste Brückenschnittstellenverschaltung ferner die angeforderte Vorrichtung als lokal auf dem Einschub zu kartieren hat.
    • Beispiel 54 enthält den Gegenstand eines der Beispiele 42-53, und wobei der Einschub ein Arbeitsspeichereinschub, ein Datenspeichereinschub oder ein Beschleunigungseinschub ist.
    • Beispiel 55 enthält den Gegenstand eines der Beispiele 42-54, und wobei die erste Brückenschnittstellenverschaltung ferner einen betriebssystemunabhängigen Treiber zu aktivieren hat, um mit der angeforderten Vorrichtung zu kommunizieren.
    • Beispiel 56 enthält den Gegenstand eines der Beispiele 42-55, und wobei das Aktivieren eines betriebssystemunabhängigen Treibers umfasst, einen Nonvolatile-Memory-Express-Treiber zu aktivieren.
    • Beispiel 57 enthält den Gegenstand eines der Beispiele 42-56, und wobei das Aktivieren eines betriebssystemunabhängigen Treibers umfasst, einen Nonvolatile-Memory-Express-over-Fabric-Treiber zu aktivieren.
    • Beispiel 58 enthält den Gegenstand eines der Beispiele 42-57, und wobei das Bereitstellen, an die anfordernde Vorrichtung, von Zugriff auf die angeforderte Vorrichtung umfasst, einer Rechenengine auf dem Einschub Zugriff auf die angeforderte Vorrichtung bereitzustellen.
    • Beispiel 59 enthält den Gegenstand eines der Beispiele 42-58, und wobei das Bereitstellen von Zugriff auf die angeforderte Vorrichtung umfasst, Zugriff auf den entfernten Einschub bereitzustellen.
    • Beispiel 60 enthält den Gegenstand eines der Beispiele 42-59, und wobei das Bereitstellen von Zugriff auf den entfernten Einschub umfasst, Zugriff auf die zweite Brückenlogikeinheit des entfernten Einschubs bereitzustellen.
    • Beispiel 61 enthält einen Einschub, umfassend Verschaltung zum Erhalten einer Anforderung von einer anfordernden Vorrichtung, um auf eine angeforderte Vorrichtung zuzugreifen; Verschaltung zum Ermitteln, ob sich die angeforderte Vorrichtung auf dem vorliegenden Einschub oder einem vom vorliegenden Einschub verschiedenen, entfernten Einschub befindet; Mittel zum selektiven Einschalten der angeforderten Vorrichtung, als Reaktion auf ein Ermitteln, dass sich die angeforderte Vorrichtung auf dem Einschub befindet, oder zum Kommunizieren mit einer Brückenlogikeinheit des entfernten Einschubs, als Reaktion auf ein Ermitteln, dass sich die angeforderte Vorrichtung auf dem entfernten Einschub befindet; und Verschaltung zum Bereitstellen, durch die erste Brückenlogikeinheit und an die anfordernde Vorrichtung, von Zugriff auf die angeforderte Vorrichtung.
    • Beispiel 62 enthält den Gegenstand von Beispiel 61, und enthält ferner Verschaltung zum Empfangen eines Schemas von an ein Netzwerk von Brückenlogikeinheiten gekoppelten Vorrichtungen von einer Rechenvorrichtung.
    • Beispiel 63 enthält den Gegenstand eines der Beispiele 61 und 62, und enthält ferner Verschaltung zum Empfangen eines Schemas von an ein Netzwerk von Brückenlogikeinheiten gekoppelten Vorrichtungen von einem kommunikativ an den Einschub gekoppelten Koordinationsserver.
    • Beispiel 64 enthält den Gegenstand eines der Beispiele 61-63, und wobei die Verschaltung zum Erhalten einer Anforderung zum Zugriff auf eine Vorrichtung eine Verschaltung zum Erhalten einer Anforderung zum Zugriff auf mindestens eine von einer Arbeitsspeichervorrichtung, einer Datenspeichervorrichtung oder einer Beschleunigungsvorrichtung umfasst.
    • Beispiel 65 enthält den Gegenstand eines der Beispiele 61-64, und wobei die Verschaltung zum Erhalten einer Anforderung zum Zugriff auf eine Beschleunigungsvorrichtung Verschaltung zum Erhalten einer Anforderung zum Zugriff auf ein feldprogrammierbares Gatearray (FPGA) umfasst.
    • Beispiel 66 enthält den Gegenstand eines der Beispiele 61-65, und enthält ferner Verschaltung zum Ausführen einer Arbeitslast.
    • Beispiel 67 enthält den Gegenstand eines der Beispiele 61-66, und wobei die Verschaltung zum Erhalten der Anforderung zum Zugriff auf die Vorrichtung Verschaltung zum Erhalten der Anforderung von einer Rechenengine umfasst, die die Arbeitslast ausführt.
    • Beispiel 68 enthält den Gegenstand eines der Beispiele 61-67, und wobei die Verschaltung zum Erhalten der Anforderung zum Zugriff auf die Vorrichtung Verschaltung zum Erhalten der Anforderung vom entfernten Einschub umfasst.
    • Beispiel 69 enthält den Gegenstand eines der Beispiele 61-68, und wobei die Verschaltung zum Erhalten der Anforderung vom entfernten Einschub Verschaltung zum Erhalten der Anforderung von der Brückenlogikeinheit des entfernten Einschubs umfasst.
    • Beispiel 70 enthält den Gegenstand eines der Beispiele 61-69, und wobei die Verschaltung zum Ermitteln, ob sich die angeforderte Vorrichtung auf dem Einschub befindet, Verschaltung zum Bezugnehmen auf ein Vorrichtungsschema umfasst, das Positionen einer Vielzahl von Vorrichtungen anzeigt.
    • Beispiel 71 enthält den Gegenstand eines der Beispiele 61-70, und wobei die Verschaltung zum Kommunizieren mit der Brückenlogikeinheit des entfernten Einschubs Verschaltung zum Anfordern umfasst, dass die Brückenlogikeinheit die angeforderte Vorrichtung selektiv einschaltet.
    • Beispiel 72 enthält den Gegenstand eines der Beispiele 61-71, und enthält ferner Verschaltung zum Kartieren der angeforderten Vorrichtung als lokal auf dem Einschub.
    • Beispiel 73 enthält den Gegenstand eines der Beispiele 61-72, und wobei die Verschaltung zum Ermitteln, ob sich die angeforderte Vorrichtung auf dem Einschub befindet, Verschaltung zum Ermitteln umfasst, ob sich die angeforderte Vorrichtung auf einem Arbeitsspeichereinschub, einem Datenspeichereinschub oder einem Beschleunigereinschub befindet.
    • Beispiel 74 enthält den Gegenstand eines der Beispiele 61-73, und enthält ferner Verschaltung zum Aktivieren eines betriebssystemunabhängigen Treibers, um mit der angeforderten Vorrichtung zu kommunizieren.
    • Beispiel 75 enthält den Gegenstand eines der Beispiele 61-74, und wobei die Verschaltung zum Aktivieren eines betriebssystemunabhängigen Treibers Verschaltung zum Aktivieren eines Nonvolatile-Memory-Express-Treibers umfasst.
    • Beispiel 76 enthält den Gegenstand eines der Beispiele 61-75, und wobei die Verschaltung zum Aktivieren eines betriebssystemunabhängigen Treibers Verschaltung zum Aktivieren eines Nonvolatile-Memory-Express-over-Fabric-Treibers umfasst.
    • Beispiel 77 enthält den Gegenstand eines der Beispiele 61-76, und wobei die Verschaltung zum Bereitstellen von Zugriff auf die angeforderte Vorrichtung Verschaltung zum Bereitstellen von Zugriff auf die Rechenengine auf dem Einschub umfasst.
    • Beispiel 78 enthält den Gegenstand eines der Beispiele 61-77, und wobei die Verschaltung zum Bereitstellen von Zugriff auf die angeforderte Vorrichtung Verschaltung zum Bereitstellen von Zugriff auf den entfernten Einschub umfasst.
    • Beispiel 79 enthält den Gegenstand eines der Beispiele 61-78, und wobei die Verschaltung zum Bereitstellen von Zugriff auf den entfernten Einschub Verschaltung zum Bereitstellen von Zugriff auf die Brückenlogikeinheit des entfernten Einschubs umfasst.
  • ZITATE ENTHALTEN IN DER BESCHREIBUNG
  • Diese Liste der vom Anmelder aufgeführten Dokumente wurde automatisiert erzeugt und ist ausschließlich zur besseren Information des Lesers aufgenommen. Die Liste ist nicht Bestandteil der deutschen Patent- bzw. Gebrauchsmusteranmeldung. Das DPMA übernimmt keinerlei Haftung für etwaige Fehler oder Auslassungen.
  • Zitierte Patentliteratur
    • IN 201741030632 [0001]
    • US 62584401 [0001]

Claims (25)

  1. Einschub, umfassend: eine Netzwerkschnittstellensteuerung, die eine erste Brückenlogikeinheit enthält, um kommunikativ an ein Netzwerk aus Brückenlogikeinheiten anderer Einschübe zu koppeln, wobei die erste Brückenlogikeinheit ferner: eine Anforderung zum Zugriff auf eine angeforderte Vorrichtung von einer anfordernden Vorrichtung zu erhalten hat; zu ermitteln hat, ob sich die angeforderte Vorrichtung auf dem vorliegenden Einschub oder einem vom vorliegenden Einschub verschiedenen, entfernten Einschub befindet; als Reaktion auf eine Ermittlung, dass sich die angeforderte Vorrichtung auf dem vorliegenden Einschub befindet, die angeforderte Vorrichtung selektiv einzuschalten hat; als Reaktion auf eine Ermittlung, dass sich die angeforderte Vorrichtung auf dem entfernten Einschub befindet, mit einer zweiten Brückenlogikeinheit des entfernten Einschubs zu kommunizieren hat; und der anfordernden Vorrichtung über die erste Brückenlogikeinheit Zugriff auf die angeforderte Vorrichtung bereitzustellen hat.
  2. Einschub nach Anspruch 1, wobei die erste Brückenlogikeinheit ferner ein Schema von an das Netzwerk von Brückenlogikeinheiten gekoppelten Vorrichtungen von einer Rechenvorrichtung zu empfangen hat.
  3. Einschub nach Anspruch 1, wobei die erste Brückenlogikeinheit ferner ein Schema von an das Netzwerk von Brückenlogikeinheiten gekoppelten Vorrichtungen von einem kommunikativ an den Einschub gekoppelten Koordinationsserver zu empfangen hat.
  4. Einschub nach Anspruch 1, wobei die angeforderte Vorrichtung mindestens eine von einer Arbeitsspeichervorrichtung, einer Datenspeichervorrichtung oder einer Beschleunigungsvorrichtung enthält.
  5. Einschub nach Anspruch 4, wobei die Beschleunigungsvorrichtung ein feldprogrammierbares Gatearray (FPGA) enthält.
  6. Einschub nach Anspruch 1, wobei der Einschub ferner eine Rechenengine umfasst, um eine Arbeitslast auf dem Einschub auszuführen.
  7. Einschub nach Anspruch 6, wobei das Erhalten der Anforderung zum Zugriff auf die Vorrichtung umfasst, die Anforderung von der Rechenengine zu erhalten, auf der die Arbeitslast ausgeführt wird.
  8. Einschub nach Anspruch 1, wobei das Erhalten der Anforderung zum Zugriff auf die Vorrichtung umfasst, die Anforderung vom entfernten Einschub zu erhalten.
  9. Einschub nach Anspruch 8, wobei das Erhalten der Anforderung vom entfernten Einschub umfasst, die Anforderung von der zweiten Brückenlogikeinheit des entfernten Einschubs zu erhalten.
  10. Einschub nach Anspruch 1, wobei das Ermitteln, ob sich die angeforderte Vorrichtung auf dem Einschub befindet, umfasst, auf ein Vorrichtungsschema Bezug zu nehmen, das Positionen einer Vielzahl von Vorrichtungen anzeigt.
  11. Einschub nach Anspruch 1, wobei das Kommunizieren mit der zweiten Brückenlogikeinheit des entfernten Einschubs umfasst, anzufordern, dass die zweite Brückenlogikeinheit die angeforderte Vorrichtung selektiv einschaltet.
  12. Einschub nach Anspruch 11, wobei die erste Brückenlogikeinheit ferner die angeforderte Vorrichtung als lokal auf dem Einschub zu kartieren hat.
  13. Verfahren zum Zugreifen auf eine Vorrichtung, wobei das Verfahren umfasst: Erhalten, mit einer ersten Brückenlogikeinheit einer Netzwerkschnittstellensteuerung, die an ein Netzwerk von Brückenlogikeinheiten gekoppelt ist, einer Anforderung von einer anfordernden Vorrichtung zum Zugriff auf eine angeforderte Vorrichtung; Ermitteln, durch die erste Brückenlogikeinheit, ob sich die angeforderte Vorrichtung auf dem vorliegenden Einschub oder einem vom vorliegenden Einschub verschiedenen, entfernten Einschub befindet; selektives Einschalten, durch die erste Brückenlogikeinheit und als Reaktion auf ein Ermitteln, dass sich die angeforderte Vorrichtung auf dem Einschub befindet, der angeforderten Vorrichtung oder Kommunizieren, durch die erste Brückenlogikeinheit und als Reaktion auf eine Ermittlung, dass sich die angeforderte Vorrichtung auf dem entfernten Einschub befindet, mit einer zweiten Brückenlogikeinheit des entfernten Einschubs; und Bereitstellen, durch die erste Brückenlogikeinheit und an die anfordernde Vorrichtung, von Zugriff auf die angeforderte Vorrichtung.
  14. Verfahren nach Anspruch 13, das ferner ein Empfangen, durch die erste Brückenlogikeinheit, eines Schemas von an das Netzwerk von Brückenlogikeinheiten gekoppelten Vorrichtungen von einer Rechenvorrichtung umfasst.
  15. Verfahren nach Anspruch 13, das ferner ein Empfangen, durch die erste Brückenlogikeinheit, eines Schemas von an das Netzwerk von Brückenlogikeinheiten gekoppelten Vorrichtungen von einem kommunikativ an den Einschub gekoppelten Koordinationsserver umfasst.
  16. Verfahren nach Anspruch 13, wobei das Erhalten einer Anforderung zum Zugriff auf eine Vorrichtung ein Erhalten einer Anforderung zum Zugriff auf mindestens eine von einer Arbeitsspeichervorrichtung, einer Datenspeichervorrichtung oder einer Beschleunigungsvorrichtung umfasst.
  17. Verfahren nach Anspruch 16, wobei ein Erhalten einer Anforderung zum Zugriff auf eine Beschleunigungsvorrichtung ein Erhalten einer Anforderung zum Zugriff auf ein feldprogrammierbares Gatearray (FPGA) umfasst.
  18. Verfahren nach Anspruch 13, das ferner ein Ausführen einer Arbeitslast durch eine Rechenengine auf dem Einschub umfasst.
  19. Verfahren nach Anspruch 18, wobei das Erhalten der Anforderung zum Zugriff auf die Vorrichtung ein Erhalten der Anforderung von der Rechenengine umfasst, die die Arbeitslast ausführt.
  20. Verfahren nach Anspruch 13, wobei das Erhalten der Anforderung zum Zugriff auf die Vorrichtung ein Erhalten der Anforderung vom entfernten Einschub umfasst.
  21. Verfahren nach Anspruch 20, wobei das Erhalten der Anforderung vom entfernten Einschub ein Erhalten der Anforderung von der zweiten Brückenlogikeinheit des entfernten Einschubs umfasst.
  22. Verfahren nach Anspruch 13, wobei das Ermitteln, ob sich die angeforderte Vorrichtung auf dem Einschub befindet, ein Bezugnehmen auf ein Vorrichtungsschema umfasst, das Positionen einer Vielzahl von Vorrichtungen anzeigt.
  23. Verfahren nach Anspruch 13, wobei das Kommunizieren mit der zweiten Brückenlogikeinheit des entfernten Einschubs ein Anfordern umfasst, dass die zweite Brückenlogikeinheit die angeforderte Vorrichtung selektiv einschaltet.
  24. Maschinenlesbares Medium oder mehrere maschinenlesbare Medien, das bzw. die eine Vielzahl von darauf gespeicherten Anweisungen umfasst bzw. umfassen, die als Reaktion auf ihre Ausführung bewirken, dass ein Einschub das Verfahren nach einem der Ansprüche 13-23 durchführt.
  25. Einschub, der Mittel zum Durchführen des Verfahrens nach einem der Ansprüche 13-23 umfasst.
DE102018212476.0A 2017-08-30 2018-07-26 Technologien zum bereitstellen von effizientem pooling für eine hyperkonvergente infrastruktur Pending DE102018212476A1 (de)

Applications Claiming Priority (6)

Application Number Priority Date Filing Date Title
IN201741030632 2017-08-30
IN201741030632 2017-08-30
US201762584401P 2017-11-10 2017-11-10
US62/584,401 2017-11-10
US15/858,542 US11748172B2 (en) 2017-08-30 2017-12-29 Technologies for providing efficient pooling for a hyper converged infrastructure
US15/858,542 2017-12-29

Publications (1)

Publication Number Publication Date
DE102018212476A1 true DE102018212476A1 (de) 2019-02-28

Family

ID=65321822

Family Applications (1)

Application Number Title Priority Date Filing Date
DE102018212476.0A Pending DE102018212476A1 (de) 2017-08-30 2018-07-26 Technologien zum bereitstellen von effizientem pooling für eine hyperkonvergente infrastruktur

Country Status (3)

Country Link
US (1) US20230418686A1 (de)
CN (1) CN117234297A (de)
DE (1) DE102018212476A1 (de)

Also Published As

Publication number Publication date
US20230418686A1 (en) 2023-12-28
CN117234297A (zh) 2023-12-15

Similar Documents

Publication Publication Date Title
DE112018004798T5 (de) Technologien für ein bereitstellen von effizientem speicherzugriff auf einem beschleunigerschlitten
DE102018006890B4 (de) Technologien zur Verarbeitung von Netzpaketen durch einen intelligenten Netzwerk-Schnittstellenkontroller
US10476670B2 (en) Technologies for providing remote access to a shared memory pool
DE102020125046A1 (de) Konfigurationsschnittstelle zum auslagern von fähigkeiten an eine netzwerkschnittstelle
US11861424B2 (en) Technologies for providing efficient reprovisioning in an accelerator device
DE102020118307A1 (de) Proaktiver daten-vorabruf mit angewandter quality-of-service
DE102020118494A1 (de) Technologien zur behandlung einer latenzbasierten dienstebenenvereinbarung in fern-direktspeicherzugriffsnetzen
DE102020130971A1 (de) Schlanke arbeitsspeicherzuweisung unter verwendung von arbeitsspeicherpools
DE102022104207A1 (de) Pooling von Netzwerkverarbeitungsressourcen
DE102020110582A1 (de) TECHNOLOGIEN ZUR AUTOMATISCHEN ARBEITSLASTERKENNUNG UND CACHE-QoS-RICHTLINIENANWENDUNG
US11228539B2 (en) Technologies for managing disaggregated accelerator networks based on remote direct memory access
US20200021492A1 (en) Technologies for storage cluster rebuild service traffic management
DE102020113279A1 (de) Technologien zum managen von burst-bandbreite
EP3731091A1 (de) Technologien zur bereitstellung eines beschleunigervorrichtungsentdeckungsdienstes
DE102020130965A1 (de) Technologien für rasches booten mit fehlerkorrekturcode-arbeitsspeicher
EP3757785B1 (de) Technologien zur ermöglichung von fernspeicheranforderungen in beschleunigervorrichtungen
DE112019000910T5 (de) Technologien zum erreichen einer netzwerk-qualitätssicherung mit hardwarebeschleunigung
DE102020114020A1 (de) Technologien zum bereitstellen von effizientem nachrichten-polling
US11531635B2 (en) Technologies for establishing communication channel between accelerator device kernels
DE102018212476A1 (de) Technologien zum bereitstellen von effizientem pooling für eine hyperkonvergente infrastruktur
DE102020119631A1 (de) Technologien zum switch-verbindungs- und schicht-management für veränderliche überzeichnungsverhältnisse
DE102018212478A1 (de) Technologien zum bereitstellen eines aufgeteilten speicherpools für vollständige rackkonnektivität
DE102018212477A1 (de) Technologien zum zusammenstellen eines gemanagten knotens auf der grundlage von telemetriedaten
DE102018005850A1 (de) Technologien für automatisiertes Netzüberlastungsmanagement

Legal Events

Date Code Title Description
R130 Divisional application to

Ref document number: 102018010568

Country of ref document: DE