JP7760075B2 - ブートコントローラを使用したコンテキストスイッチングのための計算ノードのスレッドレベルブート管理制御 - Google Patents
ブートコントローラを使用したコンテキストスイッチングのための計算ノードのスレッドレベルブート管理制御Info
- Publication number
- JP7760075B2 JP7760075B2 JP2024554891A JP2024554891A JP7760075B2 JP 7760075 B2 JP7760075 B2 JP 7760075B2 JP 2024554891 A JP2024554891 A JP 2024554891A JP 2024554891 A JP2024554891 A JP 2024554891A JP 7760075 B2 JP7760075 B2 JP 7760075B2
- Authority
- JP
- Japan
- Prior art keywords
- compute node
- compute
- bmc
- operating system
- boot
- 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.)
- Active
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F8/00—Arrangements for software engineering
- G06F8/60—Software deployment
- G06F8/61—Installation
- G06F8/63—Image based installation; Cloning; Build to order
-
- A—HUMAN NECESSITIES
- A63—SPORTS; GAMES; AMUSEMENTS
- A63F—CARD, BOARD, OR ROULETTE GAMES; INDOOR GAMES USING SMALL MOVING PLAYING BODIES; VIDEO GAMES; GAMES NOT OTHERWISE PROVIDED FOR
- A63F13/00—Video games, i.e. games using an electronically generated display having two or more dimensions
- A63F13/30—Interconnection arrangements between game servers and game devices; Interconnection arrangements between game devices; Interconnection arrangements between game servers
- A63F13/35—Details of game servers
- A63F13/352—Details of game servers involving special game server arrangements, e.g. regional servers connected to a national server or a plurality of servers managing partitions of the game world
-
- A—HUMAN NECESSITIES
- A63—SPORTS; GAMES; AMUSEMENTS
- A63F—CARD, BOARD, OR ROULETTE GAMES; INDOOR GAMES USING SMALL MOVING PLAYING BODIES; VIDEO GAMES; GAMES NOT OTHERWISE PROVIDED FOR
- A63F13/00—Video games, i.e. games using an electronically generated display having two or more dimensions
- A63F13/30—Interconnection arrangements between game servers and game devices; Interconnection arrangements between game devices; Interconnection arrangements between game servers
- A63F13/35—Details of game servers
- A63F13/355—Performing operations on behalf of clients with restricted processing capabilities, e.g. servers transform changing game scene into an encoded video stream for transmitting to a mobile phone or a thin client
-
- A—HUMAN NECESSITIES
- A63—SPORTS; GAMES; AMUSEMENTS
- A63F—CARD, BOARD, OR ROULETTE GAMES; INDOOR GAMES USING SMALL MOVING PLAYING BODIES; VIDEO GAMES; GAMES NOT OTHERWISE PROVIDED FOR
- A63F13/00—Video games, i.e. games using an electronically generated display having two or more dimensions
- A63F13/70—Game security or game management aspects
- A63F13/77—Game security or game management aspects involving data related to game devices or game servers, e.g. configuration data, software version or amount of memory
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F15/00—Digital computers in general; Data processing equipment in general
- G06F15/76—Architectures of general purpose stored program computers
- G06F15/78—Architectures of general purpose stored program computers comprising a single central processing unit
- G06F15/7867—Architectures of general purpose stored program computers comprising a single central processing unit with reconfigurable architecture
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements 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/44—Arrangements for executing specific programs
- G06F9/4401—Bootstrapping
- G06F9/4406—Loading of operating system
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements 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/44—Arrangements for executing specific programs
- G06F9/4401—Bootstrapping
- G06F9/4406—Loading of operating system
- G06F9/441—Multiboot arrangements, i.e. selecting an operating system to be loaded
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements 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/44—Arrangements for executing specific programs
- G06F9/4401—Bootstrapping
- G06F9/4416—Network booting; Remote initial program loading [RIPL]
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements 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/46—Multiprogramming arrangements
- G06F9/48—Program initiating; Program switching, e.g. by interrupt
- G06F9/4806—Task transfer initiation or dispatching
- G06F9/4843—Task transfer initiation or dispatching by program, e.g. task dispatcher, supervisor, operating system
- G06F9/485—Task life-cycle, e.g. stopping, restarting, resuming execution
- G06F9/4856—Task life-cycle, e.g. stopping, restarting, resuming execution resumption being on a different machine, e.g. task migration, virtual machine migration
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L41/00—Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
- H04L41/08—Configuration management of networks or network elements
- H04L41/0803—Configuration setting
- H04L41/0813—Configuration setting characterised by the conditions triggering a change of settings
- H04L41/0816—Configuration setting characterised by the conditions triggering a change of settings the condition being an adaptation, e.g. in response to network events
Landscapes
- Engineering & Computer Science (AREA)
- Software Systems (AREA)
- Theoretical Computer Science (AREA)
- General Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Computer Security & Cryptography (AREA)
- Multimedia (AREA)
- Computer Hardware Design (AREA)
- Signal Processing (AREA)
- Computer Networks & Wireless Communication (AREA)
- Business, Economics & Management (AREA)
- General Business, Economics & Management (AREA)
- Small-Scale Networks (AREA)
- Information Transfer Between Computers (AREA)
- Stored Programmes (AREA)
Description
すなわち、各オペレーティングシステムは、1つまたは複数のハードウェアリソース(例えば、対応するデータセンタに配置されている)によってサポートされる仮想化リソースの対応するセットで構成され得る。例えば、各オペレーティングシステムは、仮想CPU、複数の仮想GPU、仮想メモリ、仮想化された通信コンポーネントなどでサポートされる場合がある。さらに、待ち時間を削減するために、インスタンスの構成を、あるデータセンタから別のデータセンタに転送し得る。ユーザまたはゲームに対して定義された即時使用は、ユーザのゲームセッションを保存するときに使用できる。即時使用は、ゲームセッション用のビデオフレームの高速レンダリングを最適化するために、本明細書で説明する任意の数の構成を含むことができる。一実施形態では、ゲームまたはユーザに対して定義された即時使用は、構成可能な設定としてデータセンタ間で転送することができる。即時使用設定を転送できることにより、ユーザが異なる地理的な位置からゲームをプレイするために接続する場合に、データセンタからデータセンタへのゲームプレイの効率的な移行が可能になる。
割り当ては、計算ノードで利用可能なアセット(例えば、ゲーム)の知識に基づいて実行され得る。以前は、クライアントデバイスは、ラックアセンブリにさらに割り当てられることなく、データセンタに一般に割り当てられていた。このようにして、アサイナ191は、計算集約型の特定のゲームアプリケーションの実行を要求しているクライアントデバイスを、計算集約型のアプリケーションを実行していない可能性のある計算ノードに割り当てることができる。さらに、クライアントによって要求された計算集約型のゲームアプリケーションの割り当ての負荷管理は、アサイナ191で実行され得る。例えば、短期間に要求されている同じ計算集約型のゲームアプリケーションは、特定の計算ノード、計算スレッド及び/またはラックアセンブリの負荷を軽減するために、1つのラックアセンブリまたは異なるラックアセンブリ内の異なる計算スレッドの異なる計算ノードに分散される場合がある。
別のケースでは、アサイナ191は、データセンタNでの負荷の増加を見越して、クライアントデバイス110を、データセンタNのゲームクラウドシステム190から、データセンタ3で利用可能なリソースに切り替えることができる。さらに、未来のクライアントは、リソースの負荷と需要が、ゲームクラウドシステム全体に、複数のデータセンタにわたり、複数のラックアセンブリにわたり、複数の計算スレッドにわたり、及び/または複数の計算ノードにわたり分散され得るように、分散的にリソースに割り当てられることができる。例えば、クライアントデバイス110は、データセンタN(例えば、パス1を介して)及びデータセンタ3(例えば、パス2を介して)の両方のゲームクラウドシステムからリソースを割り当てられ得る。
一部の実施形態において、クラウドゲームネットワークまたはゲームクラウドシステム190は、ホストマシンのハイパーバイザで実行する複数の仮想マシン(VM)を含むことができ、1つまたは複数の仮想マシンは、ホストのハイパーバイザに利用可能であるハードウェアリソースを利用するゲームプロセッサモジュールを実行するように構成される。ネットワーク150は、1つまたは複数の通信技術を含み得る。一部の実施形態では、ネットワーク150は、高度な無線通信システムを有する第5世代(5G)ネットワーク技術を含み得る。
このように、バックエンドサーバサポートは、複数のゲームアプリケーションのゲームプレイの媒体(例えば、ビデオ、オーディオなど)のストリーミングを、複数の対応するユーザに提供する。すなわち、ゲームクラウドシステム190のゲームサーバは、ネットワーク150を介して、データ(例えば、対応するゲームプレイのレンダリングされた画像及び/またはフレーム)を対応するクライアントデバイスにストリーミング返信するように構成される。そのようにして、クライアントデバイスによって受信されて転送されたコントローラの入力に応答して、計算の複雑なゲームアプリケーションが、バックエンドサーバで実行し続けることができる。各サーバは画像及び/またはフレームをレンダリングすることができ、これらは次に、エンコード(例えば、圧縮)され、対応するクライアントデバイスにストリーミングされて表示される。
処理エンティティは、クラウドゲームネットワークまたはゲームクラウドシステム190の1つまたは複数のサーバ(計算ノード)上のサーバ及びその基礎となるハードウェアを利用し、及び/またはそれらに依拠してもよく、サーバは1つまたは複数のラック上に配置され得る。種々の処理エンティティに対するそれらの機能の実行の協調、割り当て、及び管理は、分散同期層によって行われる。そのようにして、それらの機能の実行が分散同期層によって制御されて、プレイヤーによるコントローラ入力に応答して、ゲームアプリケーション用の媒体(例えば、ビデオフレーム、オーディオなど)を生成することが可能になる。分散同期層は、重要なゲームエンジンコンポーネント/機能が、より効率的な処理のために分散されて再構築されるように、分散処理エンティティ全体で(例えば、負荷バランシングを介して)それらの機能を効率的に実行することが可能である。
対応するラックコントローラは、割り当てに利用可能な作業スレッドの数、割り当てに利用可能な計算ノードの数などのステータス情報をクラウド管理コントローラ210に伝達する。この情報は、アサイナがその情報を使用してユーザをリソース(例えば、計算ノードなど)に割り当てることができるように、クラウド管理コントローラ210及び/または対応するラックコントローラによってアサイナ191に伝達され得る。一部の実施形態では、対応するラックコントローラ及びネットワークストレージのペアは、同じサーバ(例えば、ネットワークストレージ)上で構成されるが、他の実施形態では、対応するラックコントローラ及びネットワークストレージは、別個のサーバ上で構成される。実施形態では、割り当ては、必要とされるリソース及び帯域幅、及びそれがデータセンタに存在することを把握するなど、アセットの認識に基づいて実行される。したがって、本開示の実施形態は、説明のために、対応するラックアセンブリ220Bの対応する計算スレッド231の特定の計算ノード232にクライアントデバイス110を割り当てるように構成される。
例えば、クラウド管理コントローラ210及び/または対応するラックコントローラは、リモートストレージ260のストレージアドレス265A~Nに位置し得る計算ノードの起動及び/またはブート操作に使用されるブートファイル(例えば、BIOSファームウェア)を管理する。さらに、クラウド管理コントローラ210及び/または対応するラックコントローラは、データセンタ内の計算ノードのブートイメージ(例えば、オペレーティングシステムイメージ)を含む、データセンタ内の各コンピューティングリソースのブート管理情報270を制御してよい。そのようにして、データセンタの計算リソース(例えば、ラックアセンブリ、計算スレッド、計算ノードなど)は、これらのリソースの利用目的(例えば、ピークユーザ需要中のゲーム用途、オフ時間中の二次使用(例えば、システムメンテナンスの実行、AIモデリングの実行、スーパーコンピュータによるアプリケーションの実行など)に応じて動的に再構成されてよい。
例えば、ストリーミングアレイ225Nは、ネットワークストレージ211Nにアクセスする複数の計算スレッド235を含む。特に、各ストリーミングアレイは、対応するラックコントローラ及びネットワークストレージを含む。例えば、代表的なラックアセンブリ221Nでは、ストリーミングアレイ225Aは、ラックコントローラ250A及びネットワークストレージ211Aを含み、ストリーミングアレイ225Nは、ラックコントローラ250N及びネットワークストレージ211Nを含む。
一部の実施形態では、対応するストリーミングアレイの対応するラックコントローラ及びネットワークストレージのペアは、同じサーバ(例えば、ネットワークストレージ)上で構成されるが、他の実施形態では、対応するラックコントローラ及びネットワークストレージは、別個のサーバ上で構成される。さらに他の実施形態では、ラックアセンブリは、それぞれが対応するネットワークストレージを備えた複数のストリーミングアレイを含み、ラックアセンブリの単一のラックコントローラが、ストリーミングアレイ全体にわたってコンピューティングリソースのブート制御(例えば、リモートブート制御、制御ブート管理情報など)を管理する。さらに他の実施形態では、ラックアセンブリは、単一のネットワークストレージにアクセスする複数のストリーミングアレイを含み、ラックアセンブリの単一のラックコントローラが、ストリーミングアレイ全体にわたってコンピューティングリソースのブート制御(例えば、リモートブート制御、制御ブート管理情報など)を管理する。示されるように、各計算スレッドは、ハードウェアリソース(例えば、プロセッサ、CPU、GPUなど)を提供する1つまたは複数の計算ノードを含む。例えば、ストリーミングアレイ225Nの計算スレッド235Xは4つの計算ノードを含むように示されているが、ラックアセンブリは1つまたは複数の計算ノードを含むことができることが理解される。
特に、BMC350は、計算ノードのリモートブート制御を実行する目的で、計算スレッド300上の対応する計算ノードと通信するように構成される。例えば、外部ハードウェアは、BMC350と対応する計算ノードとの間の通信によって処理される計算ノードのブートプロセスで使用されるため、計算ノード上にブート構成ファイルを格納するためにストレージが必要とされない。これにより、計算ノードの外部ブートにどのソフトウェアを使用するかについて、柔軟性を持たせることができる。すなわち、計算ノードは、第1優先のサービス(例えば、一次サービス)に該当するサービスを提供する1つのオペレーティングシステムで構成されてよく、その後に、第2優先のサービス(例えば、二次サービス)に該当するサービスを提供する第2のオペレーティングシステムで再構成されてもよい。
特に、管理インターフェース327は、第1のCPLD325を接続し、CPLD325はまた、BMC350に、または直接、I2C、I3、UART、もしくは他の通信インターフェースに(例えば、チャネル330を介して)接続される。すなわち、バックアップ機構は、BMC350をバイパスすることを可能にし、その結果、ラックコントローラからのボード管理制御信号は、CPLD325を通じて転送されチャネル330を介して送達される。バックアップメカニズムは非常に堅牢で信頼性が高いが(すなわち、CPLD325は専用ハードウェアで実装されるため障害の影響を受けない)、関連するパフォーマンスは範囲及び/または速度が制限される場合がある。しかしながら、バックアップ機構は、電源制御、リセット操作、及びいくつかの限定された診断の収集を含む、少なくとも低レベルの操作(すなわち、CPLD325を介してプログラムされた操作)の実施態様を提供する。
BMC350は、対応するラックコントローラと協調して、個々のコンポーネント(例えば、計算ノードなど)に対して、または計算スレッド全体に対して、特定の条件下で電源をオフにすることを決定してよく、これは例えば、電圧が高すぎることを検出した場合、温度が高すぎることを検出した場合、計算スレッド300上のファン390が動作不能であるこことを検出した場合、及び他の悪条件を検出した場合を含む。特に、BMC350は、対応するラックコントローラに管理情報(例えば、電力条件など)を提供して、スレッド管理命令を提供する。BMC350は、ある特定の極端な条件下ではラックコントローラとは独立して作動することができるが、一般にスレッド管理のためにラックコントローラと協調して動作する。例えば、スレッド管理は、外部で(例えば、ラックコントローラを介して)実行され、ラック管理バス360を介して内部的に通信される。これには、例えば、ラックアセンブリの予定保守中、データセンタ内の火災による対応するデータセンタでの停電時、またはバックアップ電源の実装時など、様々な条件下でスレッドを無効にする場合が含まれる。各計算ノードはまた、対応するバスバー370の接続を介して電力インターポーザ340Aに接続された電力入力コネクタ(例えば、設計された消費電力用の12ボルト)も含む。
特に、一実施形態では、外部ハードウェアは、計算ノードのブートプロセスで使用されるため、OSをブートするするのにストレージは必要とされず、これにより、外部ブートにどのソフトウェアが使用されるかについて柔軟性を持たせることができる。他の実施形態では、OSをブートするために部分的に構成された計算ノード上にストレージがあってよい。フロー図400は、図2A~図2Bのデータセンタなどのデータセンタのラックアセンブリのクラスタ内に位置するラックアセンブリのストリーミングアレイ内に構成される計算スレッドの計算ノードのリモートブートに関連して説明されるが、フロー図400で説明される動作は、ブートファイル(例えば、BIOS、オペレーティングシステム構成ファイルなど)を格納するための外部ハードウェアを使用して任意のコンピューティングリソースのリモートブートする場合に一般的に適用され得ることが理解される。
ハードウェアが初期化されると、BIOSファームウェアが使用されて、ハードドライブまたはソリッドステートドライブ(SSD)などのローカルストレージデバイスからオペレーティングシステムがブートされる。これは、BIOSファームウェアによって指示された1つまたは複数のブートローダプログラムを実行する場合などである。オペレーティングシステムをロードするために使用されるBIOSファームウェアは読み取り専用メモリに配置されているため、オペレーティングシステムを変更するには、ローカルシステムでBIOSファームウェアを変更する、及び/またはローカル揮発性メモリ(バッテリ電源で構成される場合がある)に記憶されている可能性のある設定を変更する必要があるが、これはクライアント及び/またはユーザのリアルタイムの要求を満たすのに十分な時間内で達成するのが困難である。
外部ハードウェアがブートプロセスで使用されることで、BIOSファームウェア及び/または他のブート構成ファイルを格納するための不揮発性メモリなどのストレージが不要になる(例えば、ハードウェアが少なくなることで各計算ノードのコストが削減される)。計算ノードは、計算ノードの動作中に(例えば、オペレーティングシステム、アプリケーションなどを実行するために)使用されるランダムアクセスメモリ(RAM)などの揮発性メモリで構成されてよい。このようにして、計算ノードのリモートブートは、外部でどのソフトウェア(例えば、複数のBIOSファームウェアの中から選択)をブートするかについて柔軟性を提供し、それによって、計算ノード上でアプリケーションを実行するために使用する所望のオペレーティングシステムの柔軟なロードを提供する。例えば、計算ノードがゲーム用に構成される場合、ゲームに適したオペレーティングシステムがロードされ、計算ノード上でゲームアプリケーションを実行する(例えば、BIOSを使用しない場合がある)。
一方、計算ノードは、異なるオペレーティングシステムを必要とするゲーム以外のサービス用に構成されてよい。その場合、計算ノードは、計算ノードでそれらのゲーム以外のサービスを提供する他のアプリケーションを実行するために、リモートブートプロセスを使用して新しいオペレーティングシステムをロードするように構成されてよい。ゲームと非ゲームのユースケースで必要とされる必須BIOSファームウェアは、大きく異なる。非ゲームのユースケースは、計算ノード及び/またはシステムを、典型的なまたは標準的なOSを実行するパーソナルコンピュータ(PC)により近いものへと変換する。この場合、BIOSは、不揮発性メモリ(例えば、SSDなど)にローカルに格納され得る。一方、ゲームのユースケースはより特殊であり、必ずしも従来のBIOSファームウェアを必要としない。例えば、BIOSファームウェアに関連する一部の機能(例えば、PCにOSを実装するためにBIOSによって通常実行される機能)は、ゲームのユースケースでは不要であり、ゲームコンソールを実装するためのBIOS機能は、専用のBIOSファームウェアを使用せずに、ロード中にゲームOS自体によって実行されてよい。
また、計算ノード上のブートコントローラは、機能するためにファームウェアを必要とする場合があり、ファームウェアは、ハードウェア設計に応じて様々な方法を介してロードされる場合がある。例えば、一実施形態では、ブートコントローラは、対応する計算ノードのマザーボード上に配置された小型のROMにそのファームウェアが統合されている場合がある。別の実施形態では、ブートコントローラファームウェアは、対応する計算スレッドでBMCを介してリモートでロードされてよく、BMCは、チャネル330(例えば、I2C、UART、シリアルペリフェラルインターフェース(SPI)など)を介して、低レベルインターフェースを通じブートコントローラファームウェアをプッシュする。
そのようにして、オペレーティングシステムに基づいて、BMCから計算ノードのブートコントローラに送達されるブート命令は、そのオペレーティングシステムの制御信号を通信するためにBMCによって管理される対応する通信インターフェースを介して送達される。したがって、BMCは、BMCによって管理される複数の通信インターフェースから選択された対応する通信インターフェースを介して、計算ノードによってロード可能な複数のオペレーティングシステムのそれぞれのための制御信号を送達するスイッチとして構成されてよい。すなわち、BMCスレッドスイッチボードは、PCI、PCIe、I2C、UART、USBなど、計算ノードへの通信インターフェースを提供する。
例えば、ジョブの実行中の計算ノードの状態(例えば、構成)がキャプチャされ、格納される。状態は、同じ計算スレッド上、または同じストリーミングアレイ上、または同じラックアセンブリ上、または同じデータセンタ内の異なるラックアセンブリの計算ノード上、または異なるデータセンタの計算ノード上などの、別の計算ノードに転送される。状態は他の計算ノードで初期化され、その後、転送された状態を使用して新しい計算ノード上でアプリケーションが実行され、ジョブが再開される。一実施態様では、一時停止されているジョブは、ゲームアプリケーションのレベルの終了など、所定の一時停止ポイントではない選択された一時停止ポイントまたはサスペンドポイントで一時停止される。
様々な実施態様では、これらの代替ジョブを一時停止及び/または転送するかどうかの決定は、これらの代替ワークロードに対してどのようなビジネスモデルが実装または選択されるかに依存し得る。顧客が購入した一部の費用効果が高いジョブは、一定の量の計算時間を購入することで実施されてよく(すなわち、いずれの転送も含まない)、異なるダークタイム期間に実行されてもよい。他の顧客は、ある期間(例えば、ダークタイム期間、ダークタイム期間を超える期間)の間に完了すべき一定数のジョブに対して支払いを行い、一時停止及び1つのリソースから別のリソースへの転送を必要とする場合がある。別のシナリオでは、より高額なジョブが処理を必要とする場合に、ジョブを転送せずに一時停止するなどの場合も考えられる。そのようにして、本開示の実施形態は、様々なシナリオの下でのジョブの一時停止及び転送を支援する。
これにより、システムを他のゲームプレイのために解放すること、または計算ノードに他のサービス(例えば、計算ノードのダークタイム利用)を提供することが可能になり、いつでもゲームプレイを再開でき、任意のリモート計算ノード(例えば、クライアント)を形成することが可能になる。ゲームを再開すると、ゲーム状態は、ゲームを再開するタスクを課された新しい計算ノード(例えば、同じまたは異なる計算ノード)にロードされる。ゲームの状態のロードには、複数の保存されたファイルやデータ構造からゲーム状態を生成することが含まれ、再構築されたゲーム状態は、計算ノードをゲームが一時停止された時と同じ、またはほぼ同じ状態にすることができる。
例として、再構成は、外部パーティまたは信頼されていない顧客によって、1つまたは複数のデータセンタの一部が分散型サービス拒否(DDOS)またはハッキングを受けた際に対抗するために利用され得る。第1の構成では、ラックアセンブリは、第1の複数のアプリケーション(例えば、ゲーム)によって実装される第1優先のサービスを促進するように構成される。第2の構成では、ラックアセンブリは、第2の複数のアプリケーション(例えば、人工知能またはAIサービスを実行する)によって実装される第2優先のサービスを促進するように構成される。第2優先のサービス(例えば、AI)は、第1優先のサービス(ゲーム)よりも低い優先度を持ってもよく、それにより、ラックアセンブリは主にゲームをサポートするが、ゲームの需要が減少するとき(すなわち、ダークタイム)、ラックアセンブリは、第2優先のサービスを処理することにより、24時間の期間全体を通してコンピューティングリソースをより多く利用できるように構成されてよい。
前述のように、データセンタ内のリソースは、サードパーティのクラウドホスティング会社(例えば、AWSクラウドコンピューティング)の他のネットワークや、その他のネットワークへのネットワーク/インターネット接続を提供するなど、クラウドゲームラックアセンブリの外部のリソースへのアクセスを含むように、ネットワーク構成中に再構成されてよい。また、リソースの再構成は、有害なワークロード(例えば、DDOS、ハッキングワークロード、またはサービスを要求する信頼されていない外部企業、または信頼されていない顧客)を分離する及び/またはそれがデータセンタ(例えば、主にクラウドゲームサービスを提供する)の全体的な機能及び整合性に何らかの方法で悪影響を与えることを防止するときするなど、セキュリティ目的で実行されてよい。
例えば、第2の構成は、ネットワークストレージへの直接アクセスを提供する代わりに(例えば、第1の構成において)、ラックアセンブリ内の複数の計算ノード間の直接通信のためにPCIeファブリックを構成してよい。このようにして、第2の構成では、PCIeファブリックは、ラックアセンブリ内の第1の計算ノードと第2の計算ノードとの間の直接通信を促進する。さらに、ラック再構成を実行して、ラックアセンブリ間に特別なネットワーク構成を確立してよい。通常、クラウドゲームラックアセンブリは互いに独立して動作するが、一部のユースケースでは、再構成を通じて2つ以上のラックアセンブリを相互接続し、連携して動作させることができる。通常、再構成なしでは、ファイアウォール及び/またはクラスタレベルスイッチなどのネットワーク設定によりそのような連携は阻止される。
ネットワークインターフェース609は、電子通信ネットワークを介してデバイス600が他のコンピュータシステムと通信することを可能にするものであり、ローカルエリアネットワーク及びインターネットなどのワイドエリアネットワークを介した有線または無線の通信を含み得る。オーディオプロセッサ612は、CPU602、メモリ604、及び/またはストレージ606によって提供される命令及び/またはデータから、アナログまたはデジタルのオーディオ出力を生成するように適応されている。CPU602、GPU616を含むグラフィックスサブシステム、メモリ604、データストレージ606、ユーザ入力デバイス608、ネットワークインターフェース609、及びオーディオプロセッサ612を含むデバイス600のコンポーネントは、1つまたは複数のデータバス622を介して接続されている。
その上で、最初のGPUが次のビデオフレームをレンダリングする(例えば、2つのGPUのみが存在する場合には、GPU1が第3のフレームをレンダリングする)。すなわち、GPUはフレームをレンダリングするときに回転処理を行う。レンダリング操作は重複する可能性があり、GPU1が第1のフレームのレンダリングを終了する前に、GPU2が第2のフレームのレンダリングを開始し得る。別の実施態様では、レンダリング及び/またはグラフィックスパイプラインでの異なるシェーダ操作を複数のGPUデバイスに割り当てることができる。マスタGPUが主なレンダリング及び合成を行っている。
例えば、3つのGPUを含むグループでは、マスタGPU1は、メインレンダリング(例えば、第1のシェーダ操作)と、スレーブGPU2及びスレーブGPU3からの出力の合成とを実行することができ、スレーブGPU2は、第2のシェーダ(例えば、川などの流体効果)操作を実行することができ、スレーブGPU3は、第3のシェーダ(例えば、粒子状の煙)操作を実行することができ、マスタGPU1は、GPU1、GPU2、及びGPU3のそれぞれからの結果を合成する。そのようにして、様々なGPUを割り当てて、様々なシェーダ操作(例えば、旗のはためき、風、煙の生成、火など)を実行して、ビデオフレームをレンダリングすることができる。さらに別の実施形態では、3つのGPUのそれぞれを、ビデオフレームに対応するシーンの異なるオブジェクト及び/または部分に割り当てることができる。前述の実施形態及び実施態様では、これらの動作を同じフレーム周期(同時に並列)でまたは異なるフレーム周期(順次に並列)で行うことができる。
Claims (16)
- システムの起動を実行する方法であって、
ボード管理コントローラ(BMC)で、オペレーティングシステムで計算ノードをブートするための起動構成命令を受信し、
前記計算ノードは複数の計算ノードを含むスレッドに配置され、
前記BMCは前記複数の計算ノードへの通信を提供する複数の通信インターフェースを管理するように構成されており、
前記計算ノードの外部に格納されている基本入出力システム(BIOS)ファームウェアを実行するために、前記BMCから前記計算ノードのブートコントローラへ、前記複数の通信インターフェースのうち第1通信インターフェースを介してブート命令の送信を行い、
前記計算ノードによって実行される前記オペレーティングシステムのロードを開始するために、前記計算ノード上で前記BIOSファームウェアを実行し、
前記オペレーティングシステムに基づいて前記第1通信インターフェースを選択し、
前記BMCは、前記複数の通信インターフェースから選択された対応する通信インターフェースを介して、複数のオペレーティングシステムのそれぞれに制御信号を送達するスイッチとして構成され、
前記オペレーティングシステムの制御信号は、前記第1通信インターフェースを介して前記計算ノードに送達され、
実行のためにロードされている前記オペレーティングシステムとは異なる第1のオペレーティングシステムを使用した前記計算ノードによるアプリケーションの実行中に、前記計算ノードによって実行されているジョブを一時停止し、
前記計算ノードの状態をキャプチャして前記状態を格納し、
前記計算ノードの前記状態を別の計算ノードに転送し、
前記ジョブを再開するために、前記別の計算ノードで前記アプリケーションを実行するためのプログラム命令と、をさらに含み、
前記ジョブは、所定の一時停止点ではない選択された一時停止点で一時停止される、
方法。 - 前記計算ノードから、前記BIOSファームウェアを格納するストレージアドレスにアクセスする要求を前記BMCで受信し、
前記BIOSファームウェアを取得するために、前記計算ノードによる前記ストレージアドレスへのアクセスを促進し、
前記ストレージアドレスが前記BMCからの前記ブート命令に含まれる、
請求項1に記載の方法。 - 前記ブート命令の前記送信では、
前記BMCによってストレージアドレスにある前記BIOSファームウェアにアクセスし、
前記ストレージアドレスが前記BMCからの前記起動構成命令に含まれ、
前記計算ノードによる前記BIOSファームウェアの前記実行のための前記ブート命令に関連して、前記BMCから前記計算ノードに前記BIOSファームウェアを送信する、
請求項1に記載の方法。 - 前記BIOSファームウェアの前記実行では、
ストレージアドレスから前記計算ノードのシステムメモリへと前記オペレーティングシステムの少なくとも一部のロードを実行する、
請求項1に記載の方法。 - ストレージアドレスから前記計算ノードのシステムメモリへと前記オペレーティングシステムの前記少なくとも一部のロードでは、
実行のために前記計算ノードの前記システムメモリに前記オペレーティングシステムの第1の部分をロードし、
前記計算ノードによる前記オペレーティングシステムの前記実行中に、前記計算ノードがPCIeファブリックを介してアクセスするために、前記オペレーティングシステムの第2の部分をネットワークストレージにロードする、
請求項4に記載の方法。 - 前記スレッドは、ストリーミングアレイの複数のスレッドのうちの1つであり、
複数のラックアセンブリの各ラックアセンブリは、1つまたは複数のネットワークストレージ及び1つまたは複数のストリーミングアレイを含み、
前記1つまたは複数のストリーミングアレイのそれぞれは、1つまたは複数のスレッドを含み、
前記1つまたは複数のスレッド内の各計算スレッドは1つ以上の計算ノードを含む、
請求項1に記載の方法。 - データセンタのクラウド管理コントローラで、前記計算ノード上の前記オペレーティングシステムの1つまたは複数のイメージを管理することをさらに含む、
請求項1に記載の方法。 - ラックアセンブリを第1の構成から第2の構成に再構成するために、クラウド管理コントローラから前記ラックアセンブリのラックコントローラに再構成メッセージを送信し、
前記第1の構成内の前記ラックアセンブリは第1の複数のアプリケーションによって実装される第1優先のサービスを促進するように構成され、
前記第2の構成は第2の複数のアプリケーションによって実装される第2優先のサービスを促進するように構成され、
前記第2優先のサービスは前記第1優先のサービスよりも低い優先度を有し、
前記第2の構成での前記ラックアセンブリの構成を行い、
前記ラックアセンブリは1つまたは複数のネットワークストレージ及び1つまたは複数のストリーミングアレイを含み、
前記1つまたは複数のストリーミングアレイのそれぞれは、1つまたは複数の計算スレッドを含み、
前記1つまたは複数の計算スレッドのそれぞれは1つ以上の計算ノードを含み、
前記第2の構成内の前記ラックアセンブリの前記構成では、
PCIeファブリックが前記ラックアセンブリ内の第1の計算ノードと第2の計算ノードとの間の直接通信を促進するように、前記PCIeファブリックを前記ラックアセンブリ内の複数の計算ノード間の直接通信のために前記第2の構成で再構成し、
前記第1の構成において、前記PCIeファブリックは前記複数の計算ノードと前記ラックアセンブリの少なくとも1つのネットワークストレージとの間の直接アクセスのために構成される、方法。 - 前記クラウド管理コントローラで、複数のラックアセンブリを含むデータセンタによってサポートされる前記第1優先のサービスに対する需要の減少を検出することをさらに含み、
前記複数のラックアセンブリのそれぞれが、前記第1優先のサービスを促進する前記第1の構成で構成され、
前記クラウド管理コントローラが前記複数のラックアセンブリの構成を管理する、
請求項8に記載の方法。 - 前記第2の構成での前記ラックアセンブリの前記構成では、
前記第2優先のサービスの実行をサポートするように構成されたオペレーティングシステムを実行するために、前記ラックアセンブリの前記複数の計算ノードのそれぞれをリブートし、
計算ノードのリブートは、
ボード管理コントローラ(BMC)で、前記オペレーティングシステムで前記計算ノードをブートするための起動構成命令を受信し、
前記計算ノードは第2の複数の計算ノードを含む計算スレッドに配置され、
前記BMCは前記第2の複数の計算ノードへの通信を提供する複数の通信インターフェースを管理するように構成されており、
基本入出力システム(BIOS)ファームウェアを実行するために、前記BMCから前記計算ノードのブートコントローラに前記複数の通信インターフェースのうち第1通信インターフェースを介してブート命令を送信し、
前記計算ノードにより実行される前記オペレーティングシステムをロードするために、前記計算ノード上で前記BIOSファームウェアを実行する、
請求項8に記載の方法。 - 前記第2の構成での前記ラックアセンブリの前記構成では、
前記ラックアセンブリと別のラックアセンブリとの間のネットワーク構成を変更し、
前記ネットワーク構成は、前記ラックアセンブリと前記別のラックアセンブリとの間の通信経路を定義する、
請求項8に記載の方法。 - システムの起動を実行するコンピュータプログラムを格納するコンピュータ可読媒体であって、
ボード管理コントローラ(BMC)で、オペレーティングシステムで計算ノードをブートするための起動構成命令を受信するためのプログラム命令であって、
前記計算ノードは複数の計算ノードを含むスレッドに配置され、
前記BMCは前記複数の計算ノードへの通信を提供する複数の通信インターフェースを管理するように構成されており、
前記計算ノードの外部に格納されている基本入出力システム(BIOS)ファームウェアを実行するために、前記BMCから前記計算ノードのブートコントローラへ、前記複数の通信インターフェースのうち第1通信インターフェースを介してブート命令の送信を行い、
前記計算ノードにより実行される前記オペレーティングシステムのロードを開始するために、前記計算ノード上で前記BIOSファームウェアを実行するためのプログラム命令と、を含み、
前記オペレーティングシステムに基づいて前記第1通信インターフェースを選択するためのプログラム命令をさらに含み、
前記BMCは、前記複数の通信インターフェースから選択された対応する通信インターフェースを介して、複数のオペレーティングシステムのそれぞれに制御信号を送達するスイッチとして構成され、
前記オペレーティングシステムの制御信号は、前記通信インターフェースを介して前記計算ノードに送達され、
実行のためにロードされている前記オペレーティングシステムとは異なる第1のオペレーティングシステムを使用した前記計算ノードによるアプリケーションの実行中に、前記計算ノードによって実行されているジョブを一時停止するためのプログラム命令と、
前記計算ノードの状態をキャプチャし、前記状態を格納するためのプログラム命令と、
前記計算ノードの前記状態を別の計算ノードに転送し、
前記ジョブを再開するために、前記別の計算ノードで前記アプリケーションを実行するためのプログラム命令と、をさらに含み、
前記ジョブは、所定の一時停止点ではない選択された一時停止点で一時停止される、
コンピュータ可読媒体。 - 前記計算ノードから、前記BIOSファームウェアを格納するストレージアドレスにアクセスするための要求を前記BMCで受信するためのプログラム命令と、
前記計算ノードが前記BIOSファームウェアを取得するために、前記ストレージアドレスへのアクセスを促進するためのプログラム命令と、をさらに含み、
前記ストレージアドレスが前記BMCからの前記ブート命令に含まれる、
請求項12に記載のコンピュータ可読媒体。 - 前記ブート命令を送信するための前記プログラム命令は、
前記BMCによって、ストレージアドレスにある前記BIOSファームウェアにアクセスし、
前記ストレージアドレスが前記BMCからの前記起動構成命令に含まれ、
前記計算ノードによる前記BIOSファームウェアの前記実行のための前記ブート命令と関連して、前記BMCから前記計算ノードに前記BIOSファームウェアを送信するためのプログラム命令を含む、
請求項12に記載のコンピュータ可読媒体。 - 前記BIOSファームウェアを実行するための前記プログラム命令は、
ストレージアドレスから前記計算ノードのシステムメモリへと前記オペレーティングシステムの少なくとも一部をロードするためのプログラム命令を含む、
請求項12に記載のコンピュータ可読媒体。 - システムの起動を実行する方法であって、
ボード管理コントローラ(BMC)で、オペレーティングシステムで計算ノードをブートするための起動構成命令を受信し、
前記計算ノードは複数の計算ノードを含むスレッドに配置され、
前記BMCは前記複数の計算ノードへの通信を提供する複数の通信インターフェースを管理するように構成されており、
前記計算ノードの外部に格納されている基本入出力システム(BIOS)ファームウェアを実行するために、前記BMCから前記計算ノードのブートコントローラへ、前記複数の通信インターフェースのうち第1通信インターフェースを介してブート命令の送信を行い、
前記計算ノードによって実行される前記オペレーティングシステムのロードを開始するために、前記計算ノード上で前記BIOSファームウェアを実行し、
実行のためにロードされている前記オペレーティングシステムとは異なる第1のオペレーティングシステムを使用した前記計算ノードによるアプリケーションの実行中に、前記計算ノードによって実行されているジョブを一時停止し、
前記計算ノードの状態をキャプチャして前記状態を格納し、
前記計算ノードの前記状態を別の計算ノードに転送し、
前記ジョブを再開するために、前記別の計算ノードで前記アプリケーションを実行するためのプログラム命令と、をさらに含み、
前記ジョブは、所定の一時停止点ではない選択された一時停止点で一時停止される、方法。
Applications Claiming Priority (3)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| US17/694,023 US12045627B2 (en) | 2022-03-14 | 2022-03-14 | Sled level boot management control of compute nodes for context switching using boot controllers |
| US17/694,023 | 2022-03-14 | ||
| PCT/US2023/063170 WO2023177965A1 (en) | 2022-03-14 | 2023-02-23 | Sled level boot management control of compute nodes for context switching using boot controllers |
Publications (2)
| Publication Number | Publication Date |
|---|---|
| JP2025509628A JP2025509628A (ja) | 2025-04-11 |
| JP7760075B2 true JP7760075B2 (ja) | 2025-10-24 |
Family
ID=85776216
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| JP2024554891A Active JP7760075B2 (ja) | 2022-03-14 | 2023-02-23 | ブートコントローラを使用したコンテキストスイッチングのための計算ノードのスレッドレベルブート管理制御 |
Country Status (5)
| Country | Link |
|---|---|
| US (2) | US12045627B2 (ja) |
| EP (1) | EP4494000A1 (ja) |
| JP (1) | JP7760075B2 (ja) |
| CN (1) | CN119137577A (ja) |
| WO (1) | WO2023177965A1 (ja) |
Families Citing this family (3)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| US10137361B2 (en) * | 2013-06-07 | 2018-11-27 | Sony Interactive Entertainment America Llc | Systems and methods for using reduced hops to generate an augmented virtual reality scene within a head mounted system |
| CN114007383B (zh) * | 2021-10-27 | 2023-08-18 | 广州小鸡快跑网络科技有限公司 | 一种游戏手柄及其冷却方法 |
| US20250094177A1 (en) * | 2023-09-15 | 2025-03-20 | Microsoft Technology Licensing, Llc | Firmware access agent for computing device |
Citations (6)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| WO2013069136A1 (ja) | 2011-11-10 | 2013-05-16 | 富士通株式会社 | 情報処理装置、情報処理方法、情報処理プログラム、および同プログラムを記録した記録媒体 |
| JP2015512535A (ja) | 2012-03-31 | 2015-04-27 | インテル・コーポレーション | システム変更後におけるコンピューティング装置の適切な動作を確認するための方法及びシステム |
| US20150263743A1 (en) | 2012-10-19 | 2015-09-17 | Asahi Kasei Microdevices Corporation | D/a converter |
| US20190020540A1 (en) | 2017-07-14 | 2019-01-17 | Quanta Cloud Technology Inc. | Mechanism for hardware configuration and software deployment |
| US20190196907A1 (en) | 2019-03-05 | 2019-06-27 | Intel Corporation | Compression techniques for distributed data |
| US20210255979A1 (en) | 2020-02-14 | 2021-08-19 | Sony Interactive Entertainment Inc. | Network architecture providing high speed storage access through a pci express fabric between a compute node and a storage server within an array of compute nodes |
Family Cites Families (14)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| JP3794151B2 (ja) * | 1998-02-16 | 2006-07-05 | 株式会社日立製作所 | クロスバースイッチを有する情報処理装置およびクロスバースイッチ制御方法 |
| GB2508895A (en) * | 2012-12-14 | 2014-06-18 | Ibm | Bootloader for booting a computer into a second operating system that is hidden from a first host operating system |
| JP2015171128A (ja) * | 2014-03-11 | 2015-09-28 | 富士通株式会社 | パケットの取得方法、パケット取得装置、及び、パケット取得プログラム |
| WO2015176262A1 (zh) * | 2014-05-22 | 2015-11-26 | 华为技术有限公司 | 一种节点互连装置、资源控制节点和服务器系统 |
| WO2016018293A1 (en) | 2014-07-30 | 2016-02-04 | Hewlett-Packard Development Company, L.P. | Configuring managed server |
| US9795879B2 (en) * | 2014-12-31 | 2017-10-24 | Sony Interactive Entertainment America Llc | Game state save, transfer and resume for cloud gaming |
| US10333772B2 (en) * | 2016-06-07 | 2019-06-25 | Quanta Computer Inc. | Remote keyboard-video-mouse technologies |
| US11461085B2 (en) * | 2019-03-06 | 2022-10-04 | Quanta Computer Inc. | Firmware upgrade method in multiple node storage system |
| US10981059B2 (en) * | 2019-07-03 | 2021-04-20 | Sony Interactive Entertainment LLC | Asset aware computing architecture for graphics processing |
| TWI713325B (zh) * | 2019-09-17 | 2020-12-11 | 宜鼎國際股份有限公司 | 可遠端控制電子設備的系統及方法 |
| US11360783B2 (en) * | 2019-12-27 | 2022-06-14 | Quanta Computer Inc. | Method and system for booting from a split BIOS image |
| US12189468B2 (en) * | 2021-05-27 | 2025-01-07 | Intel Corporation | Cloud scale server reliability management |
| US11927999B2 (en) * | 2021-10-14 | 2024-03-12 | Hewlett Packard Enterprise Development Lp | Server network interface card-located baseboard management controllers |
| US12405831B2 (en) * | 2021-11-19 | 2025-09-02 | Microsoft Technology Licensing, Llc | Mapping an application signature to designated cloud resources |
-
2022
- 2022-03-14 US US17/694,023 patent/US12045627B2/en active Active
-
2023
- 2023-02-23 JP JP2024554891A patent/JP7760075B2/ja active Active
- 2023-02-23 EP EP23713810.2A patent/EP4494000A1/en active Pending
- 2023-02-23 CN CN202380037681.6A patent/CN119137577A/zh active Pending
- 2023-02-23 WO PCT/US2023/063170 patent/WO2023177965A1/en not_active Ceased
-
2024
- 2024-07-23 US US18/781,920 patent/US20240378061A1/en active Pending
Patent Citations (6)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| WO2013069136A1 (ja) | 2011-11-10 | 2013-05-16 | 富士通株式会社 | 情報処理装置、情報処理方法、情報処理プログラム、および同プログラムを記録した記録媒体 |
| JP2015512535A (ja) | 2012-03-31 | 2015-04-27 | インテル・コーポレーション | システム変更後におけるコンピューティング装置の適切な動作を確認するための方法及びシステム |
| US20150263743A1 (en) | 2012-10-19 | 2015-09-17 | Asahi Kasei Microdevices Corporation | D/a converter |
| US20190020540A1 (en) | 2017-07-14 | 2019-01-17 | Quanta Cloud Technology Inc. | Mechanism for hardware configuration and software deployment |
| US20190196907A1 (en) | 2019-03-05 | 2019-06-27 | Intel Corporation | Compression techniques for distributed data |
| US20210255979A1 (en) | 2020-02-14 | 2021-08-19 | Sony Interactive Entertainment Inc. | Network architecture providing high speed storage access through a pci express fabric between a compute node and a storage server within an array of compute nodes |
Also Published As
| Publication number | Publication date |
|---|---|
| WO2023177965A1 (en) | 2023-09-21 |
| US20240378061A1 (en) | 2024-11-14 |
| US12045627B2 (en) | 2024-07-23 |
| US20230289194A1 (en) | 2023-09-14 |
| EP4494000A1 (en) | 2025-01-22 |
| JP2025509628A (ja) | 2025-04-11 |
| CN119137577A (zh) | 2024-12-13 |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| JP7724046B2 (ja) | ラックアセンブリ及びネットワークアーキテクチャ | |
| JP7760075B2 (ja) | ブートコントローラを使用したコンテキストスイッチングのための計算ノードのスレッドレベルブート管理制御 | |
| US10585702B2 (en) | System and method for supporting metered clients with manycore | |
| CN107231815B (zh) | 用于图形渲染的系统和方法 | |
| CN113312142B (zh) | 虚拟化处理系统、方法、装置及设备 | |
| CN111420397A (zh) | 用于云游戏的游戏状态保存、传输和恢复 | |
| US10967274B1 (en) | Dynamic management of processes executing on computing instances | |
| JP7646949B2 (ja) | 人工知能に基づくネットワークストレージゲームの割り当て | |
| US20230199062A1 (en) | Data center wide network storage load balancing | |
| US20250209013A1 (en) | Dynamic server rebalancing | |
| US20190050256A1 (en) | Systems and methods for distributed management of computing resources | |
| US11991242B1 (en) | Efficient distributed computing using edge computing devices | |
| US11956163B1 (en) | Dynamically allocating network resources according to workload prioritization based on engagement and resource requirements | |
| US20230342324A1 (en) | Smart network interface controller serial communication redirection | |
| WO2025170846A1 (en) | Methods for integrating a game console card to interface with a host system |
Legal Events
| Date | Code | Title | Description |
|---|---|---|---|
| A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20241113 |
|
| A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20241113 |
|
| A871 | Explanation of circumstances concerning accelerated examination |
Free format text: JAPANESE INTERMEDIATE CODE: A871 Effective date: 20241113 |
|
| A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20250422 |
|
| RD03 | Notification of appointment of power of attorney |
Free format text: JAPANESE INTERMEDIATE CODE: A7423 Effective date: 20250509 |
|
| RD04 | Notification of resignation of power of attorney |
Free format text: JAPANESE INTERMEDIATE CODE: A7424 Effective date: 20250515 |
|
| A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20250620 |
|
| TRDD | Decision of grant or rejection written | ||
| A01 | Written decision to grant a patent or to grant a registration (utility model) |
Free format text: JAPANESE INTERMEDIATE CODE: A01 Effective date: 20250916 |
|
| A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20251014 |
|
| R150 | Certificate of patent or registration of utility model |
Ref document number: 7760075 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R150 |