JP4963855B2 - ネットワークコンピューティングシステムおよびマルチプロセッサコンピュータ - Google Patents

ネットワークコンピューティングシステムおよびマルチプロセッサコンピュータ Download PDF

Info

Publication number
JP4963855B2
JP4963855B2 JP2006087146A JP2006087146A JP4963855B2 JP 4963855 B2 JP4963855 B2 JP 4963855B2 JP 2006087146 A JP2006087146 A JP 2006087146A JP 2006087146 A JP2006087146 A JP 2006087146A JP 4963855 B2 JP4963855 B2 JP 4963855B2
Authority
JP
Japan
Prior art keywords
resource
computer
hardware
network
request
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
Application number
JP2006087146A
Other languages
English (en)
Other versions
JP2007264886A (ja
Inventor
千里 沼岡
健 久夛良木
公之 茶谷
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.)
Sony Interactive Entertainment Inc
Original Assignee
Sony Interactive Entertainment Inc
Sony Computer Entertainment Inc
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
Application filed by Sony Interactive Entertainment Inc, Sony Computer Entertainment Inc filed Critical Sony Interactive Entertainment Inc
Priority to JP2006087146A priority Critical patent/JP4963855B2/ja
Priority to PCT/JP2006/319677 priority patent/WO2007110986A1/ja
Publication of JP2007264886A publication Critical patent/JP2007264886A/ja
Application granted granted Critical
Publication of JP4963855B2 publication Critical patent/JP4963855B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

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/5061Partitioning or combining of resources
    • G06F9/5072Grid computing

Landscapes

  • Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Software Systems (AREA)
  • Theoretical Computer Science (AREA)
  • Mathematical Physics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Multi Processors (AREA)

Description

この発明は、マルチプロセッサコンピュータおよびネットワークコンピューティングシステムに関する。この発明は特に、ネットワーク上の複数のコンピュータによる分散処理の技術に関する。
分散コンピューティングの一形態として、グリッドコンピューティングと呼ばれる手法が近年よく利用される。グリッドコンピューティングは、1台では性能の限られたコンピュータを、ネットワークを介して複数結合することにより、仮想的な高性能マルチプロセッシングシステムを構築する方法である。グリッドコンピューティングの利用者は、この仮想的なマルチプロセッシングシステムの提供するプロセッサやメモリといったリソースを使って効率的なコンピューティングを実現できる。
グリッドコンピューティングにおいては、基本的に異機種PCを結合することが頻繁に行われる。このため、一般的には、それぞれのコンピュータに対してタスク(「ジョブ」または「プロセス」ともいう)を割り当てるためのインタフェースを用意し、このインタフェースを介して、各コンピュータのリソースを割り当てることになる。
ここで、リソースに対するタスクの割り当て頻度が比較的低い場合にはタスクスケジューリングの問題は少ない。この場合、複数のコンピュータに対していったんタスクが割り当てられると、各タスクが終了するまでプロセッサをほぼ占有できるからである。
しかしながら、各プロセッサの性能が比較的高く、一つのプロセッサで一つのタスクの実行に要する時間が比較的短いような場合、ネットワーク中に分散されたリソースの管理やタスクスケジューリングの効率がシステムの全体性能に与える影響は大きい。実際、近年のワンチップマルチプロセッサは従来の汎用プロセッサに比較して飛躍的に性能が向上しているため、リソース管理の向上やタスクスケジューリングの高効率化は避けて通れない課題となりつつある。また、複数のコンピュータによる分散処理をより多くのコンピュータユーザへ広められるようなシステムの枠組みが構築されなければ、タスクスケジューリングの高効率化も望めない。
本発明者は以上の課題に基づき本発明をなしたもので、その目的は、ネットワーク上のハードウェアリソースを効率よく利用できるようにするための仕組みを構築する点にある。
上記課題を解決するために、本発明のある態様のネットワークコンピューティングシステムは、相互にネットワークで接続された複数のコンピュータを含むシステムであって、複数のコンピュータは、それぞれがローカルメモリを有して独立に動作する複数のプロセッサを含んだマルチプロセッサにおけるいずれかのプロセッサにより、ネットワーク上のコンピュータからネットワークを介して提供されることが可能となっているハードウェアリソースの情報を受信してハードウェアリソース利用要求を受けたときは管理するハードウェアリソースの提供を処理するリソースマネージャをローカルメモリにロードされた状態で動作させるコンピュータと、それぞれがローカルメモリを有して独立に動作する複数のプロセッサを含んだマルチプロセッサにおけるいずれかのプロセッサにより、ネットワーク上のコンピュータからハードウェアリソース利用要求を受信してリソースマネージャの仲介によって提供されるハードウェアリソースをハードウェアリソース利用要求に対して割り当てるリソーススケジューラをローカルメモリにロードされた状態で動作させるコンピュータと、他のコンピュータへハードウェアリソースの提供が可能となったときにハードウェアリソースの情報をリソースマネージャに送信するとともに、他のコンピュータのハードウェアリソースを利用する場合にはハードウェアリソースの利用要求をリソーススケジューラに送信するリソースマネージメントクライアントを動作させるクライアントコンピュータと、ネットワーク上のコンピュータが他のコンピュータとの間でハードウェアリソースの提供および利用が実行されたときに、提供または利用されたリソース量の情報と提供者および利用者を特定するために必要な情報とをリソースマネージメントクライアントから受信し、利用料の精算を処理するクリアリングハウスコンピュータと、を含む。
ここで「マルチプロセッサ」は、ワンチップ化されたマルチプロセッサであってもよい。「プロセッサ」は、割り込み処理なしに独立して動作するものであってもよく、「複数のプロセッサ」は互いに非同期で処理を実行するものであってもよい。「ハードウェアリソース」としては様々なハードウェアが考え得るが、たとえば複数のプロセッサのうちのいずれかであってもよいし、複数のマルチプロセッサを備えるコンピュータにおいてはそのいずれかのマルチプロセッサを指してもよい。あるいは、メモリやハードディスクなどの記憶媒体の一部や、無線通信などの通信デバイス、外部周辺機器などであってもよい。
この態様によれば、マルチプロセッサコンピュータにおいて遊休リソースが生じたときにはリソースマネージャへ遊休リソースの提供が可能であることを示すリソース情報を送信し、逆に他のコンピュータの遊休リソースを利用すべき場面ではリソーススケジューラへリソースの利用要求を送信する。これにより、クライアントとなるマルチプロセッサコンピュータにおいて、リソースの利用状況に応じてリソースの提供と利用を適宜切り替えることができる。ネットワーク上の他のコンピュータにおいてリソースマネージャとリソーススケジューラとがそれぞれ異なるプロセッサに分散されて独立して動作するので、迅速に効率よくリソースを提供し、利用することができる。こうした遊休リソースの提供と利用に対して利用料の精算が処理され、リソースの提供者と利用者の双方に利益が担保されるので、リソースの提供と利用を促進させることができる。
本発明の別の態様は、マルチプロセッサコンピュータである。このマルチプロセッサコンピュータは、それぞれがローカルメモリを有して独立に動作する複数のプロセッサを含んだマルチプロセッサと、ネットワーク上のコンピュータからハードウェアリソース利用要求を受信してリソースマネージャの仲介によって提供されるハードウェアリソースをハードウェアリソース利用要求に対して割り当てるリソーススケジューラが動作する他のマルチプロセッサコンピュータとの間でデータを送受信するとともに、ネットワーク上のコンピュータのハードウェアリソースの提供および利用があったときにその利用料の精算を処理するクリアリングハウスコンピュータとの間でデータを送受信するネットワーク通信部と、を備える。マルチプロセッサは、他のマルチプロセッサコンピュータのハードウェアリソースを利用する場合にハードウェアリソースの利用要求をネットワーク上のいずれかのマルチプロセッサコンピュータで動作するリソーススケジューラに送信するとともに他のコンピュータのハードウェアリソースを利用したときはその利用要求の内容および利用したリソース量の情報をクリアリングハウスコンピュータへ送信するリソースマネージメントクライアントが動作するプロセッサを含む。
この態様においても、マルチプロセッサコンピュータにおいて他のコンピュータの遊休リソースを利用すべき場面では利用要求を送信することによりリソースの提供を受けることができる。このとき、利用要求の内容と利用したりソース量をクリアリングハウスコンピュータへ送信するので、クリアリングハウスコンピュータによる利用料の精算処理がなされる。こうした遊休リソースの提供と利用に対して利用料の精算が処理され、リソースの提供者と利用者の双方に利益が担保されるので、リソースの提供と利用を促進させることができる。
なお、以上の構成要素の任意の組合せや、本発明の構成要素や表現を方法、装置、システム、コンピュータプログラム、コンピュータプログラムを格納した記録媒体、データ構造などの間で相互に置換したものもまた、本発明の態様として有効である。
本発明によれば、ネットワーク上のハードウェアリソースの提供と利用の促進を図るシステムを構築することができる。
(第1の実施の形態)
本実施の形態におけるネットワークコンピューティングシステムは、複数のプロセッサを内蔵した複数のコンピュータがネットワークに接続されて構成される。各コンピュータによる協働により本実施の形態におけるリアルタイムリソースマネージメントが実現される。まず、複数のプロセッサを内蔵した各コンピュータの基本構成を説明してから、システム全体を説明する。
図1は、ワンチップマルチプロセッサを利用したネットワークコンピュータの基本構成の一例を示す。ネットワークコンピュータ10は、マルチプロセッサ20、RF処理部29、AD変換器28、ブリッジ19、ネットワークインタフェース18、不揮発性メモリ21、DVDドライバ22、USB23、グラフィックスカード25、メインメモリ17、アンテナ31、コントローラ24、モニタ27を備える。
マルチプロセッサ20は、一つのメインプロセッサ100、複数のサブプロセッサ102、I/Oインタフェース104、メモリコントローラ106を備え、これらがリングバス108に接続されてそれぞれが並列的に動作するよう構成される。本実施の形態におけるマルチプロセッサ20は、サブプロセッサ102として6個のプロセッサを含む。各サブプロセッサ102は、たとえば「SPU0」や「SPU1」といったIDによってリングバス108上で一意に認識され、どのプロセッサがどのプロセッサにリングバス108を経由してリクエストを出しているかを特定できるようにされている。
メモリコントローラ106は、メインメモリ17に接続されるとともに、各サブプロセッサ102によるメインメモリ17へのアクセスを仲介する。なお、本実施の形態においては、メインメモリ17がマルチプロセッサ20の外部に設けられる例を説明するが、変形例としてはメインメモリ17がマルチプロセッサ20の内部に含まれる構成であってもよい。I/Oインタフェース104は、各種I/Oデバイスと接続するためのブリッジ19、グラフィックスカード25、ワイヤレス通信を処理するRF処理部29などが接続され、メインプロセッサ100やサブプロセッサ102による外部装置の制御や外部装置との通信を仲介する。
ブリッジ19には、ネットワークインタフェース18、不揮発性メモリ21、DVDドライバ22、USB23が接続される。ネットワークインタフェース18は、家庭内LANやインターネットなどのネットワークとの通信を仲介する。USB23は、コントローラ24を介してキーボードなどの周辺機器との接続を仲介する。グラフィックスカード25は、フレームメモリ26を含み、モニタ27へ画像信号を出力する。RF処理部29は、ダウンコンバータ30を含むとともに、AD変換器28を介してI/Oインタフェース104に接続される。RF処理部29は、アンテナ31を介して外部とのワイヤレス通信を確立する。
メインプロセッサ100は、プロセッサコア110、L1キャッシュ112、L2キャッシュ114、サブメモリコントローラ116を含む。サブメモリコントローラ116は、DMAC(Direct Memory Access Controller)118を内蔵する。メインプロセッサ100においてはオペレーティングシステム(以下、「OS」という。)が動作し、そのOSの基本処理に基づいて複数のサブプロセッサ102が動作する。
複数のサブプロセッサ102は、それぞれプロセッサコア120、ローカルメモリ122、サブメモリコントローラ126を含む。サブメモリコントローラ126は、DMAC128を内蔵する。複数のサブプロセッサ102は、それぞれ固有のローカルメモリ122を有するため、目的のプログラムがローカルメモリ122にいったんロードされれば、それ以降は必要のない限りメインメモリ17にアクセスしなくとも目的の処理を継続することができる。また、サブプロセッサ102は、割り込みによる処理の中断が発生しない設計となっているため、後述する各種プロセスを高速で実行し、リソースの利用と提供をネットワーク上でリアルタイムに分散処理するのに適している。
サブプロセッサ102では、たとえばデバイスドライバやシステムプログラムの一部など、OSの一部をなすプログラムが実行されてもよいし、サブプロセッサ102全体を制御する専用のOSが動作してもよい。メインプロセッサ100とサブプロセッサ102は、それぞれ異なる命令セットを有する命令セットアーキテクチャ(ISA)にて構成される。メインプロセッサ100では、そのコンピュータに含まれるリソースの使用のみを管理するプログラムが動作するのに対し、サブプロセッサ102では、ネットワーク上の他のコンピュータに含まれるリソースの利用や提供を管理する後述のプログラムが動作する。
図2は、本実施の形態におけるネットワークコンピューティングシステムの一例を示す。ネットワークコンピューティングシステム50には、マルチプロセッサ20をそれぞれ含むサーバ41およびサーバ54、スイッチングネットワーク42で接続された複数のマルチプロセッサ20を含むハイパフォーマンスコンピュータ52、マルチプロセッサ20を含むパーソナルコンピュータ53、マルチプロセッサ20を含む家電品55、マルチプロセッサ20以外のプロセッサを含むパーソナルコンピュータ56がネットワーク51に接続されるかたちで含まれる。ネットワーク51は、インターネットであってもよいし、家庭内ネットワークなどのLANであってもよい。なお、本図におけるネットワークコンピューティングシステム50の構成は例示にすぎず、そのハードウェア構成およびネットワーク51への接続台数は任意である。
サーバ41のマルチプロセッサ20は、複数のサブプロセッサ102と一つのメインプロセッサ100を含むが、サーバ41に含まれる各構成は図1のネットワークコンピュータ10に含まれる各構成と基本的に同じである。サーバ41では、各サブプロセッサ102において、本実施の形態のリアルタイムリソースマネージメントを実行するためのプロセスが動作する。たとえば、リソースマネージャのプログラムが1番目のサブプロセッサ102で動作し、リソーススケジューラのプログラムが2番目のサブプロセッサ102で動作し、リソースマネージメントクライアントのプログラムが3番目のサブプロセッサ102で動作する。変形例としては、リソースマネージャのプログラムがサーバ41に含まれる複数のサブプロセッサ102の一つで動作し、リソーススケジューラのプログラムがサーバ54に含まれるサブプロセッサ102の一つで動作するように構成してもよい。リソースマネージメントクライアントは、ネットワークコンピューティングシステム50に含まれるすべてのコンピュータで動作してもよい。
クリアリングハウス77は、各コンピュータによるリソースの利用と提供の状況を記録し、その利用に対する料金の課金を処理する。運用監視サーバ98は、リソースの利用要求に対する割当の実績や効率を管理する。以下、リソースマネージャ、リソーススケジューラ、リソースマネージメントクライアントの動作について詳述した後で、クリアリングハウス77と運用監視サーバ98の動作を詳述する。
(リソースマネージャ)
本実施の形態におけるリソースマネージャは、ネットワーク51に接続されたいずれかのコンピュータにおけるマルチプロセッサ20やマルチプロセッサ20に含まれるサブプロセッサ102などのコンピューティングリソースが他のコンピュータへ提供可能か否かを管理するために一つのサブプロセッサ102で動作するプロセスである。いずれかのコンピューティングリソースが他のコンピュータへ提供可能な状況になったとき、リソースマネージャはその提供可能なリソースを有するコンピュータからリソース情報をネットワーク51経由で受信する。
リソースマネージャは、後述するリソーススケジューラと連携して動作する。本実施の形態のリソースマネージャは、リソーススケジューラからリソースの利用要求を受け取り、その要求において指定された分のリソースを割り当てる処理を実行してリソーススケジューラへ返答する。ここで、リソースの利用要求に対して複数のコンピュータに分散したリソースを割り当てる場合、リソースマネージャはそれぞれのコンピュータのスペックに応じて利用要求を分割し、リソーススケジューラに返答する。
リソースマネージャは、提供可能なリソースをリソースタイプで分類するリソース管理テーブルを有する。リソースマネージャは、たとえばリソースタイプごとの割当可能リソース数であるリソースカウンタの値を、リソース割当を実行するたびに減算する。これにより、特定のコンピュータ上の複数のリソースが同時に割り当てられたり、同じコンピュータ上のリソースばかりが何度も割り当てられたりすることを回避でき、特定のコンピュータへの集中的な負担を抑制することができる。
リソースマネージャは、リソースの利用要求に対してリソースを割り当てることができない場合、割当不可を示す応答をリソーススケジューラに返す。変形例においては、リソースマネージャは、同一または異なるサーバ上のサブプロセッサで動作する少なくとも一部のリソースマネージャを管理するマネージャ管理テーブルを保持する。リソースマネージャは、リソース管理テーブルで管理するリソースの量を示すリソース量情報を生成し、マネージャ管理テーブルで管理する他のリソースマネージャとの間で互いのリソース量情報を定期的に交換する。リソースマネージャは、マネージャ管理テーブルを参照し、より多くの利用可能リソースを管理しているリソースマネージャを選択し、選択したリソースマネージャの識別情報を、対応するリソーススケジューラに返す。
(リソーススケジューラ)
本実施の形態におけるリソーススケジューラは、一つのサブプロセッサを占有して実行されるプロセスである。リソーススケジューラは、ネットワーク51に接続されたいずれかのコンピュータからリソースの利用要求を受信すると、その利用要求をリソースマネージャに非同期で送信する。リソーススケジューラは、送信した利用要求に対してリソースが割り当てられるのを待つとともに、リソースマネージャによってリソースが割り当てられた後、その割り当てられたリソースを保有するコンピュータに対して利用要求を転送する。リソースを保有するコンピュータが複数に分かれる場合、リソースマネージャが利用要求を複数に分割し、これら分割された利用要求をそれぞれ該当するコンピュータに対してリソーススケジューラが転送する。スケジューリングキューは、リソーススケジューラの動作するサブプロセッサ102内のローカルメモリ122に保持されることが望ましいが、メインメモリ17に保持されてもよい。
リソーススケジューラのスケジューリングアルゴリズムとしては、当業者が知りうるあらゆるスケジューリング方法を採用可能であり、たとえば利用要求を到着順に処理するFIFO型のスケジューリングを採用してもよい。FIFO型のスケジューリングにおいては、リソースの利用要求に対してリソースマネージャがリソースを割り当てられなかった場合に、利用要求を発したコンピュータにその利用要求が特定できるようなかたちで割当不可を示す情報を送信する。また、別のスケジューリング方法としては、リソースマネージャが、対応するリソースマネージャから別のリソースマネージャの識別情報を受信していればそのリソースマネージャに利用要求を非同期で送信し、その利用要求に対する返答があった場合にはその割り当てにしたがってリソースを保有するコンピュータに利用要求を送信してもよい。さらに別のスケジューリング方法としては、優先度に基づいて利用要求を処理する方法を採用してもよい。この場合、リソース制約がより多く含まれる利用要求を優先的に処理する。逆に、リソース制約がより少ない利用要求を優先的に処理してもよい。あるいは、利用要求に優先度を付加し、その優先度に高さに応じて処理順序を決定してもよい。この場合、優先度に応じたスケジューリングキューを持つようにしてもよい。
(リソースマネージメントクライアント)
本実施の形態におけるリソースマネージメントクライアントは、本実施の形態におけるネットワークコンピューティングシステムに含まれる各コンピュータ上でクライアントとして動作するプロセスである。リソースマネージメントクライアントは、たとえば以下の少なくとも3つの役割を持つ。
(1)リソースマネージメントクライアントは、自己が管理するマルチプロセッサ20において外部提供が可能なリソースが発生したときに、提供が可能であるリソースの内容を示す提供リソース情報をいずれかのリソースマネージャに対して送信する。リソースマネージメントクライアントが複数のマルチプロセッサを管理している場合も同様である。たとえば、図2のハイパフォーマンスコンピュータ52においては、ネットワークインタフェースNICにつながったマルチプロセッサでのみリソースマネージメントクライアントを動作させ、スイッチングネットワーク42に接続されたすべてのマルチプロセッサのリソースを管理してもよい。
(2)リソースマネージメントクライアントの動作するコンピュータ上でリソース不足が生じた場合、リソースマネージメントクライアントはネットワーク51上のいずれかのリソーススケジューラに対して利用要求を送信する。
(3)リソースマネージメントクライアントは、他のコンピュータからの利用要求を受信したとき、その利用要求を送信したコンピュータに対して自己が管理するマルチプロセッサ20に含まれるリソースを割り当てる。
図2のパーソナルコンピュータ56のようにマルチプロセッサ20以外のプロセッサを内蔵するコンピュータにおいては、上記(1)と(3)の役割を省略した簡易版リソースマネージメントクライアントを動作させ、マルチプロセッサ20を内蔵したコンピュータが複数接続されたネットワーク51上で利用要求を出すことによって、マルチプロセッサ20を内蔵したコンピュータに処理を代行させる。
図3〜5には、リソースマネージャ、リソーススケジューラ、リソースマネージメントクライアントの3つのプロセスが1以上のマルチプロセッササーバ上に配置される例がそれぞれ示される。
図3は、一つのマルチプロセッサ20を含むサーバ60において、リソースマネージャとリソーススケジューラがそれぞれ動作する例を示す。本図の例では、マルチプロセッサ20に含まれる二つのサブプロセッサ102のうち、「SPU1」のIDが付与されたサブプロセッサ102においてリソースマネージャ202が動作し、「SPU2」のIDが付与されたサブプロセッサ102においてリソーススケジューラ206が動作する。
図4は、高速ネットワークまたは高速バスで結合された二つのマルチプロセッサ20を含むサーバ62において、リソースマネージャとリソーススケジューラがそれぞれ動作する例を示す。本図の例では、二つのマルチプロセッサ20にまたがるように二つのサブプロセッサ102が選択され、それぞれでリソースマネージャ202とリソーススケジューラ206が動作する。すなわち、一方のマルチプロセッサ20に含まれる「SPU1」のIDが付与されたサブプロセッサ102においてリソースマネージャ202が動作し、他方のマルチプロセッサ20に含まれる「SPU2」のIDが付与されたサブプロセッサ102においてリソーススケジューラ206が動作する。二つのマルチプロセッサ20は、高速バスまたは高速ネットワークで結合される。
図5は、ネットワーク51上に分散された二つのサーバ64,66のそれぞれにおけるサブプロセッサ102上で、リソースマネージャとリソーススケジューラが動作する例を示す。本図の例では、二つのサーバ64,66にまたがるように二つのサブプロセッサ102が選択され、それぞれでリソースマネージャ202とリソーススケジューラ206が動作する。すなわち、一方のサーバ64のマルチプロセッサ20に含まれる「SPU2」のIDが付与されたサブプロセッサ102においてリソースマネージャ202が動作し、他方のサーバ66のマルチプロセッサ20に含まれる「SPU3」のIDが付与されたサブプロセッサ102においてリソーススケジューラ206が動作する。
以上説明した図3〜5の各例を比較すると、通信効率の高さは図3、図4、図5の順に高くなる。本実施の形態では、リソースマネージャ202とリソーススケジューラ206が本質的に非同期で独立して動作するため、図3〜図5のいずれの形態でも基本原理を変えることなく動作させることができる。
図6は、リソーススケジューラ、リソースマネージャ、リソースマネージメントクライアントの3つのプロセスにおける処理手順を示す。本図ではクリアリングハウス77が一つだけ示されるが、変形例としてネットワーク51内に複数のクリアリングハウス77が含まれてもよい。
(リソースマネージメントクライアントの認証)
クリアリングハウス77は、認証したリソースマネージメントクライアント200からの情報のみ受理し、虚偽の情報の受理を拒否する。リソースマネージメントクライアント200の認証は、リソースマネージメントクライアント200が所定のクリアリングハウス77へ最初にアクセスしたときに実行される。この認証処理では、リソースマネージメントクライアント200が、正規に作られたソフトウェアであることを証明するための証明書またはリソースマネージメントクライアントIDをクリアリングハウス77に送信する。この証明書がクリアリングハウス77によって正しく認証された場合、そのリソースマネージメントクライアント200に対して電子署名が送られる。その認証されたリソースマネージメントクライアント200は、クリアリングハウス77と通信する場合に電子署名が添付されたメッセージを送信する。
(リソース提供者の登録)
リソースの提供者は、提供設定インタフェース220を通じて、そのコンピュータのリソースの一部または全部を他のコンピュータに対して提供するかどうかを設定する。提供設定インタフェース220は、リソースマネージメントクライアント200と一体的に構成されてもよいし、リソースマネージメントクライアント200と分離したソフトウェアとして構成されてもよい。提供設定インタフェース220は、提供するリソースが他のコンピュータによって利用された場合に支払われる配当金の評価額を計算し、コンピュータの画面に表示する。リソース提供者は、表示された評価額を確認した上で、サブプロセッサ数、マルチプロセッサ数、メモリ容量、提供時間などのリソース提供量を提供設定インタフェース220を通じて設定する。リソース提供者のコンピュータで動作するリソースマネージメントクライアント200aの提供設定インタフェース220は、設定されたリソース提供内容、コンピュータの識別情報、および提供者の個人情報を含んだ提供リソース情報をネットワーク51経由でクリアリングハウス77に転送する(S2)。コンピュータの識別情報は、たとえばネットワーク51においてそのコンピュータに付与されたIPアドレスである。提供者の個人情報は、たとえば提供者の氏名、電話番号や電子メールアドレスなどの連絡先情報、口座番号やクレジットカード番号など、提供者の特定に必要な情報やその提供者への利用料金支払いに必要な情報である。コンピュータとクリアリングハウス77の間の通信はセキュアに保たれることが望ましい。クリアリングハウス77は、提供設定インタフェース220から受け取った情報を、管理するリソースの提供元を示す提供元リスト222に書き込む。
(リソース利用者の登録)
リソースの利用希望者は、クリアリングハウス77との間であらかじめ利用契約を結ぶ設定を利用設定インタフェース224を通じて入力する。利用設定インタフェース224は、リソースマネージメントクライアント200と一体的に構成されてもよいし、リソースマネージメントクライアント200と分離したソフトウェアとして構成されてもよい。リソースの利用希望者は、そのコンピュータで動作するリソースマネージメントクライアント200bを介してあらかじめ利用設定インタフェース224を通じてクリアリングハウス77との間で利用契約を結ぶ。利用契約として、利用者の氏名、電話番号や電子メールアドレスなどの連絡先情報、口座番号やクレジットカード番号など、利用者の特定に必要な情報やその利用者への利用料金の課金に必要な情報をクリアリングハウス77に登録する(S4)。これらの情報がクリアリングハウス77に登録されると、クリアリングハウス77は、リソース利用者を一意に特定して認証するための電子署名をリソース利用者のコンピュータに送る。
(リソースの提供と利用の手順)
まず、提供可能な遊休リソースが発生したコンピュータのリソースマネージメントクライアント200aは、選択したリソースマネージャ202に対して遊休リソースを登録するための提供リソース情報を送信する(S10)。
サブプロセッサの個数不足などのリソース不足を検出したコンピュータのリソースマネージメントクライアント200bは、他のコンピュータにおける遊休リソースの利用を要求するために、選択するリソーススケジューラ206に利用要求を出し(S12)、その利用要求がリソーススケジューラ206のリクエストキュー208に入れられる。この利用要求を送信する際、リソースマネージメントクライアント200bは、リソース利用者の電子署名が格納されているストレージエリアから電子署名を読み出し、利用要求とともにリソーススケジューラ206へ送信する。本図の例では、FIFOキューのかたちでリクエストキュー208が実装される。なお、リソーススケジューラ206はサブプロセッサ102を占有して処理が実行されるが、リクエストキュー208は、サブプロセッサ102内のローカルメモリ122にあってもよいし、またはメインメモリ17にあってもよい。
リソーススケジューラ206は、リクエストキュー208の先頭から利用要求を取り出し、対応するリソースマネージャ202に対して利用要求を非同期で送信する(S14)。すなわち、リソーススケジューラ206は、この利用要求に対するリソースマネージャ202の返答を待たず、このとき割当リソースキュー210が空であれば次の利用要求をリクエストキュー208から取り出して処理し、割当リソースキュー210が空でなければS16へ進む。なお、リソーススケジューラ206は、サブプロセッサ102を占有してその処理が実行されるが、割当リソースキュー210は、サブプロセッサ102内のローカルメモリ122にあってもよいし、またはメインメモリ17にあってもよい。リソースマネージャ202は、リソーススケジューラ206から受信した利用要求をリクエストキュー212に追加する。
リソースマネージャ202は、リクエストキュー212の先頭から利用要求を取り出し、管理されている遊休リソースから適切なリソースを選択して割り当て、その割当の結果を示すリソース割当情報を利用要求の送信元であるリソーススケジューラ206へ返信する(S16)。このリソース割当情報は、元の利用要求が分割されて形成される複数の利用要求パケットであり、割り当てられたリソースのコンピュータをそれぞれの宛先とする。これら複数の利用要求パケットは割当リソースキュー210に入る。なお、リソースマネージャ202は、サブプロセッサ102を占有して処理が実行されるが、リクエストキュー212は、サブプロセッサ102内のローカルメモリ122にあってもよいし、またはメインメモリ17にあってもよい。
リソーススケジューラ206は、割当リソースキュー210が空でなければその先頭から利用要求パケットを取り出し、割り当てがなされた遊休リソースを保有するコンピュータのリソースマネージメントクライアント200aに対して利用要求パケットを転送する(S18)。利用要求パケットを受信したリソースを提供するコンピュータにおいては、そのリソースマネージメントクライアント200aが利用要求に対応するリソースを割り当て、要求された処理を実行する。
リソースマネージメントクライアント200bは、リソーススケジューラ206によって要求された処理が成功裏に完了した場合、クリアリングハウス77に対して、利用要求および利用要求の送信先コンピュータを識別できる情報を送信する。利用要求を受信したクリアリングハウス77は、利用要求で割り当てられたリソース量に応じて、利用要求に含まれるリソース利用者の電子署名から特定されるユーザに対して利用料金を課金する処理を実行する。一方、利用要求が送信されたコンピュータの識別情報によって特定されるリソース提供者の個人情報から口座番号またはクレジットカード番号を取り出し、これらの情報によって特定される口座に対して、利用要求によって割り当てられたリソース量に応じて決められた利用料金を支払う指示を出す。ここで、利用されたリソースの提供者に支払われる利用料金の額は、リソースの利用者に対して課金された利用料金の額を超えないように設定される。
(リソース割当実績に応じたリソースマネージャの選択)
図7は、運用監視サーバ98の仲介によりリソースマネージメントクライアント200がリソース割当実績に応じてリソースマネージャ202を選択する仕組みを説明する図である。運用監視サーバ98は、ネットワーク51に接続されたサーバのサブプロセッサで動作する1以上のリソースマネージャ202から一定時間ごとにリソース割当実績230を受信し(S50)、そのリソース割当実績230を管理する。一定時間ごとのリソース割当実績230は、たとえば一定時間ごとに受信した利用要求数や、一定時間ごとに割当が成功したリソース量を含む。本図の例では、コンピュータAからは一定時間内の利用要求数が60回であったことを示すリソース割当実績230が送られ、コンピュータBからは一定時間内の利用要求数が150回であったことを示すリソース割当実績230が送られ、コンピュータCからは利用要求数が一定時間内の80回であったことを示すリソース割当実績230が送られる。リソースマネージメントクライアント200は、運用監視サーバ98から各コンピュータのリソース割当実績230を受信し(S52)、リソース運用効率がより高いリソースマネージャを選択するためにリソース割当実績を参照する。
リソースの提供者は、リソースの被使用量に応じて使用料金の配当を受け、他者の利用のために提供した遊休リソースがより多く使用されれば、より多くの配当を受け取ることができる。よって、リソース提供者により多くの配当金をもたらすことができるように、より高いリソース割当実績を持つリソースマネージャ202のいずれかを選択し、リソース割当実績の変化に応じてリソースマネージャ202の選択を切り換える(S54)。
リソースマネージメントクライアント200は、リソースマネージャ202をリソース割当実績に応じて自動的に変更してもよいし、リソース提供者による明示的な指示に基づいて変更してもよい。リソース提供者による明示的な指示に基づいて変更する場合、リソースマネージメントクライアント200は、利用可能なリソースマネージャのIDとそのリソース割当実績230とを含むリストをリソース提供者に提示した上で、リソース提供者による明示的な選択指示を受け取る。
(スケジューリング効率実績に応じたリソーススケジューラの選択)
図8は、運用監視サーバ98の仲介によりリソースマネージメントクライアント200がスケジューリング効率実績に応じてリソーススケジューラ206を選択する仕組みを説明する図である。運用監視サーバ98は、ネットワーク51に接続されたサーバのサブプロセッサで動作する1以上のリソーススケジューラ206から一定時間ごとにスケジュール効率実績240を受信し(S60)、そのスケジュール効率実績240を管理する。スケジュール効率実績240は、スケジューリングにおいて利用要求を出してからリソースが割り当てられるまでの平均待ち時間であってもよいし、リクエスト割当成功率であってもよい。リソースマネージメントクライアント200は、運用監視サーバ98から各コンピュータのスケジュール効率実績240を受信し(S62)、スケジュール効率がより高いリソーススケジューラ206を選択するためにスケジュール効率実績240を参照する。
リソースの利用者は、より継続的にリソースが割り当てられることを望むものである。よって、リソース利用者により効率よくリソースが割り当てられるようにするため、より高いスケジュール効率実績を持つリソーススケジューラ206のいずれかを選択し、スケジュール効率実績の変化に応じてリソーススケジューラ206の選択を切り換える(S64)。
リソースマネージメントクライアント200は、リソーススケジューラ206をスケジュール効率実績に応じて自動的に変更してもよいし、リソース利用者による明示的な指示に基づいて変更してもよい。リソース利用者による明示的な指示に基づいて変更する場合、リソースマネージメントクライアント200は、利用可能なリソーススケジューラのIDとそのスケジュール効率実績240とを含むリストをリソース利用者に提示した上で、リソース利用者による明示的な選択指示を受け取る。
(第2の実施の形態)
本実施の形態においては、リソースと所定のポイントを交換することによりリソースの利用者と提供者の間で利用の対価を精算する点で第1の実施の形態と異なる。すなわち、本実施の形態においては、リソースの提供者に対してポイントを付与し、そのポイントを使用して他のリソースを利用することができ、こうしたポイントを用いることによって実質的にリソースの交換を実現することができる。ここでいう「ポイント」は、リソース利用の対価を支払うときの仮想的な通貨としての役割を果たし、リソース量に換算することができる。また、ここでいう「リソース量」は、サブプロセッサ数、メモリ容量、周辺機器・WiFiデバイスドライバなどのデバイスといったハードウェア資源の量のみならず、WiFiデバイスドライバ占有時間などのリソース使用時間の概念も含まれる。
図9は、第2の実施の形態におけるリソーススケジューラ、リソースマネージャ、リソースマネージメントクライアントの3つのプロセスにおける処理手順を示す。以下、第1の実施の形態との相違点を中心に説明し、共通点については説明を省略する。
(ポイント口座の登録)
リソースの提供者および利用者となるコンピュータの所有者は、口座設定インタフェース226を通じて、リソース交換用のポイント口座をあらかじめ開設することにより、クリアリングハウス77との間で利用契約を結ぶ。口座設定インタフェース226は、利用契約に必要な情報として、コンピュータの識別情報と、所有者の個人情報とをネットワーク51経由でクリアリングハウス77に転送する。所有者の個人情報は、たとえば所有者の氏名、電話番号や電子メールアドレスなどの連絡先情報、ポイント口座の識別情報など、その所有者の特定に必要な情報やその所有者へのリソース交換ポイント付与に必要な情報である。コンピュータとクリアリングハウス77の間の通信はセキュアに保たれることが望ましい。クリアリングハウス77は、リソース設定インタフェースから受け取った情報を、管理するリソースの提供元を示す提供元リスト222に書き込む。クリアリングハウス77は、ポイント口座を開設したコンピュータに対し、その所有者を一意に特定して認証するための電子署名を送信する。クリアリングハウス77は、ポイント口座をはじめとする所有者の個人情報を電子署名によって特定する。ポイント口座は、クリアリングハウス77内に置かれてもよいし、ネットワーク51内の別のサーバに置かれてもよい。ただし、クリアリングハウス77とは別のサーバに置かれる場合、クリアリングハウス77がそのサーバに直接アクセスできるようにする必要がある。
(リソース提供者の登録)
リソースの提供者は、提供設定インタフェース220を通じて、そのコンピュータのリソースの一部または全部を他のコンピュータに対して提供するかどうかを設定する。本実施の形態における提供設定インタフェース220は、提供するリソースが他のコンピュータによって利用された場合、後にそのコンピュータが他のコンピュータのリソースを利用する際に使用できるリソース交換ポイントの評価額を計算し、コンピュータ画面に表示する。また、本実施の形態における提供リソース情報は、提供設定インタフェース220からクリアリングハウス77へ電子署名とともに転送され、クリアリングハウス77において提供元リスト222に書き込まれる。
(リソース利用者の登録)
リソースの利用希望者は、リソースと交換できるポイントを自己のポイント口座にあらかじめ保有する必要がある。
サブプロセッサの個数不足などのリソース不足を検出したコンピュータで動作するリソースマネージメントクライアント200bは、不足リソースとの交換に十分なポイントを有しているか否かをポイント口座で確認する。その上で、十分なポイントを有していた場合には、リソーススケジューラ206に利用要求を送信する。利用要求を送信する際、リソースマネージメントクライアント200bは、所定のストレージエリアから電子署名を読み出し、これを利用要求とともにリソーススケジューラ206へ送信する。
リソースマネージメントクライアント200bは、リソーススケジューラ206によって要求された処理が成功裏に完了した場合、クリアリングハウス77に対して、利用要求および利用要求の送信先コンピュータを識別できる情報を送信する。利用要求を受信したクリアリングハウス77は、利用要求で割り当てられたリソース量に応じて、利用要求に含まれる電子署名から利用者を特定し、その利用者のポイント口座からポイントを差し引く。一方、利用要求の送信先コンピュータの識別情報によって特定されるリソース提供者の個人情報からポイント口座の識別情報を取り出し、このポイント口座に対して、利用要求によって割り当てられたリソース量に応じて決められた額のポイントを加算する指示を出す。ここで、利用されたリソースの提供者に対して加算されるリソース交換ポイントは、リソースの利用者から減算されたリソース交換ポイントを超えないように設定するのが好ましい。
以上、本発明を実施の形態をもとに説明した。この実施の形態は例示であり、その各構成要素や各処理プロセスの組合せにいろいろな変形が可能なこと、またそうした変形例も本発明の範囲にあることは当業者に理解されるところである。以下、そうした変形例を挙げる。
第1および第2の実施の形態においては、ネットワークコンピュータ10が搭載するマルチプロセッサ20として非対称型に構成されたマルチプロセッサを例示した。変形例においては、対称型のマルチプロセッサをネットワークコンピュータ10に搭載させた構成を採用してもよい。
図10は、第1の変形例におけるワンチップマルチプロセッサの構成を示す。本図に示すマルチプロセッサ300は、図1におけるマルチプロセッサ20の代わりにネットワークコンピュータ10へ搭載される。マルチプロセッサ300は、第1プロセッサ302、第2プロセッサ304、第1L1キャッシュ306、第2L1キャッシュ308、第1L2キャッシュ310、第2L2キャッシュ312、メモリコントローラ314を有する。第1プロセッサ302、第1L1キャッシュ306、第1L2キャッシュ310、メモリコントローラ314は、互いに接続されて図1のメインプロセッサ100またはサブプロセッサ102に代わるプロセッサユニットとして動作する。同様に、第2プロセッサ304、第2L1キャッシュ308、第2L2キャッシュ312、メモリコントローラ314もまた、互いに接続されて図1のメインプロセッサ100またはサブプロセッサ102に代わるプロセッサユニットとして動作する。ただし、メモリコントローラ314はマルチプロセッサ300に一つだけ搭載され、第1プロセッサ302のユニットと第2プロセッサ304のユニットで共用される。第1プロセッサ302と第2プロセッサ304は互いに接続されている。
本図のとおり、第1プロセッサ302、第1L1キャッシュ306、第1L2キャッシュ310と、第2プロセッサ304、第2L1キャッシュ308、第2L2キャッシュ312とが、メモリコントローラ314を介して対称的に構成されている。第1プロセッサ302および第2プロセッサ304のうち、一方のプロセッサが他方のプロセッサにタスクを割り当てるようなメインとサブの関係で動作してもよい。
図11は、第2の変形例におけるワンチップマルチプロセッサの構成を示す。本図に示すマルチプロセッサ320もまた、図1におけるマルチプロセッサ20の代わりにネットワークコンピュータ10へ搭載される。マルチプロセッサ320は、第1プロセッサ322、第2プロセッサ324、第1L1キャッシュ326、第2L1キャッシュ328、L2キャッシュ330、メモリコントローラ332を有する。第1プロセッサ322、第1L1キャッシュ326、L2キャッシュ330、メモリコントローラ332は、互いに接続されて図1のメインプロセッサ100またはサブプロセッサ102に代わるプロセッサユニットとして動作する。同様に、第2プロセッサ324、第2L1キャッシュ328、L2キャッシュ330、メモリコントローラ332もまた、接続されて図1のメインプロセッサ100またはサブプロセッサ102に代わるプロセッサユニットとして動作する。ただし、L2キャッシュ330とメモリコントローラ332は、それぞれマルチプロセッサ320に一つずつだけ搭載され、第1プロセッサ322のユニットと第2プロセッサ324のユニットで共用される。第1プロセッサ322、第2プロセッサ324は互いに接続されている。
本図のとおり、第1プロセッサ322、第1L1キャッシュ326と、第2プロセッサ324、第2L1キャッシュ328とが、L2キャッシュ330とメモリコントローラ332を介して対称的に構成されている。第1プロセッサ322と第2プロセッサ324のうち、一方のプロセッサが他方のプロセッサにタスクを割り当てるようなメインとサブの関係で動作してもよい。
なお、図10および図11では、対称型のマルチプロセッサとして二つのプロセッサを有する構成を例示したが、それ以上の数のプロセッサ、たとえば4個以上のプロセッサを有する構成であってもよい。
ワンチップマルチプロセッサを利用したネットワークコンピュータの基本構成の一例を示す図である。 本実施の形態におけるネットワークコンピューティングシステムの一例を示す図である。 一つのマルチプロセッサを含むサーバにおいて、リソースマネージャとリソーススケジューラがそれぞれ動作する例を示す図である。 高速ネットワークまたは高速バスで結合された二つのマルチプロセッサを含むサーバにおいて、リソースマネージャとリソーススケジューラがそれぞれ動作する例を示す図である。 ネットワーク上に分散された二つのサーバのそれぞれにおけるサブプロセッサ上で、リソースマネージャとリソーススケジューラが動作する例を示す図である。 リソーススケジューラ、リソースマネージャ、リソースマネージメントクライアントの3つのプロセスにおける処理手順を示す図である。 運用監視サーバの仲介によりリソースマネージメントクライアントがリソース割当実績に応じてリソースマネージャを選択する仕組みを説明する図である。 運用監視サーバの仲介によりリソースマネージメントクライアントがスケジューリング効率実績に応じてリソースマネージャを選択する仕組みを説明する図である。 第2の実施の形態におけるリソーススケジューラ、リソースマネージャ、リソースマネージメントクライアントの3つのプロセスにおける処理手順を示す図である。 第1の変形例におけるワンチップマルチプロセッサの構成を示す図である。 第2の変形例におけるワンチップマルチプロセッサの構成を示す図である。
符号の説明
20 マルチプロセッサ、 41 サーバ、 50 ネットワークコンピューティングシステム、 51 ネットワーク、 54 サーバ、 60 サーバ、 62 サーバ、 64 サーバ、 66 サーバ、 102 サブプロセッサ、 122 ローカルメモリ、 202 リソースマネージャ、 206 リソーススケジューラ。

Claims (6)

  1. 相互にネットワークで接続された複数のコンピュータを含むシステムであって、
    前記複数のコンピュータは、
    それぞれがローカルメモリを有して独立に動作する複数のプロセッサを含んだマルチプロセッサにおけるいずれかのプロセッサにより、ネットワーク上のコンピュータからネットワークを介して提供されることが可能となっているハードウェアリソースの情報を受信して管理するとともにハードウェアリソース利用要求を受けたときは前記管理するハードウェアリソースの提供を処理するリソースマネージャを前記ローカルメモリにロードされた状態で動作させるコンピュータと、
    それぞれがローカルメモリを有して独立に動作する複数のプロセッサを含んだマルチプロセッサにおけるいずれかのプロセッサにより、ネットワーク上のコンピュータからハードウェアリソース利用要求を受信して前記リソースマネージャの仲介によって提供されるハードウェアリソースを前記ハードウェアリソース利用要求に対して割り当てるリソーススケジューラを前記ローカルメモリにロードされた状態で動作させるコンピュータと、
    他のコンピュータへハードウェアリソースの提供が可能となったときに前記ハードウェアリソースの情報を前記リソースマネージャに送信するとともに、他のコンピュータのハードウェアリソースを利用する場合にはハードウェアリソースの利用要求を前記リソーススケジューラに送信するリソースマネージメントクライアントを動作させるクライアントコンピュータと、
    ネットワーク上のコンピュータが他のコンピュータとの間でハードウェアリソースの提供および利用が実行されたときに、提供または利用されたリソース量の情報と提供者および利用者を特定するために必要な情報とを前記リソースマネージメントクライアントから受信し、利用料の精算を処理するクリアリングハウスコンピュータと、
    を含み、
    前記リソースマネージャは、所定期間内の利用要求数を含むリソース割当の実績を記録してこれを所定のサーバへ送信するとともに、ネットワーク上のコンピュータで動作するクライアントによって前記リソース割当の実績に基づいて前記リソースマネージャが選択されたときに、前記クライアントからそのコンピュータに含まれるハードウェアリソースのうち提供可能なリソースの内容を示す情報を受信することを特徴とするネットワークコンピューティングシステム。
  2. 相互にネットワークで接続された複数のコンピュータを含むシステムであって、
    前記複数のコンピュータは、
    それぞれがローカルメモリを有して独立に動作する複数のプロセッサを含んだマルチプロセッサにおけるいずれかのプロセッサにより、ネットワーク上のコンピュータからネットワークを介して提供されることが可能となっているハードウェアリソースの情報を受信して管理するとともにハードウェアリソース利用要求を受けたときは前記管理するハードウェアリソースの提供を処理するリソースマネージャを前記ローカルメモリにロードされた状態で動作させるコンピュータと、
    それぞれがローカルメモリを有して独立に動作する複数のプロセッサを含んだマルチプロセッサにおけるいずれかのプロセッサにより、ネットワーク上のコンピュータからハードウェアリソース利用要求を受信して前記リソースマネージャの仲介によって提供されるハードウェアリソースを前記ハードウェアリソース利用要求に対して割り当てるリソーススケジューラを前記ローカルメモリにロードされた状態で動作させるコンピュータと、
    他のコンピュータへハードウェアリソースの提供が可能となったときに前記ハードウェアリソースの情報を前記リソースマネージャに送信するとともに、他のコンピュータのハードウェアリソースを利用する場合にはハードウェアリソースの利用要求を前記リソーススケジューラに送信するリソースマネージメントクライアントを動作させるクライアントコンピュータと、
    ネットワーク上のコンピュータが他のコンピュータとの間でハードウェアリソースの提供および利用が実行されたときに、提供または利用されたリソース量の情報と提供者および利用者を特定するために必要な情報とを前記リソースマネージメントクライアントから受信し、利用料の精算を処理するクリアリングハウスコンピュータと、
    を含み、
    前記リソーススケジューラは、所定期間内のスケジューリング効率を記録してこれを所定のサーバへ送信するとともに、ネットワーク上のコンピュータで動作するクライアントによって前記スケジューリング効率に基づいて前記リソーススケジューラが選択されたときに、前記クライアントからハードウェアリソースの利用要求を受信することを特徴とするネットワークコンピューティングシステム。
  3. 前記クリアリングハウスコンピュータは、前記ハードウェアリソース利用要求に対する前記リソーススケジューラによる割当が成功した場合に、割り当てられたハードウェアリソースを利用するクライアントコンピュータにおける前記リソースマネージメントクライアントから前記利用要求の内容および割り当てられたリソース量の情報を受信し、そのリソース量に応じた利用料の精算を前記クライアントコンピュータの利用者へ課金する処理をするとともに、前記課金した利用料の少なくとも一部を前記利用要求から特定される前記ハードウェアリソースの所有者への支払を処理することを特徴とする請求項1または2に記載のネットワークコンピューティングシステム。
  4. 前記クリアリングハウスコンピュータは、ハードウェアリソースを提供する可能性のあるコンピュータとハードウェアリソースを利用する可能性のあるコンピュータに対して設定された利用料の口座を管理し、ハードウェアリソースの利用者の口座から前記利用料を減算するとともにハードウェアリソースの提供者の口座に前記利用料の少なくとも一部を加算することを特徴とする請求項1から3のいずれかに記載のネットワークコンピューティングシステム。
  5. 前記クリアリングハウスコンピュータは、前記利用料を仮想的な通貨を用いて前記口座から加算または減算することによって、前記仮想的な通貨とリソースとの実質的な交換を実現することを特徴とする請求項に記載のネットワークコンピューティングシステム。
  6. それぞれがローカルメモリを有して独立に動作する複数のプロセッサを含んだマルチプロセッサと、
    ネットワーク上のコンピュータからハードウェアリソース利用要求を受信しリソースマネージャの仲介によって提供されるハードウェアリソースを前記ハードウェアリソース利用要求に対して割り当てるリソーススケジューラが動作する他のマルチプロセッサコンピュータとの間でデータを送受信するとともに、ネットワーク上のコンピュータのハードウェアリソースの提供および利用があったときにその利用料の精算を処理するクリアリングハウスコンピュータとの間でデータを送受信するネットワーク通信部と、を備え、
    前記マルチプロセッサは、他のマルチプロセッサコンピュータのハードウェアリソースを利用する場合にハードウェアリソースの利用要求をネットワーク上のいずれかのマルチプロセッサコンピュータで動作する前記リソーススケジューラに送信するとともに他のコンピュータのハードウェアリソースを利用したときはその利用要求の内容および利用したリソース量の情報を前記クリアリングハウスコンピュータへ送信するリソースマネージメントクライアントが動作するプロセッサを含み、
    前記リソースマネージメントクライアントは、前記ネットワーク通信部を介し、ネットワーク上の複数のリソーススケジューラのそれぞれにおけるリソース割当のスケジューリング効率を所定のサーバから受信し、それらのリソース割当のスケジューリング効率に基づき効率がより高いリソーススケジューラを選択し、ハードウェアリソースの利用要求を前記選択したリソーススケジューラへ送信することを特徴とするマルチプロセッサコンピュータ。
JP2006087146A 2006-03-28 2006-03-28 ネットワークコンピューティングシステムおよびマルチプロセッサコンピュータ Active JP4963855B2 (ja)

Priority Applications (2)

Application Number Priority Date Filing Date Title
JP2006087146A JP4963855B2 (ja) 2006-03-28 2006-03-28 ネットワークコンピューティングシステムおよびマルチプロセッサコンピュータ
PCT/JP2006/319677 WO2007110986A1 (ja) 2006-03-28 2006-10-02 ネットワークコンピューティングシステムおよびマルチプロセッサコンピュータ

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2006087146A JP4963855B2 (ja) 2006-03-28 2006-03-28 ネットワークコンピューティングシステムおよびマルチプロセッサコンピュータ

Publications (2)

Publication Number Publication Date
JP2007264886A JP2007264886A (ja) 2007-10-11
JP4963855B2 true JP4963855B2 (ja) 2012-06-27

Family

ID=38540924

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2006087146A Active JP4963855B2 (ja) 2006-03-28 2006-03-28 ネットワークコンピューティングシステムおよびマルチプロセッサコンピュータ

Country Status (2)

Country Link
JP (1) JP4963855B2 (ja)
WO (1) WO2007110986A1 (ja)

Families Citing this family (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20130073434A1 (en) * 2011-09-20 2013-03-21 Robert Gelfond Service Based Certificate
KR102407917B1 (ko) * 2015-11-12 2022-06-10 삼성전자주식회사 멀티 프로세서에 의해 공유되는 메모리를 포함하는 멀티 프로세서 시스템 및 상기 시스템의 동작 방법
US10715463B1 (en) 2020-02-20 2020-07-14 Robert Gelfond System and method for controlling access to resources in a multicomputer network

Family Cites Families (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6345240B1 (en) * 1998-08-24 2002-02-05 Agere Systems Guardian Corp. Device and method for parallel simulation task generation and distribution
US6842857B2 (en) * 2001-04-12 2005-01-11 International Business Machines Corporation Method and apparatus to concurrently boot multiple processors in a non-uniform-memory-access machine
JP3966375B2 (ja) * 2001-06-21 2007-08-29 独立行政法人農業・食品産業技術総合研究機構 インターネットを介する並列処理計算委託システム
JP2005339401A (ja) * 2004-05-28 2005-12-08 Sony Corp 情報処理装置及びその制御方法、情報処理コントローラ、情報処理ユニット及びその制御方法、並びにコンピュータプログラム

Also Published As

Publication number Publication date
JP2007264886A (ja) 2007-10-11
WO2007110986A1 (ja) 2007-10-04

Similar Documents

Publication Publication Date Title
US11630704B2 (en) System and method for a workload management and scheduling module to manage access to a compute environment according to local and non-local user identity information
US20210255986A1 (en) Managing use of program execution capacity
US10114668B2 (en) Managing private use of program execution capacity
CN1128406C (zh) 数据处理系统及其中断处理方法
US6711607B1 (en) Dynamic scheduling of task streams in a multiple-resource system to ensure task stream quality of service
CN109324900B (zh) 用于按需服务环境中的消息队列的基于竞价的资源共享
US7707288B2 (en) Automatically building a locally managed virtual node grouping to handle a grid job requiring a degree of resource parallelism within a grid environment
US9658881B1 (en) Application hosting in a distributed application execution system
JP6254949B2 (ja) 仮想マシンプールにおけるリソースの価格設定
JP4214682B2 (ja) 計算機およびその入出力手段
JP2001331333A (ja) 計算機システム及び計算機システムの制御方法
JP2009251708A (ja) I/oノード制御方式及び方法
JP4963854B2 (ja) マルチプロセッサコンピュータおよびネットワークコンピューティングシステム
WO2005116832A1 (ja) 分散処理環境におけるジョブの実行を制御するためのコンピュータシステム、方法及びプログラム
Begam et al. Timer-cloud: Time-sensitive vm provisioning in resource-constrained clouds
JP4963855B2 (ja) ネットワークコンピューティングシステムおよびマルチプロセッサコンピュータ
KR20140118030A (ko) 클라우드 컴퓨팅 환경의 계층형 부하분산 구조에서 자원 거래 관리 장치 및 방법
El-Ghazali et al. List scheduling heuristics for virtual machine mapping in cloud systems
JP2010097566A (ja) 情報処理装置、及び情報処理システムにおけるバッチ処理の割り当て方法
Manikandan et al. Comprehensive solution of Scheduling and Balancing Load in Cloud-A Review
Santhiya Dynamic resource scheduling using Delay time algorithm in Cloud environment
Shih et al. Imprecise computation over the cloud
CN115543554A (zh) 一种计算作业的调度方法、装置及计算机可读存储介质

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20090318

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20090401

A711 Notification of change in applicant

Free format text: JAPANESE INTERMEDIATE CODE: A712

Effective date: 20101125

RD03 Notification of appointment of power of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7423

Effective date: 20110127

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20111213

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20120207

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: 20120327

A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20120327

R150 Certificate of patent or registration of utility model

Ref document number: 4963855

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

Free format text: JAPANESE INTERMEDIATE CODE: R150

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20150406

Year of fee payment: 3

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250