(19)【発行国】日本国特許庁(JP)
(12)【公報種別】公開特許公報(A)
(11)【公開番号】P2022171304
(43)【公開日】2022-11-11
(54)【発明の名称】管理システムおよび管理方法
(51)【国際特許分類】
G06Q 10/04 20120101AFI20221104BHJP
G06Q 50/10 20120101ALI20221104BHJP
【FI】
G06Q10/04
G06Q50/10
【審査請求】未請求
【請求項の数】5
【出願形態】OL
(21)【出願番号】P 2021077881
(22)【出願日】2021-04-30
(71)【出願人】
【識別番号】000003137
【氏名又は名称】マツダ株式会社
(74)【代理人】
【識別番号】110001427
【氏名又は名称】弁理士法人前田特許事務所
(72)【発明者】
【氏名】岡村 雅
(72)【発明者】
【氏名】伊藤 誠一
(72)【発明者】
【氏名】前田 貴史
(72)【発明者】
【氏名】足立 智彦
(72)【発明者】
【氏名】吉岡 正博
(72)【発明者】
【氏名】石橋 真人
(72)【発明者】
【氏名】濱野 大輔
【テーマコード(参考)】
5L049
【Fターム(参考)】
5L049AA04
5L049CC12
(57)【要約】
【課題】グリッドコンピューティングの計算能力をクライアントに提供する。
【解決手段】ジョブ受付処理において、制御部505は、クライアントにより計算を依頼されたジョブデータを受け付ける。予測処理において、制御部505は、複数の演算装置105の各々のグリッドコンピューティング処理において利用可能な計算能力の時間的変化を予測する。マッチング処理において、制御部505は、予測処理の結果に基づいて、ジョブ受付処理において受け付けられたジョブデータに対して利用可能な演算装置105を割り当てる。
【選択図】
図1
【特許請求の範囲】
【請求項1】
複数の演算装置のうち利用可能な演算装置にジョブデータを処理させるグリッドコンピューティング処理を管理する管理システムであって、
記憶部と、
制御部とを備え、
前記記憶部は、前記複数の演算装置の各々の計算能力を示す計算能力情報と、前記複数の演算装置の各々の稼働状況を示す稼働状況情報とを記憶し、
前記制御部は、
クライアントにより計算を依頼されたジョブデータを受け付けるジョブ受付処理と、
前記計算能力情報と前記稼働状況情報とに基づいて、前記複数の演算装置の各々の前記グリッドコンピューティング処理において利用可能な計算能力の時間的変化を予測する予測処理と、
前記予測処理の結果に基づいて、前記ジョブ受付処理により受け付けられたジョブデータに対し、前記複数の演算装置のうち前記グリッドコンピューティング処理において利用可能な演算装置を割り当てるマッチング処理とを行う
ことを特徴とする管理システム。
【請求項2】
請求項1の管理システムにおいて、
前記制御部は、前記マッチング処理において、前記ジョブデータに対し、前記複数の演算装置のうち前記グリッドコンピューティング処理において利用可能であり且つ前記ジョブデータの計算タイプに対応する性能を有する演算装置を割り当てる
ことを特徴とする管理システム。
【請求項3】
請求項1の管理システムにおいて、
前記制御部は、前記マッチング処理において、前記ジョブデータに対し、前記複数の演算装置のうち前記グリッドコンピューティング処理において利用可能であり且つ前記ジョブデータの実行条件に対応する性能を有する演算装置を割り当てる
ことを特徴とする管理システム。
【請求項4】
請求項1~3のいずれか1つの管理システムにおいて、
前記制御部は、前記マッチング処理において、前記ジョブデータに設定された納期まで前記ジョブデータに対する前記グリッドコンピューティング処理が完了するように、前記ジョブデータに対し、前記複数の演算装置のうち前記グリッドコンピューティング処理において利用可能な演算装置を割り当てる
ことを特徴とする管理システム。
【請求項5】
複数の演算装置のうち利用可能な演算装置にジョブデータを処理させるグリッドコンピューティング処理をコンピュータにより管理する管理方法であって、
前記コンピュータにより、クライアントにより計算を依頼されたジョブデータを受け付けるジョブ受付ステップと、
前記コンピュータにより、前記複数の演算装置の各々の計算能力を示す計算能力情報と、前記複数の演算装置の各々の稼働状況を示す稼働状況情報とに基づいて、前記複数の演算装置の各々の前記グリッドコンピューティング処理において利用可能な計算能力の時間的変化を予測する予測ステップと、
前記コンピュータにより、前記予測ステップの結果に基づいて、前記ジョブ受付ステップにより受け付けられたジョブデータに対し、前記複数の演算装置のうち前記グリッドコンピューティング処理において利用可能な演算装置を割り当てるマッチングステップとを備える
ことを特徴とする管理方法。
【発明の詳細な説明】
【技術分野】
【0001】
ここに開示する技術は、グリッドコンピューティングの管理に関する。
【背景技術】
【0002】
特許文献1には、複数の通信装置と、グリッドコンピューティングを管理する管理サーバとを備えたシステムが開示されている。管理サーバは、信号受信部と、状態判定部と、応答送信部とを備える。信号受信部は、通信装置からその通信装置がグリッドコンピューティングへの参加が可能であることを示す信号を受信する。状態判定部は、複数の処理装置のそれぞれの計算資源の使用状況に基づいて、複数の処理装置のそれぞれの処理能力の不足状態を判定する。応答送信部は、複数の処理装置の少なくともいずれかの処理能力が不足している場合に、上記の信号に基づいて、上記の通信装置にグリッドコンピューティングへの参加指示を送信する。このような構成により、複数の通信装置の計算資源を有効に活用している。
【先行技術文献】
【特許文献】
【0003】
【発明の概要】
【発明が解決しようとする課題】
【0004】
特許文献1には、グリッドコンピューティングの計算能力をどのようにしてクライアントに提供するのかについては、何ら開示されていない。
【0005】
ここに開示する技術は、かかる点に鑑みてなされたものであり、その目的とするところは、グリッドコンピューティングの計算能力をクライアントに提供することにある。
【課題を解決するための手段】
【0006】
ここに開示する技術は、複数の演算装置のうち利用可能な演算装置にジョブデータを処理させるグリッドコンピューティング処理を管理する管理システムに関し、この管理システムは、記憶部と、制御部とを備え、前記記憶部は、前記複数の演算装置の各々の計算能力を示す計算能力情報と、前記複数の演算装置の各々の稼働状況を示す稼働状況情報とを記憶し、前記制御部は、クライアントにより計算を依頼されたジョブデータを受け付けるジョブ受付処理と、前記計算能力情報と前記稼働状況情報とに基づいて、前記複数の演算装置の各々の前記グリッドコンピューティング処理において利用可能な計算能力の時間的変化を予測する予測処理と、前記予測処理の結果に基づいて、前記ジョブ受付処理により受け付けられたジョブデータに対し、前記複数の演算装置のうち前記グリッドコンピューティング処理において利用可能な演算装置を割り当てるマッチング処理とを行う。
【0007】
前記の構成では、グリッドコンピューティングの計算能力をクライアントに提供することができる。
【0008】
前記管理システムにおいて、前記制御部は、前記マッチング処理において、前記ジョブデータに対し、前記複数の演算装置のうち前記グリッドコンピューティング処理において利用可能であり且つ前記ジョブデータの計算タイプに対応する性能を有する演算装置を割り当てるように構成されてもよい。
【0009】
前記の構成では、ジョブデータの計算タイプに応じてジョブデータに対する演算装置の割り当てを適切に行うことができる。
【0010】
前記管理システムにおいて、前記制御部は、前記マッチング処理において、前記ジョブデータに対し、前記複数の演算装置のうち前記グリッドコンピューティング処理において利用可能であり且つ前記ジョブデータの実行条件に対応する性能を有する演算装置を割り当てるように構成されてもよい。
【0011】
前記の構成では、ジョブデータの実行条件に応じてジョブデータに対する演算装置の割り当てを適切に行うことができる。
【0012】
前記管理システムにおいて、前記制御部は、前記マッチング処理において、前記ジョブデータに設定された納期まで前記ジョブデータに対する前記グリッドコンピューティング処理が完了するように、前記ジョブデータに対し、前記複数の演算装置のうち前記グリッドコンピューティング処理において利用可能な演算装置を割り当てるように構成されてもよい。
【0013】
前記の構成では、ジョブデータの納期に応じてジョブデータに対する演算装置の割り当てを適切に行うことができる。
【0014】
また、ここに開示する技術は、複数の演算装置のうち利用可能な演算装置にジョブデータを処理させるグリッドコンピューティング処理をコンピュータにより管理する管理方法に関し、この管理方法は、前記コンピュータにより、クライアントにより計算を依頼されたジョブデータを受け付けるジョブ受付ステップと、前記コンピュータにより、前記複数の演算装置の各々の計算能力を示す計算能力情報と、前記複数の演算装置の各々の稼働状況を示す稼働状況情報とに基づいて、前記複数の演算装置の各々の前記グリッドコンピューティング処理において利用可能な計算能力の時間的変化を予測する予測ステップと、前記コンピュータにより、前記予測ステップの結果に基づいて、前記ジョブ受付ステップにより受け付けられたジョブデータに対し、前記複数の演算装置のうち前記グリッドコンピューティング処理において利用可能な演算装置を割り当てるマッチングステップとを備える。
【0015】
前記の方法では、グリッドコンピューティングの計算能力をクライアントに提供することができる。
【発明の効果】
【0016】
ここに開示する技術によれば、グリッドコンピューティングの計算能力をクライアントに提供することができる。
【図面の簡単な説明】
【0017】
【
図1】実施形態のシステムの構成を例示する概略図である。
【
図2】グリッドコンピューティングについて説明するための概念図である。
【
図4】ユーザ端末の構成を例示するブロック図である。
【
図5】クライアントサーバの構成を例示するブロック図である。
【
図6】施設サーバの構成を例示するブロック図である。
【
図7】管理サーバの構成を例示するブロック図である。
【
図8】ジョブ受付処理を例示するフローチャートである。
【
図9】ジョブ受付画面の画像を例示する概略図である。
【
図10】予測処理を例示するフローチャートである。
【
図11】マッチング処理を例示するフローチャートである。
【
図12】グリッドコンピューティング処理を例示するフローチャートである。
【発明を実施するための形態】
【0018】
以下、図面を参照して実施の形態を詳しく説明する。なお、図中同一または相当部分には同一の符号を付しその説明は繰り返さない。
【0019】
(システム)
図1は、実施形態のシステム1の構成を例示する。このシステム1は、複数の車両10と、複数のユーザ端末20と、クライアントサーバ30と、施設サーバ40と、管理サーバ50とを備える。これらの構成要素は、通信網5を経由して互いに通信可能である。複数の車両10の各々には、演算装置105が搭載される。なお、システム1には、複数のクライアントサーバ30が設けられてもよい。同様に、システム1には、複数の施設サーバ40が設けられてもよい。
【0020】
〔グリッドコンピューティング〕
図2に示すように、実施形態のシステム1では、複数の演算装置105によりグリッドコンピューティングが構成され、複数の演算装置105のうち利用可能な演算装置105にジョブデータを処理させるグリッドコンピューティング処理が行われる。
【0021】
なお、車両10において演算装置105の計算能力が必要となると、演算装置105が稼働状態となり、演算装置105の計算能力が利用される。例えば、車両10が走行している場合、車両10の走行制御のために演算装置105の計算能力が必要となり、演算装置105が稼働状態となる。
【0022】
一方、車両10において演算装置105の計算能力が不要となると、演算装置105が停止状態となり、演算装置105の計算能力が利用されなくなる。例えば、車両10が停車して車両10の電源がオフ状態になると、演算装置105の起算能力が不要となり、演算装置105が停止状態となる。
【0023】
ここで、車両10において演算装置105の計算能力が不要である場合に、演算装置105の計算能力をグリッドコンピューティング処理に提供することで、演算装置105の計算能力を有効に利用することが可能となる。
【0024】
〔車両〕
車両10は、ユーザに所有される。ユーザは、車両10を運転する。この例では、車両10は、自動四輪車である。また、車両10には、電池(図示省略)が搭載される。電池の電力は、演算装置105などの車載機器に供給される。このような車両10の例としては、電気自動車、プラグインハイブリッド自動車などが挙げられる。
【0025】
図3に示すように、車両10は、アクチュエータ11と、センサ12と、入力部101と、出力部102と、通信部103と、記憶部104と、演算装置105とを備える。
【0026】
アクチュエータ11は、駆動系のアクチュエータ、操舵系のアクチュエータ、制動系のアクチュエータなどを含む。駆動系のアクチュエータの例としては、エンジン、トランスミッション、モータが挙げられる。制動系のアクチュエータの例としては、ブレーキが挙げられる。操舵系のアクチュエータの例としては、ステアリングが挙げられる。
【0027】
センサ12は、車両10の制御に用いられる各種の情報を取得する。センサ12の例としては、車外を撮像する車外カメラ、車内を撮像する車内カメラ、車外の物体を検出するレーダ、車速センサ、加速度センサ、ヨーレートセンサ、アクセル開度センサ、ステアリングセンサ、ブレーキ油圧センサなどが挙げられる。
【0028】
入力部101は、情報やデータを入力する。入力部101の例としては、操作されることで操作に応じた情報を入力する操作部、情報を示す画像を入力するカメラ、情報を示す音声を入力するマイクロフォンなどが挙げられる。操作部の例としては、カーナビゲーション装置の操作ボタンやタッチセンサなどが挙げられる。入力部101に入力された情報やデータは、演算装置105に送られる。
【0029】
出力部102は、情報やデータを出力する。出力部102の例としては、情報を示す画像を出力する表示部、情報を示す音声を出力するスピーカなどが挙げられる。表示部の例としては、カーナビゲーション装置のディスプレイが挙げられる。スピーカの例としては、カーナビゲーション装置のスピーカが挙げられる。
【0030】
通信部103は、情報やデータを送受信する。通信部103により受信された情報やデータは、演算装置105に送られる。
【0031】
記憶部104は、情報やデータを記憶する。
【0032】
演算装置105は、車両10の各部を制御する。この例では、演算装置105は、センサ12により得られた各種の情報に応じてアクチュエータ11を制御する。
【0033】
演算装置105は、プロセッサ、メモリなどを有する。プロセッサの例としては、CPU(Central Processing Unit)、GPU(Graphics Processing Unit)などが挙げられる。メモリは、プロセッサを動作させるためのプログラム、プロセッサの処理結果を示す情報やデータなどを記憶する。
【0034】
なお、演算装置105に搭載されるプロセッサの数は、1つであってもよいし、複数のであってもよい。また、演算装置105に搭載されるプロセッサは、CPUおよびGPUのいずれか一方のみであってもよいし、CPUおよびGPUの両方であってもよい。この例では、演算装置105は、CPUおよびGPUの両方を有する。例えば、演算装置105は、1つまたは複数のECU(Electronic Control Unit)により構成される。
【0035】
この例では、記憶部104は、車両情報D11と、車両状態情報D12と、走行履歴情報D13と、演算装置情報D14と、稼働履歴情報D15とを記憶する。
【0036】
〈車両情報〉
車両情報D11は、車両10に関する情報である。例えば、車両情報D11は、車両10に設定された車両ID、車両の性能を示す車両性能情報などを含む。車両IDは、車両10を識別する車両識別情報の一例である。ユーザIDは、ユーザを識別するユーザ識別情報の一例である。
【0037】
〈車両状態情報〉
車両状態情報D12は、車両10の状態を示す。例えば、車両状態情報D12は、車両位置情報、車両通信情報、車両電源情報、車両電池残量情報、車両充電情報などを含む。車両位置情報は、車両10の位置(緯度および経度)を示す。例えば、車両位置情報は、GPS(Global Positioning System)により取得可能である。車両通信情報は、車両10の通信状態を示す。車両電源情報は、車両10の電源の状態を示す。例えば、車両電源情報は、イグニッション電源のオンオフ、アクセサリ電源のオンオフなどを示す。車両電池残量情報は、車両10に搭載された電池(図示省略)の残量を示す。車両充電情報は、充電設備(図示省略)において車両10が充電中であるか否かを示す。
【0038】
〈走行履歴情報〉
走行履歴情報D13は、車両10の走行履歴を示す情報である。例えば、走行履歴情報D13は、車両10の位置と時刻とを関連付けて示す。
【0039】
〈演算装置情報〉
演算装置情報D14は、演算装置105に関する情報である。例えば、演算装置情報D14は、演算装置105に設定された演算装置ID、演算装置105を搭載する車両10に設定された車両ID、演算装置105の性能を示す演算装置性能情報などを含む。演算装置IDは、演算装置105を識別する演算装置識別情報の一例である。演算装置性能情報に示される演算装置105の性能には、演算装置105の計算能力(具体的には最大計算能力)を示す計算能力、演算装置105におけるCPUとGPUとの比率などが含まれる。なお、演算装置105の計算能力は、演算装置105が単位時間当たりに計算することができるデータ量である。
【0040】
〈稼働履歴情報〉
稼働履歴情報D15は、演算装置105の稼働履歴を示す情報である。例えば、稼働履歴情報D15は、演算装置105の計算能力の利用率と時刻とを関連付けて示す。
【0041】
〔ユーザ端末〕
ユーザ端末20は、ユーザに所有される。ユーザは、ユーザ端末20を操作して各種の機能を利用する。また、ユーザは、ユーザ端末20を持ち運ぶことができる。このようなユーザ端末20の例としては、スマートフォン、タブレット、ノート型パーソナルコンピュータなどが挙げられる。
【0042】
図4に示すように、ユーザ端末20は、入力部201と、出力部202と、通信部203と、記憶部204と、制御部205とを備える。
【0043】
入力部201は、情報やデータを入力する。入力部201の例としては、操作されることで操作に応じた情報を入力する操作部、情報を示す画像を入力するカメラ、情報を示す音声を入力するマイクロフォンなどが挙げられる。操作部の例としては、操作ボタン、タッチセンサなどが挙げられる。入力部101に入力された情報は、演算装置105に送られる。
【0044】
出力部202は、情報やデータを出力する。出力部202の例としては、情報を示す画像を出力する表示部、情報を示す音声を出力するスピーカなどが挙げられる。
【0045】
通信部203は、情報やデータを送受信する。通信部303により受信された情報やデータは、制御部205に送られる。
【0046】
記憶部204は、情報やデータを記憶する。
【0047】
制御部205は、ユーザ端末20の各部を制御する。制御部205は、プロセッサ、メモリなどを有する。メモリは、プロセッサを動作させるためのプログラム、プロセッサの処理結果を示す情報やデータなどを記憶する。
【0048】
この例では、記憶部204は、端末情報D21と、端末状態情報D22と、スケジュール情報D23とを記憶する。
【0049】
〈端末情報〉
端末情報D21は、ユーザ端末20に関する情報である。例えば、端末情報D21は、ユーザ端末20に設定されたユーザ端末ID、ユーザ端末20の性能を示すユーザ端末性能情報などを含む。ユーザ端末IDは、ユーザ端末20を識別するユーザ端末識別情報の一例である。
【0050】
〈端末状態情報〉
端末状態情報D22は、ユーザ端末20の状態を示す情報である。端末状態情報D22は、ユーザ端末20の位置を示すユーザ端末位置情報、ユーザ端末20の通信状態を示すユーザ端末通信状態情報などを含む。
【0051】
〈スケジュール情報〉
スケジュール情報D23は、ユーザ端末20を所有するユーザの行動履歴および行動予定を示す。例えば、スケジュール情報D23は、ユーザの位置と滞在期間(または滞在予定期間)とを関連付けて示す。なお、スケジュール情報D23は、ユーザ端末20に搭載されたスケジュール機能により取得可能である。具体的には、ユーザがスケジュール機能を利用して自身の行動履歴および行動予定をユーザ端末20に入力することで、そのユーザの行動履歴および行動予定を示すスケジュール情報D23が得られる。
【0052】
〔クライアントサーバ〕
クライアントサーバ30は、クライアントに所有される。クライアントは、ジョブデータの計算を依頼する。このようなクライアントの例としては、企業、研究機関、教育機関などが挙げられる。
【0053】
図5に示すように、クライアントサーバ30は、入力部301と、出力部302と、通信部303と、記憶部304と、制御部305とを備える。
【0054】
入力部301は、情報やデータを入力する。入力部301の例としては、操作されることで操作に応じた情報を入力する操作部、情報を示す画像を入力するカメラ、情報を示す音声を入力するマイクロフォンなどが挙げられる。操作部の例としては、操作ボタン、タッチセンサ、キーボード、マウスなどが挙げられる。入力部301に入力された情報やデータは、制御部305に送られる。
【0055】
出力部302は、情報やデータを出力する。出力部302の例としては、情報を示す画像を出力する表示部、情報を示す音声を出力するスピーカなどが挙げられる。
【0056】
通信部303は、情報やデータを送受信する。通信部303により受信された情報やデータは、制御部305に送られる。
【0057】
記憶部304は、情報やデータを記憶する。
【0058】
制御部305は、クライアントサーバ30の各部を制御する。制御部305は、プロセッサ、メモリなどを有する。メモリは、プロセッサを動作させるためのプログラム、プロセッサの処理結果を示す情報やデータなどを記憶する。
【0059】
この例では、記憶部304は、クライアント情報D31と、ジョブデータD1とを記憶する。
【0060】
〈クライアント情報〉
クライアント情報D31は、クライアントに関する情報である。クライアント情報D31は、クライアントに設定されたクライアントID、クライアントに所有されるクライアントサーバ30に設定されたクライアントサーバID、担当者名、住所、電話番号などを含む。クライアントIDは、クライアントを識別するクライアント識別情報の一例である。クライアントサーバIDは、クライアントサーバ30を識別するクライアントサーバ識別情報の一例である。
【0061】
〈ジョブデータ〉
ジョブデータD1は、ジョブに対応するデータであり、ジョブの実施のために処理されるデータである。
【0062】
なお、ジョブデータD1は、計算タイプにより分類可能である。計算タイプの例としては、CPU系の計算タイプ、GPU系の計算タイプなどが挙げられる。CPU系の計算タイプのジョブデータD1では、シミュレーション計算など、条件分岐の多い複雑な計算が要求される傾向にある。GPU系の計算タイプのジョブデータD1では、画像処理や機械学習など、膨大な量の単純計算が要求される傾向にある。
【0063】
また、ジョブデータD1は、処理条件により分類可能である。処理条件の例としては、常時通信が要求される処理条件、常時通信が要求されない処理条件などが挙げられる。常時通信が要求される処理条件のジョブデータD1では、グリッドコンピューティング処理において演算装置105が常に通信可能であることが要求される。常時通信が要求されない処理条件のジョブデータD1では、グリッドコンピューティング処理において演算装置105が常に通信可能であることが要求されない。
【0064】
〈ジョブ情報〉
なお、記憶部304には、ジョブに関するジョブ情報が記憶されてもよい。ジョブ情報は、ジョブの名称を示すジョブ名称情報、ジョブの内容を説明するジョブ内容情報、ジョブに対応するジョブデータに関するジョブデータ情報、ジョブの納期を示すジョブ納期情報などを含む。ジョブデータ情報は、ジョブデータの計算タイプ、処理条件、必要計算能力などを示す。
【0065】
〔施設サーバ〕
施設サーバ40は、施設に所有される。施設には、ユーザが訪れる。ユーザは、施設への来訪予約を行うことができる。このような施設の例としては、競技場、劇場、スーパーマーケット、レストラン、宿泊施設、販売店などが挙げられる。
【0066】
図6に示すように、施設サーバ40は、入力部401と、出力部402と、通信部403と、記憶部404と、制御部405とを備える。施設サーバ40の入力部401、出力部402、通信部403、記憶部404、制御部405の構成は、クライアントサーバ30の入力部301、出力部302、通信部303、記憶部304、制御部305の構成と同様である。
【0067】
この例では、記憶部404は、施設情報D41と、施設利用情報D42とを記憶する。
【0068】
〈施設情報〉
施設情報D41は、施設に関する情報である。施設情報D41は、施設に設定された施設ID、施設に所有される施設サーバ40に設定された施設サーバID、施設の位置(緯度および経度)を示す施設位置情報、担当者名、住所、電話番号などを含む。施設IDは、施設を識別する施設識別情報の一例である。施設サーバIDは、施設サーバ40を識別する施設サーバ識別情報の一例である。
【0069】
〈施設利用情報〉
施設利用情報D42は、施設の利用状況(利用履歴および利用予定)を示す。具体的には、施設利用情報D42は、施設を訪れるユーザと滞在期間(または滞在予定期間)とを関連付けて示す。
【0070】
〔管理サーバ〕
管理サーバ50は、グリッドコンピューティングが構成されるシステム1の運営を管理する。管理サーバ50は、システム1を運営する事業者に所有される。
【0071】
図7に示すように、管理サーバ50は、入力部501と、出力部502と、通信部503と、記憶部504と、制御部505とを備える。管理サーバ50の入力部501、出力部502、通信部503、記憶部504、制御部505の構成は、クライアントサーバ30の入力部301、出力部302、通信部303、記憶部304、制御部305の構成と同様である。記憶部504および制御部505は、グリッドコンピューティング処理を管理する管理システムの構成要素の一例である。
【0072】
この例では、記憶部504は、ユーザテーブルD51と、演算装置テーブルD52と、クライアントテーブルD53と、ジョブテーブルD54と、リソーステーブルD55と、マッチングテーブルD56と、ジョブデータD1と、計算結果データD2とを記憶する。
【0073】
〈ユーザテーブル〉
ユーザテーブルD51は、ユーザを管理するためのテーブルである。ユーザテーブルD51には、ユーザ毎に、そのユーザに設定されたユーザID、そのユーザに所有される車両10に設定された車両ID、そのユーザに所有される演算装置105に設定された演算装置ID、そのユーザに所有されるユーザ端末20に設定されたユーザ端末IDなどが登録される。
【0074】
〈演算装置テーブル〉
演算装置テーブルD52は、演算装置105を管理するためのテーブルである。演算装置テーブルD52には、演算装置105毎に、その演算装置105に設定された演算装置ID、その演算装置105を所有するユーザに設定されたユーザID、その演算装置105が搭載される車両10に設定された車両IDなどが登録される。
【0075】
また、演算装置テーブルD52には、演算装置105毎に、その演算装置105の性能(計算能力やCPUとGPUの比率など)、その演算装置105の稼働状況(稼働履歴および稼働予定)などが登録される。言い換えると、演算装置テーブルD52は、複数の演算装置105の各々の稼働状況を示す稼働状況情報D5と、複数の演算装置105の各々の性能を示す性能情報D6とを含む。性能情報D6は、複数の演算装置105の各々の計算能力を示す計算能力情報D7を含む。
【0076】
〈クライアントテーブル〉
クライアントテーブルD53は、クライアントを管理するためのテーブルである。クライアントテーブルD53には、クライアント毎に、そのクライアントに設定されたクライアントID、クライアントに所有されるクライアントサーバ30に設定されたクライアントサーバID、そのクライアントの担当者名、住所、電話番号などが登録される。
【0077】
〈ジョブテーブル〉
ジョブテーブルD54は、クライアントから依頼されたジョブを管理するためのテーブルである。ジョブテーブルD54には、ジョブ毎に、そのジョブに設定された受付番号、そのジョブを依頼したクライアントに設定されたクライアントID、そのジョブの名称および内容などが登録される。また、ジョブテーブルD54には、ジョブ毎に、そのジョブに対応するジョブデータの計算タイプおよび処理条件、そのジョブデータの計算に必要となる計算能力である必要計算能力、そのジョブに設定された納期などが登録される。
【0078】
〈リソーステーブル〉
リソーステーブルD55は、グリッドコンピューティング処理における計算能力を管理するためのテーブルである。具体的には、リソーステーブルD55は、後述する予測処理の結果を管理するためのテーブルである。リソーステーブルD55には、演算装置105毎に、その演算装置105に設定された演算装置ID、その演算装置105のグリッドコンピューティング処理において利用可能な計算能力の時間的変化の予測結果などが登録される。
【0079】
〈マッチングテーブル〉
マッチングテーブルD56は、後述するマッチング処理の結果を管理するためのテーブルである。マッチングテーブルD56には、ジョブ毎に、そのジョブに設定された受付番号、そのジョブに対応するジョブデータ、マッチング処理によりそのジョブデータに対して割り当てられた演算装置105に設定された演算装置IDなどが登録される。
【0080】
〈ジョブデータ〉
記憶部504に記憶されるジョブデータD1は、後述するジョブ受付処理により受け付けられたジョブデータD1である。
【0081】
〈計算結果データ〉
記憶部504に記憶される計算結果データD2は、後述するグリッドコンピューティング処理により計算されたジョブデータであり、その計算の結果を示す。
【0082】
〔ユーザテーブルの更新〕
次に、ユーザテーブルD51の更新について説明する。ユーザテーブルD51は、管理サーバ50の制御部505により更新される。
【0083】
例えば、新規のユーザがシステム1に加入すると、制御部505は、その新規のユーザに関連する情報をユーザテーブルD51に登録することで、ユーザテーブルD51を更新する。
【0084】
具体的には、制御部505は、新規のユーザに対してユーザIDを新たに設定し、新規のユーザに設定された「ユーザID」と、そのユーザに所有される車両10に設定された「車両ID」と、その車両10に搭載された演算装置105に設定された「演算装置ID」と、新規のユーザに所有されるユーザ端末20に設定された「ユーザ端末ID」とを関連付けて、ユーザテーブルD51に登録する。
【0085】
なお、新規のユーザに所有される車両10と管理サーバ50との通信により、新規のユーザに関連する「車両ID」と「演算装置ID」とを得ることが可能である。また、新規のユーザに所有されるユーザ端末20と管理サーバ50との通信により、新規のユーザに関連する「ユーザ端末ID」を得ることが可能である。
【0086】
〔演算装置テーブルの更新〕
次に、演算装置テーブルD52の更新について説明する。演算装置テーブルD52は、管理サーバ50の制御部505により更新される。
【0087】
例えば、新規の演算装置105がシステム1に加入すると、制御部505は、その新規の演算装置105に関連する情報を演算装置テーブルD52に登録することで、演算装置テーブルD52を更新する。
【0088】
具体的には、制御部505は、新規の演算装置105に設定された「演算装置ID」と、その演算装置105を所有するユーザに設定された「ユーザID」と、その演算装置105を搭載する車両10に設定された「車両ID」と、その演算装置105の「性能」および「稼働状況」とを関連付けて、演算装置テーブルD52に登録する。
【0089】
なお、新規の演算装置105を搭載する車両10と管理サーバ50との通信により、新規の演算装置105に関連する「演算装置ID」と「車両ID」と「性能」と「稼働状況」とを得ることが可能である。また、ユーザテーブルD51を参照することにより、新規の演算装置105に関連する「ユーザID」を得ることが可能である。
【0090】
〔演算装置テーブルの定期更新〕
また、演算装置テーブルD52に登録された演算装置105の「稼働状況」が定期的に更新される。言い換えると、演算装置テーブルD52に含まれる稼働状況情報D5が定期的に更新される。この定期更新は、管理サーバ50の制御部505により行われる。
【0091】
〈第1更新処理〉
例えば、車両10の「稼働履歴情報D15」に基づいて、演算装置テーブルD52の演算装置105の「稼働状況」(言い換えると稼働状況情報D5)が定期的に更新されてもよい。具体的には、制御部505は、演算装置テーブルD52に登録された演算装置105毎に、以下の第1更新処理を実行してもよい。
【0092】
第1更新処理では、制御部505は、演算装置105を搭載する車両10に対して「稼働履歴情報D15」へのアクセスを要求する。車両10の演算装置105は、その要求に応答して「稼働履歴情報D15」へのアクセスを許可する。制御部505は、その稼働履歴情報D15に示された演算装置105の稼働履歴に基づいて、演算装置テーブルD52に登録された演算装置105の「稼働状況」のうち過去の稼働状況である「稼働履歴」を更新する。
【0093】
〈第2更新処理〉
また、車両10の「走行履歴情報D13」に基づいて、演算装置テーブルD52の演算装置105の「稼働状況」(言い換えると稼働状況情報D5)が定期的に更新されてもよい。具体的には、制御部505は、演算装置テーブルD52に登録された演算装置105毎に、以下の第2更新処理を実行してもよい。
【0094】
第2更新処理では、制御部505は、演算装置105を搭載する車両10に対して「走行履歴情報D13」へのアクセスを要求する。車両10の演算装置105は、その要求に応答して「走行履歴情報D13」へのアクセスを許可する。制御部505は、その走行履歴情報D13に示された車両10の走行履歴に基づいて、演算装置105の稼働履歴を推定する。次に、制御部505は、その推定された演算装置105の稼働履歴に基づいて、演算装置テーブルD52に登録された演算装置105の「稼働状況」のうち過去の稼働状況である「稼働履歴」を更新する。
【0095】
〈第3更新処理〉
また、ユーザ端末20の「スケジュール情報D23」に基づいて、演算装置テーブルD52の演算装置105の「稼働状況」(言い換えると稼働状況情報D5)が定期的に更新されてもよい。具体的には、制御部505は、演算装置テーブルD52に登録された演算装置105毎に、以下の第3更新処理を実行してもよい。
【0096】
第3更新処理では、制御部505は、演算装置105を所有するユーザに所有されるユーザ端末20に対して「スケジュール情報D23」へのアクセスを要求する。ユーザ端末20の制御部205は、その要求に応答して「スケジュール情報D23」へのアクセスを許可する。制御部505は、そのスケジュール情報D23に示されたユーザの行動状況(行動履歴および行動予定)の中から、演算装置105を搭載する車両10に関連する行動状況を検出する。
【0097】
例えば、ユーザの行動状況のうち過去の行動状況である行動履歴の中から、そのユーザが車両10に搭乗していた行動履歴が検出され、ユーザの行動状況のうち未来の行動状況である行動予定の中から、そのユーザが車両10に搭乗する予定がある行動予定が検出される。
【0098】
次に、制御部505は、その検出されたユーザの行動状況に基づいて、車両10の走行状況(走行履歴および走行予定)を推定する。次に、制御部505は、その推定された車両10の走行状況に基づいて、演算装置105の稼働状況(稼働履歴および稼働予定)を推定する。そして、制御部505は、その推定された演算装置105の稼働状況に基づいて、演算装置テーブルD52に登録された演算装置105の「稼働状況」を更新する。
【0099】
〈第4更新処理〉
また、施設サーバ40の「施設利用情報D42」に基づいて、演算装置テーブルD52の演算装置105の「稼働状況」(言い換えると稼働状況情報D5)が定期的に更新されてもよい。具体的には、制御部505は、演算装置テーブルD52に登録された演算装置105毎に、以下の第4更新処理を実行してもよい。
【0100】
第4更新処理では、制御部505は、施設サーバ40に対して「施設利用情報D42」へのアクセスを要求する。施設サーバ40は、その要求に応答して「施設利用情報D42」へのアクセスを許可する。制御部505は、その施設利用情報D42に示された施設の利用状況(利用履歴および利用予定)の中から、演算装置105を搭載する車両10に関連する利用状況を検出する。
【0101】
例えば、施設の利用状況のうち過去の利用状況である利用履歴の中から、ユーザが車両10に搭乗していた利用履歴が検出され、施設の利用状況のうち未来の利用状況である利用予定の中から、ユーザが車両10に搭乗する予定がある利用予定が検出される。
【0102】
次に、制御部505は、その検出された施設の利用状況に基づいて、車両10の走行状況(走行履歴および走行予定)を推定する。次に、制御部505は、その推定された車両10の走行状況に基づいて、演算装置105の稼働状況(稼働履歴および稼働予定)を推定する。次に、制御部505は、その推定された演算装置105の稼働状況に基づいて、演算装置テーブルD52に登録された演算装置105の「稼働状況」を更新する。
【0103】
〔クライアントテーブルの更新〕
次に、クライアントテーブルD53の更新について説明得る。クライアントテーブルD53は、管理サーバ50の制御部505により更新される。
【0104】
例えば、新規のクライアントがシステム1に加入すると、制御部505は、その新規のクライアントに関連する情報をクライアントテーブルD53に登録することで、クライアントテーブルD53を更新する。
【0105】
具体的には、制御部505は、新規のクライアントに対してクライアントIDを新たに設定し、新規のクライアントに設定された「クライアントID」と、新規のクライアントに所有されるクライアントサーバ30に設定された「クライアントサーバID」と、新規のクライアントの「担当者」と「住所」と「電話番号」とを関連付けて、クライアントテーブルD53に登録する。
【0106】
なお、クライアントサーバ30と管理サーバ50との通信により、新規のクライアントに関する「クライアントサーバID」と「担当者」と「住所」と「電話番号」とを得ることが可能である。
【0107】
〔制御部による処理(管理方法)〕
制御部505は、ジョブ受付処理と、予測処理と、マッチング処理と、グリッドコンピューティング処理とを行う。
【0108】
〔ジョブ受付処理(ジョブ受付ステップ)〕
次に、
図8を参照して、ジョブ受付処理について説明する。ジョブ受付処理では、クライアントにより計算を依頼されたジョブデータD1を受け付ける。例えば、制御部505は、クライアントからジョブデータD1の計算が依頼される毎に、以下の処理を行う。
【0109】
〈ステップS11〉
まず、管理サーバ50は、クライアントからジョブの依頼を受け付ける。具体的には、クライアントサーバ30は、クライアントの担当者による操作に応答して、ジョブ依頼申請を管理サーバ50に送信する。管理サーバ50の制御部505は、その申請に応答して以下の処理を行う。
【0110】
制御部505は、ジョブの受付に必要となる情報(具体的にはジョブを依頼するクライアントに関するクライアント情報とジョブに関するジョブ情報)の送信をクライアントサーバ30に要求する。この例では、制御部505は、ジョブ受付画面の画像データをクライアントサーバ30に送信する。クライアントサーバ30の制御部305は、その画像データからジョブ受付画面の画像を再生し、その画像を出力部302(表示部)に出力(表示)させる。
【0111】
図9に示すように、ジョブ受付画面は、ジョブの受付に必要となる情報を入力させる画面である。ジョブ受付画面には、クライアント名を入力するクライアント名入力欄R101、クライアントの担当者名を入力する担当者名入力欄R102、クライアントの住所を入力する住所入力欄R104、ジョブの名称を入力するジョブ名称入力欄R111、ジョブの内容に関する説明を入力するジョブ内容入力欄R112、ジョブに対応するジョブデータの計算タイプを入力する計算タイプ入力欄R113、ジョブデータの処理条件を入力する処理条件入力欄R114、ジョブデータの必要計算能力を入力する必要計算能力入力欄R115、ジョブの納期を入力する納期入力欄R116と、登録ボタンB100とが設けられる。
【0112】
クライアントの担当者は、クライアントサーバ30の入力部301(操作部)を操作して、ジョブ受付画面に必要な情報を入力する。これにより、ジョブを依頼するクライアントに関するクライアント情報と、ジョブに関するジョブ情報とが入力される。そして、これらの情報の入力が完了すると、クライアントの担当者は、クライアントサーバ30の入力部301(操作部)を操作して、ジョブ受付画面の登録ボタンB100を押下する。登録ボタンB100が押下されると、クライアントサーバ30の制御部305は、ジョブ受付画面に入力された情報(クライアント情報およびジョブ情報)を管理サーバ50に送信する。管理サーバ50の制御部505は、クライアント情報とジョブ情報とを受信する。
【0113】
次に、制御部505は、ジョブに対応するジョブデータD1の送信をクライアントサーバ30に要求する。クライアントサーバ30の制御部305は、その要求に応答して、ジョブに対応するジョブデータD1を管理サーバ50に送信する。管理サーバ50の制御部505は、ジョブデータD1を受信する。
【0114】
〈ステップS12〉
次に、管理サーバ50の制御部505は、ステップS11において受信されたジョブデータD1を分析する。具体的には、制御部505は、ジョブデータD1の計算タイプ、処理条件、必要計算能力などを分析する。そして、制御部505は、ジョブデータD1の分析の結果に基づいて、ステップS11において受信されたジョブ情報を修正する。
【0115】
なお、ステップS11において受信されたジョブ情報が十分に信頼できる場合は、ステップS12の処理を省略してもよい。
【0116】
〈ステップS13〉
次に、管理サーバ50の制御部505は、ステップS11において受信されたクライアント情報と、ステップS12において必要に応じて修正されたジョブ情報(またはステップS11において受信されたジョブ情報)とを関連付けて、ジョブテーブルD54に登録する。また、制御部505は、ステップS11において受信されたジョブデータD1を記憶部504に記憶する。
【0117】
〔予測処理(予測ステップ)〕
次に、
図10を参照して、予測処理について説明する。予測処理では、記憶部504に記憶された演算装置テーブルD52(具体的には計算能力情報D7および稼働状況情報D5)に基づいて、複数の演算装置105のうちグリッドコンピューティング処理において利用可能な演算装置105の計算能力を予測する。例えば、制御部505は、記憶部504に記憶された演算装置テーブルD52(具体的には計算能力情報D7および稼働状況情報D5の少なくとも1つ)が更新されると、以下の処理を行う。
【0118】
〈ステップS21〉
まず、制御部505は、演算装置テーブルD52に登録された演算装置105の「計算能力」と「稼働状況」とを取得する。言い換えると、制御部505は、演算装置テーブルD52に含まれる計算能力情報D7と稼働状況情報D5とを取得する。
【0119】
〈ステップS22〉
次に、制御部505は、演算装置105毎に、計算能力情報D7に示された演算装置105の計算能力と、稼働状況情報D5に示された演算装置105の稼働状況に基づいて、演算装置105のグリッドコンピューティング処理において利用可能な計算能力の時間的変化を予測する。
【0120】
具体的には、制御部505は、稼働状況情報D5に示された演算装置105の稼働状況から、演算装置105の計算能力の利用率の変化の傾向(パターン)を予測する。この演算装置105の計算能力の利用率の変化の傾向の予測は、機械学習により実現されてもよい。そして、制御部505は、演算装置105の計算能力の利用率の変化の傾向に基づいて、その演算装置105の計算能力に余裕がある期間(計算能力の利用率が100%ではない期間)を予測し、その期間を「その演算装置105の計算能力をグリッドコンピューティング処理に利用することが可能な期間」とする。例えば、制御部505は、演算装置105の計算能力の利用率が「30%」である期間を、演算装置105の計算能力の「70%」をグリッドコンピューティング処理において利用することが可能な期間とする。
【0121】
〈ステップS23〉
次に、制御部505は、演算装置105毎に、ステップS22において予測された演算装置105のグリッドコンピューティング処理において利用可能な計算能力の時間的変化を、リソーステーブルD55に登録する。これにより、リソーステーブルD55が更新される。
【0122】
〔マッチング処理(マッチングステップ)〕
次に、
図11を参照して、マッチング処理について説明する。マッチング処理は、予測処理の予測結果に基づいて、受付処理において受け付けられたジョブデータD1に対し、複数の演算装置105のうちグリッドコンピューティング処理において利用可能な演算装置105を割り当てる処理である。例えば、制御部505は、ジョブ受付処理の完了後に、以下の処理を行う。
【0123】
〈ステップS31〉
まず、制御部505は、ジョブテーブルD54に登録されたジョブの中からマッチング処理の対象となるジョブを選択する。そして、制御部505は、記憶部504に記憶されたジョブデータD1の中からマッチング処理の対象となるジョブに対応するジョブデータD1を選択する。
【0124】
〈ステップS32〉
次に、制御部505は、リソーステーブルD55に登録された複数の演算装置105の各々のグリッドコンピューティング処理において利用可能な計算能力の時間的変化の予測結果に基づいて、複数の演算装置105の中から、ステップS31において選択されたジョブデータD1に対するグリッドコンピューティング処理において利用可能な演算装置105を選択する。
【0125】
具体的には、制御部505は、ジョブデータD1に対するグリッドコンピューティング処理が実行される計算予定期間を決定し、複数の演算装置105の中から計算予定期間において計算能力を提供することが可能な演算装置105を検出する。そして、制御部505は、「グリッドコンピューティング処理に提供される計算能力の合計」が「グリッドコンピューティング処理においてジョブデータD1の計算に必要とされる計算能力」以上となるように、計算予定期間において計算能力を提供することが可能な演算装置105の中から、ジョブデータD1に割り当てられる演算装置105を選択する。
【0126】
〈ステップS33〉
次に、制御部505は、ステップS31において選択されたジョブデータD1に対し、ステップS32において選択された演算装置105を割り当てる。そして、制御部505は、どのジョブデータD1にどの演算装置105が割り当てられたのかを示すマッチング結果情報をマッチングテーブルD56に登録する。
【0127】
〔グリッドコンピューティング処理〕
次に、
図12を参照して、グリッドコンピューティング処理について説明する。グリッドコンピューティング処理では、複数の演算装置105のうち利用可能な演算装置105にジョブデータD1を処理させる。例えば、制御部505は、マッチング処理の完了後に、以下の処理を行う。
【0128】
〈ステップS41〉
まず、制御部505は、マッチングテーブルD56を参照し、グリッドコンピューティング処理の対象となるジョブデータD1を、マッチング処理においてそのジョブデータD1に割り当てられた演算装置105に分配する。具体的には、制御部505は、ジョブデータD1に割り当てられた演算装置105の各々に、そのジョブデータD1の一部を送信する。これにより、ジョブデータD1は、そのジョブデータD1に割り当てられた演算装置105により並列処理される。
【0129】
〈ステップS42〉
次に、演算装置105の各々は、その演算装置105に送信されたデータ(ジョブデータD1の一部)の計算が完了すると、その計算により得られた部分計算結果データを管理サーバ50に送信する。管理サーバ50の制御部505は、演算装置105から送信された部分計算結果データを受信し、その部分計算結果データを記憶部504に記憶する。
【0130】
〈ステップS43〉
制御部505は、ステップS41においてジョブデータD1が分配された演算装置105の全てが計算を完了したか否かを判定する。演算装置105の全てが計算を完了している場合には、ステップS44の処理が行われ、そうでない場合には、ステップS42の処理が行われる。
【0131】
〈ステップS44〉
演算装置105の全てが計算を完了すると、制御部505は、記憶部504に記憶された部分計算結果データを結合することで、グリッドコンピューティング処理の対象となるジョブデータD1に対応する計算結果データD2(ジョブデータD1の計算の結果を示す計算結果データD2)を生成する。そして、制御部505は、グリッドコンピューティング処理の対象となるジョブデータD1に対応する計算結果データD2を、そのジョブデータD1の計算を依頼したクライアントのクライアントサーバ30に送信する。
【0132】
〈ステップS45〉
次に、グリッドコンピューティング処理に演算装置105の計算能力を提供したユーザに対して、システム1を運営する事業者から報酬が付与される。ユーザに付与される報酬の例としては、システム1において利用可能なポイント、仮想通貨、商品の割引特典などが挙げられる。例えば、管理サーバ50の制御部505は、グリッドコンピューティング処理に演算装置105の計算能力を提供したユーザに対して報酬を付与するための処理を行う。報酬を付与するための処理の例としては、ユーザに設定された「ユーザID」とシステム1において利用可能な「ポイント」(または仮想通貨)とを関連付けてユーザテーブルD51に登録する処理、ユーザに所有されるユーザ端末20に商品の割引特典を示す情報を送信する処理などが挙げられる。なお、報酬を示す情報は、ジョブテーブルD54においてジョブ毎に登録されてもよい。
【0133】
また、グリッドコンピューティング処理に演算装置105の計算能力を提供したユーザに対して、クライアントから報酬が付与されてもよい。例えば、クライアントサーバ30の制御部305は、グリッドコンピューティング処理に演算装置105の計算能力を提供したユーザに対して報酬を付与するための処理を実行してもよい。
【0134】
〔ジョブ経過確認〕
なお、この例では、管理サーバ50の制御部505は、ジョブを依頼したクライアントのクライアントサーバ30からジョブの処理経過の確認が要求されると、その要求に応答して、そのジョブの処理経過を確認するための確認画面の画像データをクライアントサーバ30に送信する。クライアントサーバ30は、その画像データから確認画面の画像を再生し、その画像を出力部302(表示部)に出力(表示)させる。
【0135】
図13に示すように、確認画面には、ジョブの名称を表示するジョブ名称表示欄R201と、ジョブの処理経過を表示する処理経過表示欄R202と、ジョブの処理が開始される日時を示す計算開始日時表示欄R203と、ジョブの処理が終了する日時を示す計算終了日時表示欄R204と、ジョブに対するグリッドコンピューティング処理に演算装置105の計算能力を提供するユーザを示す参加ユーザ表示欄R205とが設けられる。
【0136】
〔実施形態の効果〕
以上のように、実施形態のシステム1では、グリッドコンピューティングの計算能力をクライアントに提供することができる。
【0137】
また、グリッドコンピューティングに演算装置105の計算能力を提供したユーザに対して報酬を付与することにより、グリッドコンピューティングへの演算装置105の計算能力の提供を促進させることができる。これにより、グリッドコンピューティングの計算能力の確保を容易にすることができる。
【0138】
(実施形態の変形例1)
なお、ジョブデータD1の計算タイプを考慮してマッチング処理が行われてもよい。
【0139】
実施形態の変形例1では、制御部505は、マッチング処理において、ジョブデータD1に対し、複数の演算装置105のうちグリッドコンピューティング処理において利用可能であり且つジョブデータD1の計算タイプに対応する性能を有する演算装置105を割り当てる。
【0140】
以上のような構成により、ジョブデータD1の計算タイプに応じてジョブデータD1に対する演算装置105の割り当てを適切に行うことができる。例えば、CPU系の計算タイプのジョブデータD1に対し、CPUの比率がGPUの比率よりも高い演算装置105を割り当てることができる。また、GPU系の計算タイプのジョブデータD1に対し、GPUの比率がCPUの比率よりも高い演算装置105を割り当てることができる。
【0141】
(実施形態の変形例2)
また、ジョブデータD1の実行条件を考慮してマッチング処理が行われてもよい。
【0142】
実施形態の変形例2では、制御部505は、マッチング処理において、ジョブデータD1に対し、複数の演算装置105のうちグリッドコンピューティング処理において利用可能であり且つジョブデータD1の実行条件に対応する性能を有する演算装置105を割り当てる。
【0143】
以上のような構成により、ジョブデータD1の実行条件に応じてジョブデータD1に対する演算装置105の割り当てを適切に行うことができる。例えば、常時通信が要求される処理条件のジョブデータD1に対し、常時通信が可能な演算装置105を割り当てることができる。また、常時通信が要求されない処理条件のジョブデータD1に対し、常時通信が可能ではない演算装置105を割り当てることができる。
【0144】
(実施形態の変形例3)
また、ジョブデータD1の納期を考慮してマッチング処理が行われてもよい。
【0145】
実施形態の変形例3では、制御部505は、マッチング処理において、ジョブデータD1に設定された納期までジョブデータD1に対するグリッドコンピューティング処理が完了するように、ジョブデータD1に対し、複数の演算装置の105うちグリッドコンピューティング処理において利用可能な演算装置105を割り当てる。
【0146】
以上のような構成により、ジョブデータD1の納期に応じてジョブデータD1に対する演算装置105の割り当てを適切に行うことができる。
【0147】
(実施形態の変形例4)
また、演算装置105の通信状態(詳しくは演算装置105を搭載する車両10の通信状態)を考慮してマッチング処理が行われてもよい。
【0148】
実施形態の変形例4では、制御部505は、演算装置105毎に、演算装置105の通信状態の品質を監視し、演算装置105の通信状態の履歴から演算装置105の通信状態の品質の時間的変化を予測(学習)する。そして、制御部505は、マッチング処理において、ジョブデータD1に対し、複数の演算装置105のうちグリッドコンピューティング処理において利用可能であり且つ通信状態の品質が所定品質を上回る演算装置105を割り当てる。
【0149】
以上のような構成により、演算装置105の通信状態の品質に応じてジョブデータD1に対する演算装置105の割り当てを適切に行うことができる。
【0150】
(実施形態の変形例5)
また、演算装置105が搭載された車両10の電池の残量を考慮してマッチング処理が行われてもよい。
【0151】
実施形態の変形例5では、制御部505は、車両10毎に、車両10の電池の残量を監視し、車両10の電池の残量の履歴から車両10の電池の残量の時間的変化を予測(学習)する。そして、制御部505は、マッチング処理において、ジョブデータD1に対し、複数の演算装置105のうちグリッドコンピューティング処理において利用可能であり且つ車両10の電池の残量が所定量を上回る車両10に搭載された演算装置105を割り当てる。
【0152】
以上のような構成により、演算装置105が搭載された車両10の電池の残量に応じてジョブデータD1に対する演算装置105の割り当てを適切に行うことができる。
【0153】
(実施形態の変形例6)
また、演算装置105が搭載された車両10が駐車中であるか否かを考慮してマッチング処理が行われてもよい。
【0154】
実施形態の変形例6では、制御部505は、車両10毎に、車両10の位置を監視し、車両10の位置の履歴から車両10の駐車期間を予測(学習)する。そして、制御部505は、マッチング処理において、ジョブデータD1に対し、複数の演算装置105のうちグリッドコンピューティング処理において利用可能であり且つ駐車中の車両10に搭載された演算装置105を割り当てる。
【0155】
以上のような構成により、演算装置105が搭載された車両10が駐車中であるか否かに応じてジョブデータD1に対する演算装置105の割り当てを適切に行うことができる。
【0156】
(実施形態の変形例7)
また、演算装置105が搭載された車両10が充電設備において充電中であるか否かを考慮してマッチング処理が行われてもよい。
【0157】
実施形態の変形例7では、制御部505は、車両10毎に、車両10の充電(充電設備における充電)の有無を監視し、車両10の充電の有無の履歴から車両10の充電期間を予測(学習)する。そして、制御部505は、マッチング処理において、ジョブデータD1に対し、複数の演算装置105のうちグリッドコンピューティング処理において利用可能であり且つ充電設備において充電中の車両10に搭載された演算装置105を割り当てる。
【0158】
以上のような構成により、演算装置105が搭載された車両10が充電設備において充電中であるか否か応じてジョブデータD1に対する演算装置105の割り当てを適切に行うことができる。
【0159】
(その他の実施形態)
以上の説明では、管理システムの記憶部504と制御部505とが単一の管理サーバ50に集約される場合を例に挙げたが、これに限定されない。例えば、記憶部504と制御部505は、通信網5を経由して互いに通信する複数の管理サーバ50(図示省略)に分散されてもよい。
【0160】
また、以上の説明において、管理システムの記憶部504は、単一の記憶装置により構成されてもよいし、複数の記憶装置により構成されてもよい。複数の記憶装置は、単一の管理サーバ50に集約されてもよいし、通信網5を経由して互いに通信する複数の管理サーバ50(図示省略)に分散されてもよい。
【0161】
また、以上の説明において、管理システムの制御部505は、単一の制御ユニットにより構成されてもよいし、複数の制御ユニットにより構成されてもよい。複数の制御ユニットは、単一の管理サーバ50に集約されてもよいし、通信網5を経由して互いに通信する複数の管理サーバ50(図示省略)に分散されてもよい。
【0162】
また、以上の説明において、演算装置105は、単一の演算ユニットにより構成されてもよいし、複数の演算ユニットにより構成されてもよい。複数の演算ユニットは、単一の管理サーバ50に集約されてもよいし、通信網5を経由して互いに通信する複数の管理サーバ50(図示省略)に分散されてもよい。
【0163】
また、以上の説明では、演算装置105が車両10(具体的には自動四輪車)に搭載される場合を例に挙げたが、これに限定されない。例えば、演算装置105は、車両10ではない他の移動体に搭載されてもよい。このような移動体の例としては、輸送用機械、携帯情報端末などが挙げられる。輸送用機械の例としては、自動二輪車、鉄道車両、船舶、航空機、ドローンなどが挙げられる。車両は、輸送用機械の一例である。携帯情報端末の例としては、ノート型パーソナルコンピュータ、タブレット、スマートフォンなどが挙げられる。
【0164】
また、以上の説明において、グリッドコンピューティング処理に対し、車両10に搭載された演算装置105の計算能力だけでなく、他の演算装置(図示省略)の計算能力も供給されてもよい。このような他の演算装置は、据置型の演算装置(例えばデスクトップ型パーソナルコンピュータ)であってもよい。
【0165】
また、以上の実施形態を適宜組み合わせて実施してもよい。以上の実施形態は、本質的に好ましい例示であって、ここに開示する技術、その適用物、あるいはその用途の範囲を制限することを意図するものではない。
【産業上の利用可能性】
【0166】
以上説明したように、ここに開示する技術は、グリッドコンピューティングを管理する技術として有用である。
【符号の説明】
【0167】
1 システム
10 車両
105 演算装置
20 ユーザ端末
30 クライアントサーバ
40 施設サーバ
50 管理サーバ
501 入力部
502 出力部
503 通信部
504 記憶部
505 制御部
D1 ジョブデータ
D2 計算結果データ