図面 (/)

技術 処理割当方法、処理割当装置、及び処理割当プログラム

出願人 富士通株式会社
発明者 舟橋涼一田中竜太
出願日 2015年7月2日 (4年8ヶ月経過) 出願番号 2015-133869
公開日 2017年1月19日 (3年1ヶ月経過) 公開番号 2017-016478
状態 特許登録済
技術分野 マルチプログラミング
主要キーワード 可搬型記憶媒体用 処理配置 処理割当 一連処理 割当管理テーブル ストリームデータ処理 分散実行 割当状況
関連する未来課題
重要な関連分野

この項目の情報は公開日時点(2017年1月19日)のものです。
また、この項目は機械的に抽出しているため、正しく解析できていない場合があります

図面 (20)

課題

一連の処理を複数のノード分散実行する場合のネットワーク負荷を低減する。

解決手段

複数の関連する処理を、処理間のデータ通信に必要な帯域に基づいて、少なくとも1つの処理を含む処理グループに分割し、ネットワークに接続された複数のノード(50−1〜50−n)のうち、分割後の各処理グループに含まれる全ての処理を実行可能なノードを前記処理グループごとに特定し、特定したノードに各処理グループを割り当てる、処理をコンピュータが実行する。

概要

背景

従来から、一連の処理を複数の情報処理装置(以下、ノードと記載する)で分散実行することが行われている。分散実行により、1つのノードでは処理しきれない一連の処理を実行したり、1つのノードで一連の処理を実行するよりも実行時間を低減したりすることが可能となる。また、一連の処理を実行するにあたり、開始ノード終了ノードとが固定されているため、当該一連の処理を複数のノードで分散実行する場合もある。

一連の処理を分散実行する場合、各処理をネットワーク上のノードに割り当てる。例えば、非特許文献1では、複数の関連する処理から構成されるストリームデータ処理において、各処理を開始ノードと終了ノードとの間の最短経路上のノードに割り当てている。

概要

一連の処理を複数のノードで分散実行する場合のネットワーク負荷を低減する。複数の関連する処理を、処理間のデータ通信に必要な帯域に基づいて、少なくとも1つの処理を含む処理グループに分割し、ネットワークに接続された複数のノード(50−1〜50−n)のうち、分割後の各処理グループに含まれる全ての処理を実行可能なノードを前記処理グループごとに特定し、特定したノードに各処理グループを割り当てる、処理をコンピュータが実行する。

目的

本発明は、一連の処理を複数のノードで分散実行する場合のネットワーク負荷を低減することができる処理割当方法、処理割当装置、及び処理割当プログラムを提供する

効果

実績

技術文献被引用数
0件
牽制数
0件

この技術が所属する分野

(分野番号表示ON)※整理標準化データをもとに当社作成

ライセンス契約や譲渡などの可能性がある特許掲載中! 開放特許随時追加・更新中 詳しくはこちら

請求項1

複数の関連する処理を、処理間のデータ通信に必要な帯域に基づいて、少なくとも1つの処理を含む処理グループに分割し、ネットワークに接続された複数のノードのうち、分割後の各処理グループに含まれる全ての処理を実行可能なノードを前記処理グループごとに特定し、特定したノードに各処理グループを割り当てる、処理をコンピュータが実行することを特徴とする処理割当方法。

請求項2

前記分割する処理では、前記処理間のデータ通信に必要な帯域が大きい処理を優先して同一の処理グループに含めることを特徴とする請求項1に記載の処理割当方法。

請求項3

前記分割する処理では、前記複数の関連する処理を、前記処理間のデータ通信に必要な帯域が最小となる処理間で分割することを特徴とする請求項1に記載の処理割当方法。

請求項4

前記分割する処理では、前記複数の関連する処理を、前記処理間のデータ通信に必要な帯域が所定の帯域以下となる処理間で分割することを特徴とする請求項1に記載の処理割当方法。

請求項5

分割後の処理グループに含まれる全ての処理を実行可能なノードが無い場合、前記分割後の処理グループを、前記分割後の処理グループに含まれる処理間のデータ通信に必要な帯域に基づいて分割する、ことを特徴とする請求項1〜4のいずれか一項に記載の処理割当方法。

請求項6

前記複数の関連する処理を開始する第1のノードと終了する第2のノードとが定められている場合、前記分割する処理では、前記第1のノードの計算リソースと、処理間のデータ通信に必要な帯域と、に基づいて前記複数の関連する処理の最初の処理を含む処理グループを第1の処理グループとして分割するとともに、前記第2のノードの計算リソースと、処理間のデータ通信に必要な帯域と、に基づいて前記複数の関連する処理の最後の処理を含む処理グループを第2の処理グループとして分割し、前記割り当てる処理では、前記第1のノードに前記第1の処理グループを割り当て、前記第2のノードに前記第2の処理グループを割り当てる、ことを特徴とする請求項1〜5のいずれか一項に記載の処理割当方法。

請求項7

前記複数の関連する処理のうちの所定の処理を実行する第3のノードが定められている場合、前記分割する処理では、前記複数の関連する処理の最初の処理から前記所定の処理までの処理において、前記第3のノードの計算リソースと、処理間のデータ通信に必要な帯域と、に基づいて、前記所定の処理を含む処理グループを第3の処理グループとして分割するとともに、前記所定の処理から前記複数の関連する処理の最後の処理までの処理において、前記第3のノードの計算リソースと、処理間のデータ通信に必要な帯域と、に基づいて、前記所定の処理を含む処理グループを第4の処理グループとして分割し、前記割り当てる処理では、前記第3のノードに前記第3の処理グループと前記第4の処理グループとを割り当てる、ことを特徴とする請求項1〜6のいずれか一項に記載の処理割当方法。

請求項8

前記割り当てる処理では、分割後の処理グループに含まれる全ての処理を実行可能なノードが複数存在する場合、処理を割当済みのノードからの通信コストに基づいて、前記分割後の処理グループを割り当てるノードを特定する、ことを特徴とする請求項1〜7のいずれか一項に記載の処理割当方法。

請求項9

複数の関連する処理を、処理間のデータ通信に必要な帯域に基づいて分割し、少なくとも1つの処理を含む処理グループを作成する処理グループ作成部と、ネットワークに接続された複数のノードのうち、分割後の各処理グループに含まれる全ての処理を実行可能なノードを前記処理グループごとに特定し、特定したノードに各処理グループを割り当てるノード割当部と、を備える処理割当装置

請求項10

複数の関連する処理を、処理間のデータ通信に必要な帯域に基づいて、少なくとも1つの処理を含む処理グループに分割し、ネットワークに接続された複数のノードのうち、分割後の各処理グループに含まれる全ての処理を実行可能なノードを前記処理グループごとに特定し、特定したノードに各処理グループを割り当てる、処理をコンピュータに実行させることを特徴とする処理割当プログラム

技術分野

0001

本発明は、処理割当方法、処理割当装置、及び処理割当プログラムに関する。

背景技術

0002

従来から、一連の処理を複数の情報処理装置(以下、ノードと記載する)で分散実行することが行われている。分散実行により、1つのノードでは処理しきれない一連の処理を実行したり、1つのノードで一連の処理を実行するよりも実行時間を低減したりすることが可能となる。また、一連の処理を実行するにあたり、開始ノード終了ノードとが固定されているため、当該一連の処理を複数のノードで分散実行する場合もある。

0003

一連の処理を分散実行する場合、各処理をネットワーク上のノードに割り当てる。例えば、非特許文献1では、複数の関連する処理から構成されるストリームデータ処理において、各処理を開始ノードと終了ノードとの間の最短経路上のノードに割り当てている。

0004

特開2006−14981号公報

先行技術

0005

福田茂紀 et al.、“広域処理分散自動化におけるスケーラブル外部環境変化への追従手法の提案”、マルチメディア、分散、協調モバイルDICOMO2014)シンポジウム、674、平成26年7月

発明が解決しようとする課題

0006

しかしながら、従来技術では、連続する2つの処理間で授受されるデータ量について十分に考慮されていないため、各処理が適切なノードに割り当てられていない可能性があり、分散実行時のネットワーク負荷が増大するおそれがある。

0007

1つの側面では、本発明は、一連の処理を複数のノードで分散実行する場合のネットワーク負荷を低減することができる処理割当方法、処理割当装置、及び処理割当プログラムを提供することを目的とする。

課題を解決するための手段

0008

一つの態様では、処理割当方法は、複数の関連する処理を、処理間のデータ通信に必要な帯域に基づいて、少なくとも1つの処理を含む処理グループに分割し、ネットワークに接続された複数のノードのうち、分割後の各処理グループに含まれる全ての処理を実行可能なノードを前記処理グループごとに特定し、特定したノードに各処理グループを割り当てる、処理をコンピュータが実行する。

発明の効果

0009

1つの側面として、一連の処理を複数のノードで分散実行する場合のネットワーク負荷を低減することができる。

図面の簡単な説明

0010

一実施形態に係る分散処理システムの構成を概略的に示す図である。
処理配置実行サーバ及び処理割当サーバ機能ブロック図である。
図3(a)は、処理配置実行サーバのハードウェア構成の一例を示す図であり、図3(b)は、処理割当サーバのハードウェア構成の一例を示す図である。
図4(a)は一連処理構成情報の一例を示す図であり、図4(b)は、一連の処理を模式的に示す図である。
図5(a)は、ネットワーク構成情報の一例を示す図であり、図5(b)は、通信コスト情報の一例を示す図であり、図5(c)は、ネットワーク構成を模式的に示す図である。
図6(a)は、リソース割当管理テーブルのデータ構成を示す図であり、図6(b)は、ノード割当情報テーブルのデータ構成を示す図である。
処理割当サーバによる割当処理を示すフローチャートである。
開始ノード・終了ノードへの割当処理の詳細を示すフローチャートである。
割当処理を説明するための図である。
開始ノード・終了ノードへの割当処理を説明するための図(その1)である。
開始ノード・終了ノードへの割当処理を説明するための図(その2)である。
割当処理のステップS14について説明するための図(その1)である。
割当処理のステップS14について説明するための図(その2)である。
割当処理のステップS14について説明するための図(その3)である。
ノード決定処理の詳細を示すフローチャートである。
ノード決定処理を説明するための図(その1)である。
ノード決定処理を説明するための図(その2)である。
ノード決定処理を説明するための図(その3)である。
特定の処理を行うノードが指定されている場合における割当処理について説明するための図である。

実施例

0011

以下、分散処理システムの一実施形態について、図1図18に基づいて詳細に説明する。

0012

図1には、一実施形態にかかる分散処理システム100の構成が概略的に示されている。分散処理システム100は、処理割当サーバ10と、処理配置実行サーバ20と、クライアント端末30と、複数のノード50−1〜50−nとを含む。クライアント端末30と、処理配置実行サーバ20と、処理割当サーバ10と、ノード50−1〜50−nとは、インターネット、LAN(Local Area Network)、WAN(Wide Area Network)等、有線又は無線のネットワーク80を介して接続されている。

0013

分散処理システム100において、クライアント端末30は、複数の関連する処理を含む一連の処理の実行を処理配置実行サーバ20に要求する。例えば、クライアント端末30は、デジタルカメラ等が撮影した撮影画像から顔画像だけを抽出して、データベース登録されている顔画像と照合する一連の処理の実行を処理配置実行サーバ20に要求する。当該一連の処理は、撮影画像の符号化、複合化、顔画像の抽出、顔画像の圧縮、顔画像の照合等の複数の関連する処理を含む。処理配置実行サーバ20は、クライアント端末30から一連の処理の実行要求受け付けると、一連の処理をネットワーク80上のノード50−1〜50—nにて分散実行するために、ノード50−1〜50—nに対する各処理の割り当てを処理割当サーバ10に要求する。処理割当サーバ10は、処理配置実行サーバ20から割当要求を受け付けると、一連の処理に含まれる各処理を割り当てるノードを複数のノード50−1〜50−nから決定し、各処理のノード50−1〜50−nへの割当結果を処理配置実行サーバ20に送信する。処理割当サーバ10から割当結果を受信した処理配置実行サーバ20は、各処理をノード50−1〜50−nに配置し、実行させる。ノード50−1〜50−nは、処理配置実行サーバ20から割り当てられた処理を実行し、実行結果をクライアント端末30に送信する。

0014

図2は、処理配置実行サーバ20及び処理割当サーバ10の機能ブロック図である。

0015

処理配置実行サーバ20は、割当要求部201と、処理配置実行部202とを備える。処理配置実行サーバ20は、図3(a)に示すようなハードウェア構成を有する。具体的には、処理配置実行サーバ20は、図3(a)に示すように、CPU211、ROM212、RAM213、記憶装置(HDD:Hard Disk Drive)214、ネットワークインタフェース215、及び可搬型記憶媒体216に記憶されたデータを読み取り可能な可搬型記憶媒体用ドライブ217等を備えている。これら処理配置実行サーバ20の構成各部は、バス218に接続されている。CPU211は、ROM212あるいはHDD214に格納されているプログラム、或いは可搬型記憶媒体用ドライブ217が可搬型記憶媒体216から読み取ったプログラムを実行することで、処理配置実行サーバ20を図2の各部として機能させる。

0016

図2戻り、割当要求部201は、クライアント端末30から、複数の関連する処理を含む一連の処理の実行要求を受信する。実行要求を受信した割当要求部201は、当該一連の処理に関する情報(以後、一連処理構成情報と記載する)を処理割当サーバ10に送信し、当該一連の処理に含まれる各処理のノードへの割り当てを要求する。また、割当要求部201は、一連の処理を分散して実行するネットワークの構成情報(以後、ネットワーク構成情報と記載する)と、当該ネットワークにおける通信コストに関する情報(以後、通信コスト情報と記載する)とを処理割当サーバ10に送信する。さらに、割当要求部201は、一連の処理を開始するノード(開始ノード)と、一連の処理を終了するノード(終了ノード)とが予め定められている場合には、開始ノード及び終了ノードの情報を処理割当サーバ10に送信する。

0017

処理配置実行部202は、処理割当サーバ10から、各処理のノードへの割当結果を受信し、当該割当結果に基づいて、一連の処理に含まれる各処理を各ノードに配置し、実行させる。

0018

ここで、一連処理構成情報、ネットワーク構成情報、及び通信コスト情報について詳細に説明する。

0019

まず、一連処理構成情報について、図4(a)に基づいて説明する。一連処理構成情報は、図4(a)に示すように、処理名、必要計算量、及び出力側必要帯域等のフィールドを有する。処理名のフィールドには、一連の処理に含まれる処理の名称が格納される。必要計算量のフィールドには、各処理を行うにあたり必要な計算量の情報が格納される。出力側必要帯域のフィールドには、直後の処理との間のデータ通信に必要な帯域の情報が格納される。図4(a)の一連処理構成情報に基づいて、一連の処理を模式的に表すと図4(b)となる。

0020

次に、ネットワーク構成情報及び通信コスト情報について、それぞれ、図5(a)及び図5(b)に基づいて説明する。ネットワーク構成情報は、図5(a)に示すように、ノード名、計算リソース、及び接続リンク等のフィールドを有する。ノード名のフィールドには、ネットワーク上に存在するノードの名称が格納される。計算リソースのフィールドには、各ノードにおいて実行可能な計算量の情報が格納される。接続リンクのフィールドには、各ノードに接続されているリンクの情報(図5(a)ではリンクの名称)が格納される。

0021

通信コスト情報は、図5(b)に示すように、リンク名及び通信コスト等のフィールドを有する。リンク名のフィールドには、ネットワーク上に存在するリンクの名称が格納される。通信コストのフィールドには、リンクを経由して通信する場合の通信コストの情報が格納される。図5(a)のネットワーク構成情報及び図5(b)の通信コスト情報に基づいて、ネットワークを模式的に表すと図5(c)となる。なお、図5(c)及び以後の図面において、CRは計算リソースを表し、CCは通信コストを表す。

0022

図2に戻り、処理割当サーバ10は、処理グループ作成部103、ノード決定部105、及び情報出力部107を備える。処理割当サーバ10は、図3(b)に示すようなハードウェア構成を有する。具体的には、処理割当サーバ10は、図3(b)に示すように、CPU111、ROM112、RAM113、記憶装置(HDD)114、ネットワークインタフェース115、及び可搬型記憶媒体116に記憶されたデータを読み取り可能な可搬型記憶媒体用ドライブ117等を備えている。これら処理割当サーバ10の構成各部は、バス118に接続されている。CPU111は、ROM112あるいはHDD114に格納されているプログラム(処理割当プログラムを含む)、或いは可搬型記憶媒体用ドライブ117が可搬型記憶媒体116から読み取ったプログラム(処理割当プログラムを含む)を実行することで、処理割当サーバ10を図2の各部として機能させる。

0023

図2に戻り、処理グループ作成部103は、処理配置実行サーバ20から、一連の処理に含まれる各処理をノードへ割り当てる要求を受信する。また、処理グループ作成部103は、処理配置実行サーバ20から、一連処理構成情報(図4(a))、ネットワーク構成情報(図5(a))、及び通信コスト情報(図5(b))を受信する。また、処理グループ作成部103は、処理配置実行サーバ20から開始ノード及び終了ノードの情報を受信する。

0024

本実施形態では、処理グループ作成部103は、受信したネットワーク構成情報(図5(a))に基づいて、リソース割当管理テーブルを作成する。リソース割当管理テーブルは、各ノードの計算リソースの割当状況を管理するためのテーブルであり、例えば、図6(a)に示すように、ノード名、計算リソース、割当済み処理、及び残計算リソース等のフィールドを有する。ノード名のフィールドには、ノードの名称が格納される。計算リソースのフィールドには、ノードが実行可能な計算量の情報が格納される。割当済み処理のフィールドには、ノードに対して割り当てられた処理の情報が格納される。残計算リソースのフィールドには、ノードの計算リソースから割当済み処理の必要計算量を差し引いた値が格納される。すなわち、残計算リソースのフィールドには、処理を割当済みのノードにおいて実行可能な残りの計算量の情報が格納される。

0025

また、処理グループ作成部103は、受信した一連処理構成情報に基づいて、ノード割当情報テーブルを作成する。ノード割当情報テーブルは、各処理を割り当てたノードの情報を管理するためのテーブルであり、例えば、図6(b)に示すように、処理名及び割当ノード等のフィールドを有する。処理名のフィールドには、一連の処理に含まれる処理の名称が格納される。割当ノードのフィールドには、各処理が割り当てられたノードの情報が格納される。

0026

図2に戻り、処理グループ作成部103は、処理間のデータ通信に必要な帯域(以下、必要帯域と記載する)に基づいて一連の処理を分割し、1以上の処理を含む処理グループを作成する。本実施形態では、処理グループ作成部103は、処理間の必要帯域が最小となる処理間で一連の処理を分割し、処理グループを作成する。処理グループ作成部103は、処理グループを作成すると、処理グループのノードへの割当を管理する処理グループ割当管理テーブル図10(a)参照)を作成する(詳細は後述する)。なお、処理間のデータ通信に必要な帯域とは、2つの連続する処理を、別々のノードに割り当てた場合に、各処理を実行するノード間でのデータ通信に必要となる帯域のことである。

0027

ノード決定部105は、例えば、リソース割当管理テーブル(図6(a)参照)を参照して、ネットワーク上の複数のノードから、処理グループに含まれる全ての処理を実行可能なノードを検索し、処理グループを割り当てるノードを決定する。ノード決定部105は、処理グループに含まれる処理を決定したノードに割り当てる。

0028

情報出力部107は、各処理のノードへの割当結果(例えば、ノード割当情報テーブル)を処理配置実行サーバ20に送信する。

0029

以下、処理割当サーバ10において実行される処理について、図7図8、及び図15のフローチャートに沿って、その他図面を適宜参照しつつ、詳細に説明する。

0030

図7には、処理割当サーバ10による割当処理がフローチャートにて示されている。本処理は、一連の処理に含まれる各処理をノードに割り当てる、すなわち、各処理を実行するノードを決定する処理である。図7の処理は、処理割当サーバ10が、処理配置実行サーバ20から割当要求を受信すると開始される。

0031

図7の処理では、まず、ステップS10において、処理グループ作成部103は、開始ノード及び終了ノードが指定されているか否かを判断する。開始ノード及び終了ノードの指定がない場合には、ステップS12に移行する。

0032

一方、開始ノード及び終了ノードが指定されている場合、ステップS11に移行し、処理グループ作成部103は、図8の開始ノード・終了ノードへの割当処理を開始する。ここで、処理割当サーバ10が、図9(a)に示すネットワークにおいて開始ノードをノード1、終了ノードをノード3として、図9(b)に示す一連の処理をノードへ割り当てる要求を受信したとする。この場合、開始ノード及び終了ノードが指定されているので、図7のステップS10の判断が肯定され、処理グループ作成部103は、ステップS11に移行し、開始ノード・終了ノードへの割当処理を開始する。

0033

(開始ノード・終了ノードへの割当処理:S11)
図8は、開始ノード・終了ノードへの割当処理(S11)の詳細を示すフローチャートである。

0034

図8の処理では、処理グループ作成部103は、ステップS101において、一連の処理を最初の処理から探索し、開始ノードで実行可能な範囲の処理を特定する。具体的には、処理グループ作成部103は、最初の処理を含み、総必要計算量が開始ノードの計算リソース以下(総必要計算量≦開始ノードの計算リソース)となる処理を、一連の処理から特定する。図9(a)に示すネットワークにおいて、開始ノードであるノード1の計算リソースは「5」である。この場合、処理グループ作成部103は、図9(b)に示す一連の処理において、「開始」から「処理2」までの処理を、開始ノードで実行可能な範囲の処理であると特定する。

0035

続くステップS103において、処理グループ作成部103は、ステップS101で特定した処理と、処理間の必要帯域とに基づいて、最初の処理を含む処理グループを作成する。具体的には、処理グループ作成部103は、ステップS101で特定した開始ノードで実行可能な範囲の処理における処理間の必要帯域と、開始ノードで実行可能な範囲の処理の最後の処理とその直後の処理との間の必要帯域とを比較する。そして、開始ノードで実行可能な範囲の処理における処理間の必要帯域が、最後の処理とその直後の処理との間の必要帯域よりも小さければ、開始ノードで実行可能な範囲の処理を処理間の必要帯域が最小となる処理間で分割する。開始ノードで実行可能な範囲の処理の最後の処理とその直後の処理との間の必要帯域が、開始ノードで実行可能な範囲の処理における処理間の必要帯域よりも小さければ、開始ノードで実行可能な範囲の処理の最後の処理とその直後の処理との間で一連の処理を分割する。図9(b)において、「開始」から「処理2」までの処理では、処理1と処理2との間の必要帯域「1」が、特定された処理の最後の処理である「処理2」とその直後の処理「処理3」との間の必要帯域「2」よりも小さい。したがって、処理グループ作成部103は、「開始」から「処理2」までの処理を、必要帯域が最小である処理1と処理2との間で分割し、最初の処理である「開始」を含む処理グループ1を作成する(図9(c)参照)。これにより、開始ノードで実行可能な範囲で、処理間の必要帯域が大きい処理をまとめて、開始ノードに割り当てることができる。

0036

処理グループ作成部103は、処理グループを作成すると、例えば、図10(a)に示すような処理グループ割当管理テーブルを作成する。処理グループ割当管理テーブルは、処理グループをいずれのノードに割り当てたかを管理するためのテーブルであり、図10(a)に示すように、処理グループ、処理名、及び割当ノード等のフィールドを有する。処理グループのフィールドには、処理グループ作成部103が作成した処理グループの名称が格納される。処理名には、処理グループに含まれる処理の情報が格納される。割当ノードのフィールドには、処理グループが割り当てられたノードの情報が格納される。ステップS103の終了時点では、処理グループ1は、未だノードに割り当てられていないため、図10(a)に示すように、割当ノードのフィールドは空となっている。

0037

図8に戻り、続くステップS104において、ノード決定部105は、ステップS103で作成された処理グループを開始ノードに割り当てる。図9(c)の場合、ノード決定部105は、処理グループ1を開始ノードであるノード1に割り当てる(図9(d)参照)。このとき、ノード決定部105は、図10(b)に示すように、処理グループ割当管理テーブルにおいて、処理グループ1に対する割当ノードのフィールドに「ノード1」を格納する。また、ノード決定部105は、リソース割当管理テーブル(図6(a)参照)を更新する。具体的には、ノード決定部105は、図10(c)に示すように、ノード1の割当済み処理のフィールドに、処理グループ1に含まれる処理である「開始、処理1」を格納する。また、ノード決定部105は、計算リソース「5」から、処理1の必要計算量「2」を差し引いた「3」を残計算リソースのフィールドに格納する。さらに、ノード決定部105は、ノード割当情報テーブル(図6(b)参照)を更新する。具体的には、図10(d)に示すように、「開始」及び「処理1」の割当ノードのフィールドに、「ノード1」を格納する。

0038

図8に戻り、続くステップS105において、処理グループ作成部103は、一連の処理を最後の処理から探索し、終了ノードで実行可能な範囲の処理を特定する。具体的には、処理グループ作成部103は、最後の処理を含み、総必要計算量が終了ノードの計算リソース以下(総必要計算量≦終了ノードの計算リソース)となる処理を、一連の処理から特定する。図9(a)に示すネットワークにおいて、終了ノードであるノード3の計算リソースは「4」である。したがって、処理グループ作成部103は、図9(c)において、「終了」から「処理3」までの処理を、終了ノードで実行可能な範囲の処理であると特定する。

0039

続くステップS107において、処理グループ作成部103は、ステップS105で特定した処理と、処理間の必要帯域とに基づいて、最後の処理を含む処理グループを作成する。具体的には、処理グループ作成部103は、ステップS105で特定した終了ノードで実行可能な範囲の処理の処理間の必要帯域と、終了ノードで実行可能な範囲の処理の最初の処理とその直前の処理との間の必要帯域とを比較する。そして、終了ノードで実行可能な範囲の処理の処理間の必要帯域が、終了ノードで実行可能な範囲の処理の最初の処理とその直前の処理との間の必要帯域よりも小さい場合、終了ノードで実行可能な範囲の処理を処理間の必要帯域が最小となる処理間で分割する。一方、終了ノードで実行可能な範囲の処理の最初の処理とその直前の処理との間の必要帯域が、終了ノードで実行可能な範囲の処理の処理間の必要帯域よりも小さい場合、一連の処理を終了ノードで実行可能な範囲の処理の最初の処理とその直前の処理との間で分割する。図9(c)において、「終了」から「処理3」までの処理では、最初の処理である「処理3」とその直前の処理である「処理2」との間の必要帯域が「2」となっており、「処理3」と「終了」との間の必要帯域「10」よりも小さい。そこで、処理グループ作成部103は、処理2と処理3との間で処理を分割し、最後の処理を含む処理グループ2を作成する(図9(d)参照)。これにより、終了ノードで実行可能な範囲で、処理間の必要帯域が大きい処理をまとめて、終了ノードに割り当てることができる。なお、このとき、処理グループ作成部103は、図11(a)に示すように、処理グループ割当管理テーブルに、「処理グループ2」を追加する。

0040

続くステップS108において、ノード決定部105は、ステップS107で作成された処理グループを終了ノードに割り当てる。図9(d)では、ノード決定部105は、処理グループ2を終了ノードであるノード3に割り当てる(図9(e)参照)。そして、ノード決定部105は、処理グループ割当管理テーブル、リソース割当管理テーブル、及びノード割当情報テーブルを、それぞれ、図11(b)、図11(c)、及び図11(d)に示すようにそれぞれ更新する。

0041

ステップS108の処理の終了後は、図7のステップS12に移行する。

0042

図7のステップS12に移行すると、ノード決定部105は、未だノードに割り当てられていない処理の総必要計算量を割当可能なノードが存在するか否かを判断する。図9(e)において、未だノードに割り当てられていない処理2の必要計算量は「2」である。この場合、ノード決定部105は、図11(c)のリソース割当管理テーブルを参照し、必要計算量「2」を割当可能なノードを検索する。具体的には、ノード決定部105は、残計算リソースが2以上のノードを検索する。図11(c)の場合、ノード1の残計算リソースが「3」であり、処理2の必要計算量を割当可能である。この場合、ノード決定部105は、ステップS14に移行する。

0043

ステップS14に移行すると、ノード決定部105は、開始ノード及び終了ノードからの通信コストが最小のノードに未割当の処理を割り当てる。図9(e)の場合、処理2を割当可能なノードは、ノード1のみであるため、処理2をノード1に割り当てる(図9(f)参照)。ノード決定部105は、リソース割当管理テーブル及びノード割当情報テーブルを、それぞれ、図12(a)及び図12(b)に示すようにそれぞれ更新する。なお、開始ノード及び終了ノードが指定されておらず、未割当の処理を実行可能なノードが複数ある場合には、ノード決定部105は、予め定められたルールに基づいて、処理を割り当てるノードを決定すればよい。例えば、ノード決定部105は、未割当の処理を割当可能な複数のノードのうちノード番号が一番小さいノードに、処理を割り当ててもよいし、ノード番号が一番大きいノードに処理を割り当ててもよい。

0044

別例として、処理割当サーバ10が、図13(a)に示すネットワークにおいて開始ノードをノード1、終了ノードをノード4として、図13(b)に示す一連の処理をノードへ割り当てる要求を受信した場合について説明する。

0045

開始ノードであるノード1は計算リソースが「3」であるため、「開始」から「処理1」までの処理を実行可能である(図8:ステップS103)。ここで、「開始」から「処理1」までの処理において「開始」と「処理1」との間の必要帯域は「10」であり、「処理1」と「処理2」との間の必要帯域「1」よりも大きい。この場合、処理グループ作成部103は、処理1と処理2との間で一連の処理を分割し、最初の処理である「開始」を含む処理グループ1を作成する(図8:ステップS103、図13(c)参照)。そして、ノード決定部105は、処理グループ1を開始ノードであるノード1に割り当てる(図8:ステップS104、図13(d)参照)。

0046

一方、終了ノードであるノード4は計算リソースが「2」であるため、「終了」から「処理4」までの処理を実行可能である(図8:ステップS105)。ここで、最初の処理である「処理4」とその直前の処理「処理3」との間の必要帯域は「2」であり、「終了」から「処理4」までの処理における処理間の必要帯域「5」よりも小さい。この場合、処理グループ作成部103は、処理3と処理4との間で一連の処理を分割し、最後の処理である「終了」を含む処理グループ2を作成する(図8:ステップS107、図13(d)参照)。そして、ノード決定部105は、処理グループ2を終了ノードであるノード4に割り当てる(図8:ステップS108:図13(e)参照)。

0047

開始ノード及び終了ノードへの処理の割当が終了した時点でのリソース割当管理テーブルは、図14に示すとおりである。ノードへ未割当の処理2及び処理3の総必要計算量は「4」であり、図14を参照すると、処理2及び処理3の全てを実行可能なノードが複数(ノード2及びノード3)存在する。この場合、ノード決定部105は、処理2及び処理3をノード2に割り当てた場合の通信コストと、ノード3に割り当てた場合の通信コストとを比較し、通信コストが最小のノードに処理2及び処理3を割り当てる(図7:ステップS14)。ここで、処理を割当済みのノード1とノード2とのノード間通信コストは2であり、処理を割当済みのノード4とノード2とのノード間通信コストは17である。したがって、処理2及び処理3をノード2に割り当てた場合の通信コスト総計は36(2×1+17×2)となる。一方、ノード3とノード1とのノード間通信コストは12であり、ノード3とノード4とのノード間通信コストは7であるため、処理2及び処理3をノード3に割り当てた場合の通信コスト総計は26(12×1+7×2)となる。したがって、ノード決定部105は、通信コスト総計が最小となるノード3に処理2及び処理3を割り当てる(図13(f)参照)。

0048

図7に戻り、ステップS12において、未割当の処理の総必要計算量を割当可能なノードが存在しない場合、ノード決定部105は、ステップS20に移行し、図15に示すノード決定処理を開始する。ここで、一例として、処理割当サーバ10が、図16(a)に示すネットワークにおいて開始ノードをノード1、終了ノードをノード4として、図16(b)に示す一連の処理をノードへ割り当てる要求を受信した場合について説明する。この場合、図7のステップS11の開始ノード・終了ノードへの割当処理を行うと、最初の処理「開始」を含む処理グループ1が開始ノードであるノード1に割り当てられる。また、最後の処理「終了」を含む処理グループ2が終了ノードであるノード4に割り当てられる(図16(c))。ステップS11の処理後のリソース割当管理テーブルは、図17(a)となる。また、処理グループ割当管理テーブルは、図17(b)となる。なお、開始ノードであるノード1の計算リソースは「1」であり、必要計算量が「2」である処理1を実行できないため、ノード1には、「開始」のみが割り当てられている。ここで、図16(c)において、ノードへ未割当の処理である処理1〜処理3の総必要計算量は8であり、割当可能なノードが存在しないため、ステップS12の判断は否定され、ノード決定部105は、ステップS20に移行し、図15のノード決定処理を開始する。

0049

(ノード決定処理:S20)
図15は、ノード決定処理(S20)の詳細を示すフローチャートである。

0050

図15の処理では、まず、ステップS201において、ノード決定部105は、ノードに未割当の処理が2以上存在するか否かを判断する。ここでの判断が否定された場合、ステップS203に移行し、ノード決定部105は、処理を割当可能なノードがない(解なし)として、本処理を終了し、図7のステップS16に移行する。

0051

一方、ノードに未割当の処理が2以上存在する場合、ステップS205に移行し、処理グループ作成部103は、未割当の処理を、処理間の必要帯域が最小な処理間で分割し、処理グループを作成する。図16(c)では、未割当の処理1〜処理3において、処理1と処理2との間の必要帯域が「1」で最小である。したがって、処理グループ作成部103は、未割当の処理1〜処理3を、処理1と処理2との間で分割し、処理グループ3及び処理グループ4を作成する(図16(d)参照)。このとき、処理グループ作成部103は、図17(b)に示す処理グループ割当管理テーブルに、図17(c)に示すように、処理グループ3及び処理グループ4を追加する。

0052

続くステップS207において、ノード決定部105は、ノードに未割当の処理グループを選択する。例えば、ノード決定部105は、図17(c)に示す処理グループ割当管理テーブルにおいて、ノードに割り当てられていない処理グループ3を選択する。

0053

続くステップS209において、ノード決定部105は、選択した処理グループに含まれる各処理の必要計算量の総和(総必要計算量)を割当可能なノードが存在するか否かを判断する。本処理では、処理グループに含まれる全ての処理を実行可能なノードが存在するか否かを判断している。ここでの判断が肯定された場合、ステップS211に移行する。

0054

ステップS211に移行すると、ノード決定部105は、割当可能ノードの中で、処理を割当済みのノードとの通信コストが最小となるノードに処理グループを割り当てる。例えば、図16(d)では、処理グループ3に含まれる処理1の必要計算量は「2」であり、図17(a)のリソース割当管理テーブルを参照すると、ノード2及びノード3に割当可能である。この場合、ノード決定部105は、処理を割当済みのノード(開始ノード:ノード1)との通信コストが最小となるノード2に処理グループ3を割り当てる。ノード決定部105は、処理グループ割当管理テーブルを図18(a)に示すように更新する。また、ノード決定部105は、リソース割当管理テーブルを図18(b)に示すように更新する。

0055

続くステップS215において、ノード決定部105は、全ての処理グループをノードに割り当てたか否かを判断する。具体的には、ノード決定部105は、処理グループ割当管理テーブル(図18(a)等)において、ノードに割り当てられていない処理グループが存在するか否かを判断する。ここでの判断が肯定された場合、図15の処理を終了し、図7のステップS16に移行する。

0056

一方、ノードに割り当てていない処理グループが存在する場合、ステップS215の判断は否定され、ノード決定部105は、ステップS207に戻り、ノードに未割当の処理グループを選択する。図18(a)の処理グループ割当管理テーブルでは、処理グループ4が未だノードに割り当てられていないため、ノード決定部105は、処理グループ4を選択する。

0057

ここで、処理グループ4に含まれる処理2及び処理3の必要計算量の総和は「5」であり、図18(b)のリソース割当管理テーブルを参照すると、割当可能なノードが存在しない。この場合、ステップS209の判断が否定され、ステップS212に移行する。

0058

ステップS212に移行すると、ノード決定部105は、処理グループに2以上の処理が含まれるか否かを判断する。ここでの判断が否定された場合、ステップS203に移行し、処理を割当可能なノードがない(解なし)として、本処理を終了し、図7のステップS16に移行する。一方、処理グループに2以上の処理が含まれる場合、ステップS213に移行する。

0059

ステップS213に移行すると、処理グループ作成部103は、処理グループ内の処理を、処理間の必要帯域が最小の処理間で分割し、新たな処理グループを作成する。例えば、図16(d)において、処理グループ作成部103は、処理グループ4を、必要帯域が最小である処理2と処理3との間で分割し、処理グループ4−1及び処理グループ4−2を新たに作成する(図16(e)参照)。このとき、処理グループ作成部103は、図18(a)の処理グループ割当管理テーブルから処理グループ4を削除し、図18(c)に示すように、処理グループ4−1及び処理グループ4−2を追加する。

0060

続くステップS215において、ノード決定部105は、全ての処理グループをノードに割り当てたか否かを判断する。処理グループ作成部103及びノード決定部105は、ステップS215の判断が肯定されるまで、すなわち、全ての処理グループをノードに割り当てるまで、ステップS207〜ステップS213の処理を繰り返す。つまり、ステップS207〜ステップS215では、ノードで処理可能な処理グループになるまで一連の処理の分割を繰り返している。そして、全ての処理グループをノードに割り当てた時点で、ステップS215の判断が肯定され、図15の処理を終了し、図7のステップS16に移行する。

0061

なお、図16(e)では、処理2を含む処理グループ4−1は、ノード2及びノード3へ割当可能(図18(b)参照)であるが、ノード決定部105は、処理1を割当済みのノードであるノード2との通信コストが最小となるノード2に処理グループ4−1を割り当てる(図16(f)参照)。また、処理3を含む処理グループ4—2は、ノード3へ割当可能であるため、ノード決定部105は、処理グループ4—2をノード3に割り当てる(図16(f)参照)。そして、ノード決定部105は、処理グループ4—2のノードへの割当を終了すると、全ての処理グループのノードへの割り当てが終了したため、図7のステップS16に移行する。

0062

図7に戻り、ステップS16に移行すると、情報出力部107が、各処理のノードへの割当結果を処理配置実行サーバ20に送信し、図7の全処理を終了する。例えば、情報出力部107は、ノード割当情報テーブル(図12(b)参照)の情報を処理配置実行サーバ20に送信する。処理配置実行サーバ20は、ノード割当情報テーブルの情報に基づいて、各処理をノードに配置し、一連の処理を開始させる。

0063

以上詳細に説明したように、本実施形態によると、処理割当サーバ10において、処理グループ作成部103が、複数の関連する処理を含む一連の処理を、処理間のデータ通信に必要な帯域に基づいて、少なくとも1つの処理を含む処理グループに分割し(図8:ステップS101,S103,S105,S107、図15:ステップS205、図16(d))、ノード決定部105が、ネットワークに接続された複数のノードのうち、分割後の各処理グループに含まれる全ての処理を実行可能なノードを処理グループごとに特定し、特定したノードに各処理グループを割り当てる(図8:ステップS104,S108、図15:ステップS211)。これにより、処理間のデータ通信に必要な帯域を考慮して各処理をノードに割り当てることができるので、ノード間での通信データ量が低減され、一連の処理を複数のノードで分散実行する場合のネットワーク負荷を低減することができる。

0064

具体的には、本実施形態において、処理グループ作成部103は、処理間のデータ通信に必要な帯域が大きい処理を優先して同一の処理グループに含める。これにより、処理間の必要帯域が大きい処理が、まとめて1つのノードに割り当てられるため、各処理を実行するノード間の通信データ量が低減される。したがって、一連の処理を複数のノードで分散実行する場合のネットワーク負荷を低減することができる。

0065

より具体的には、本実施形態において、処理グループ作成部103は、一連の処理を、処理間のデータ通信に必要な帯域が最小となる処理間で分割する。これにより、処理間の必要帯域が大きい処理が、まとめて1つのノードに割り当てられるとともに、別々のノードに割り当てられた処理間の必要帯域が小さくなるため、各処理を実行するノード間の通信データ量が低減される。したがって、一連の処理を複数のノードで分散実行する場合のネットワーク負荷を低減することができる。

0066

また、本実施形態において、処理グループ作成部103は、分割後の処理グループに含まれる全ての処理を実行可能なノードが無い場合、当該処理グループを、処理グループに含まれる処理間のデータ通信に必要な帯域が最小となる処理間で分割し、新たな処理グループを作成する(図15:ステップS213、図16(e))。これにより、ネットワーク上のノードが実行可能な範囲で、処理間の必要帯域が大きい処理をまとめて1つのノードに割り当てることができる。

0067

また、本実施形態において、一連の処理を開始する開始ノードが定められている場合、処理グループ作成部103は、開始ノードの計算リソースと、処理間のデータ通信に必要な帯域と、に基づいて、一連の処理の最初の処理を含む処理グループを分割する(図8:ステップS101、S103、図9(c))。ノード決定部105は、最初の処理を含む処理グループを開始ノードに割り当てる(図8:ステップS104、図9(d))。また、一連の処理を終了する終了ノードが定められている場合、処理グループ作成部103は、終了ノードの計算リソースと、処理間のデータ通信に必要な帯域と、に基づいて、一連の処理の最後の処理を含む処理グループを分割する(図8:ステップS105、S107、図9(d))。ノード決定部105は、最後の処理を含む処理グループを終了ノードに割り当てる(図8:ステップS108、図9(f))。これにより、一連の処理を開始ノードで開始し、終了ノードで終了するとともに、処理間の必要帯域が大きい処理をまとめて1つのノードに割り当てることができる。

0068

また、本実施形態において、ノード決定部105は、処理グループに含まれる全ての処理を実行可能なノードが複数存在する場合、処理を割当済みのノードからの通信コストに基づいて、処理グループを割り当てるノードを決定する(図7:ステップS14、図15:ステップS211)。具体的には、ノード決定部105は、処理を割当済みのノードからの通信コストが最小となるノードに、処理グループを割り当てる。これにより、一連の処理を複数のノードで分散実行する場合のネットワーク負荷を低減するとともに、通信コストを低減することができる。

0069

なお、上記実施形態において、処理グループ作成部103は、一連の処理を、処理間のデータ通信に必要な帯域が最小となる処理間で分割していたが、これに限られるものではない。処理グループ作成部103は、例えば、一連の処理を、処理間のデータ通信に必要な帯域が所定の帯域(例えば、5)以下となる処理間で分割してもよい。このようにしても、処理間の必要帯域が所定の帯域以上である処理を、まとめて1つのノードに割り当てることができるため、ノード間の通信データ量が低減され、ネットワーク負荷を低減することができる。

0070

なお、上記実施形態では、開始ノードと終了ノードとが指定されていたが、一連の処理に含まれる特定の処理を実行するノードがさらに指定されている場合がある。例えば、処理割当サーバ10が、図19(a)に示すネットワークにおいて、図19(b)に示す一連の処理をノードへ割り当てる要求を受信したとする。このとき、開始ノードにノード1が指定され、終了ノードにノード4が指定され、処理2をノード3で実行するよう指定されていたとする。この場合、処理割当サーバ10は、図19(b)に示す一連の処理を、開始〜処理2までの処理を含む処理単位1(図19(c))と、処理2〜終了までの処理を含む処理単位2(図19(d))とに分割する。そして、処理割当サーバ10は、開始ノードをノード1、終了ノードをノード3として、処理単位1に対する割当処理(図7)を実行し、開始ノードをノード3、終了ノードをノード4として、処理単位2に対する割当処理(図7)を実行する。これにより、特定の処理を指定されたノードで実行できるとともに、処理間の必要帯域が大きい処理をまとめて1つのノードに割り当てることができる。

0071

なお、上記の処理機能は、コンピュータによって実現することができる。その場合、処理装置が有すべき機能の処理内容記述したプログラムが提供される。そのプログラムをコンピュータで実行することにより、上記処理機能がコンピュータ上で実現される。処理内容を記述したプログラムは、コンピュータで読み取り可能な記録媒体(ただし、搬送波は除く)に記録しておくことができる。

0072

プログラムを流通させる場合には、例えば、そのプログラムが記録されたDVD(Digital Versatile Disc)、CD−ROM(Compact Disc Read Only Memory)などの可搬型記録媒体の形態で販売される。また、プログラムをサーバコンピュータの記憶装置に格納しておき、ネットワークを介して、サーバコンピュータから他のコンピュータにそのプログラムを転送することもできる。

0073

プログラムを実行するコンピュータは、例えば、可搬型記録媒体に記録されたプログラムもしくはサーバコンピュータから転送されたプログラムを、自己の記憶装置に格納する。そして、コンピュータは、自己の記憶装置からプログラムを読み取り、プログラムに従った処理を実行する。なお、コンピュータは、可搬型記録媒体から直接プログラムを読み取り、そのプログラムに従った処理を実行することもできる。また、コンピュータは、サーバコンピュータからプログラムが転送されるごとに、逐次、受け取ったプログラムに従った処理を実行することもできる。

0074

上述した実施形態は本発明の好適な実施の例である。但し、これに限定されるものではなく、本発明の要旨を逸脱しない範囲内において種々変形実施可能である。

0075

なお、以上実施形態の説明に関して、更に以下の付記を開示する。
(付記1) 複数の関連する処理を、処理間のデータ通信に必要な帯域に基づいて、少なくとも1つの処理を含む処理グループに分割し、
ネットワークに接続された複数のノードのうち、分割後の各処理グループに含まれる全ての処理を実行可能なノードを前記処理グループごとに特定し、特定したノードに各処理グループを割り当てる、
処理をコンピュータが実行することを特徴とする処理割当方法。
(付記2) 前記分割する処理では、前記処理間のデータ通信に必要な帯域が大きい処理を優先して同一の処理グループに含めることを特徴とする付記1に記載の処理割当方法。
(付記3) 前記分割する処理では、前記複数の関連する処理を、前記処理間のデータ通信に必要な帯域が最小となる処理間で分割することを特徴とする付記1に記載の処理割当方法。
(付記4) 前記分割する処理では、前記複数の関連する処理を、前記処理間のデータ通信に必要な帯域が所定の帯域以下となる処理間で分割することを特徴とする付記1に記載の処理割当方法。
(付記5) 分割後の処理グループに含まれる全ての処理を実行可能なノードが無い場合、前記分割後の処理グループを、前記分割後の処理グループに含まれる処理間のデータ通信に必要な帯域に基づいて分割する、ことを特徴とする付記1〜4のいずれかに記載の処理割当方法。
(付記6) 前記複数の関連する処理を開始する第1のノードと終了する第2のノードとが定められている場合、
前記分割する処理では、前記第1のノードの計算リソースと、処理間のデータ通信に必要な帯域と、に基づいて前記複数の関連する処理の最初の処理を含む処理グループを第1の処理グループとして分割するとともに、前記第2のノードの計算リソースと、処理間のデータ通信に必要な帯域と、に基づいて前記複数の関連する処理の最後の処理を含む処理グループを第2の処理グループとして分割し、
前記割り当てる処理では、前記第1のノードに前記第1の処理グループを割り当て、前記第2のノードに前記第2の処理グループを割り当てる、ことを特徴とする付記1〜5のいずれかに記載の処理割当方法。
(付記7) 前記複数の関連する処理のうちの所定の処理を実行する第3のノードが定められている場合、
前記分割する処理では、前記複数の関連する処理の最初の処理から前記所定の処理までの処理において、前記第3のノードの計算リソースと、処理間のデータ通信に必要な帯域と、に基づいて、前記所定の処理を含む処理グループを第3の処理グループとして分割するとともに、前記所定の処理から前記複数の関連する処理の最後の処理までの処理において、前記第3のノードの計算リソースと、処理間のデータ通信に必要な帯域と、に基づいて、前記所定の処理を含む処理グループを第4の処理グループとして分割し、
前記割り当てる処理では、前記第3のノードに前記第3の処理グループと前記第4の処理グループとを割り当てる、ことを特徴とする付記1〜6のいずれかに記載の処理割当方法。
(付記8) 前記割り当てる処理では、分割後の処理グループに含まれる全ての処理を実行可能なノードが複数存在する場合、処理を割当済みのノードからの通信コストに基づいて、前記分割後の処理グループを割り当てるノードを特定する、ことを特徴とする付記1〜7のいずれかに記載の処理割当方法。
(付記9) 複数の関連する処理を、処理間のデータ通信に必要な帯域に基づいて分割し、少なくとも1つの処理を含む処理グループを作成する処理グループ作成部と、
ネットワークに接続された複数のノードのうち、分割後の各処理グループに含まれる全ての処理を実行可能なノードを前記処理グループごとに特定し、特定したノードに各処理グループを割り当てるノード割当部と、
を備える処理割当装置。
(付記10) 前記処理グループ作成部は、前記処理間のデータ通信に必要な帯域が大きい処理を優先して同一の処理グループに含めることを特徴とする付記9に記載の処理割当装置。
(付記11) 前記処理グループ作成部は、前記複数の関連する処理を、前記処理間のデータ通信に必要な帯域が最小となる処理間で分割することを特徴とする付記9に記載の処理割当装置。
(付記12) 前記処理グループ作成部は、前記複数の関連する処理を、前記処理間のデータ通信に必要な帯域が所定の帯域以下となる処理間で分割することを特徴とする付記9に記載の処理割当装置。
(付記13) 前記処理グループ作成部は、分割後の処理グループに含まれる全ての処理を実行可能なノードが無い場合、前記分割後の処理グループを、前記分割後の処理グループに含まれる処理間のデータ通信に必要な帯域に基づいて分割する、ことを特徴とする付記9〜12のいずれかに記載の処理割当装置。
(付記14) 前記複数の関連する処理を開始する第1のノードと終了する第2のノードとが定められている場合、
前記処理グループ作成部は、前記第1のノードの計算リソースと、処理間のデータ通信に必要な帯域と、に基づいて前記複数の関連する処理の最初の処理を含む処理グループを第1の処理グループとして分割するとともに、前記第2のノードの計算リソースと、処理間のデータ通信に必要な帯域と、に基づいて前記複数の関連する処理の最後の処理を含む処理グループを第2の処理グループとして分割し、
前記ノード割当部では、前記第1のノードに前記第1の処理グループを割り当て、前記第2のノードに前記第2の処理グループを割り当てる、
ことを特徴とする付記9〜13のいずれかに記載の処理割当装置。
(付記15) 前記複数の関連する処理のうちの所定の処理を実行する第3のノードが定められている場合、
前記処理グループ作成部は、前記複数の関連する処理の最初の処理から前記所定の処理までの処理において、前記第3のノードの計算リソースと、処理間のデータ通信に必要な帯域と、に基づいて、前記所定の処理を含む処理グループを第3の処理グループとして分割するとともに、前記所定の処理から前記複数の関連する処理の最後の処理までの処理において、前記第3のノードの計算リソースと、処理間のデータ通信に必要な帯域と、に基づいて、前記所定の処理を含む処理グループを第4の処理グループとして分割し、
前記ノード割当部は、前記第3のノードに前記第3の処理グループと前記第4の処理グループとを割り当てる、ことを特徴とする付記9〜14のいずれかに記載の処理割当装置。
(付記16) 前記ノード割当部は、分割後の処理グループに含まれる全ての処理を実行可能なノードが複数存在する場合、処理を割当済みのノードからの通信コストに基づいて、前記分割後の処理グループを割り当てるノードを特定する、ことを特徴とする付記9〜15のいずれかに記載の処理割当装置。
(付記17) 複数の関連する処理を、処理間のデータ通信に必要な帯域に基づいて、少なくとも1つの処理を含む処理グループに分割し、
ネットワークに接続された複数のノードのうち、分割後の各処理グループに含まれる全ての処理を実行可能なノードを前記処理グループごとに特定し、特定したノードに各処理グループを割り当てる、
処理をコンピュータに実行させることを特徴とする処理割当プログラム。
(付記18) 前記分割する処理では、前記処理間のデータ通信に必要な帯域が大きい処理を優先して同一の処理グループに含めることを特徴とする付記17に記載の処理割当プログラム。
(付記19) 前記分割する処理では、前記複数の関連する処理を、前記処理間のデータ通信に必要な帯域が最小となる処理間で分割することを特徴とする付記17に記載の処理割当プログラム。
(付記20) 前記分割する処理では、前記複数の関連する処理を、前記処理間のデータ通信に必要な帯域が所定の帯域以下となる処理間で分割することを特徴とする付記17に記載の処理割当プログラム。
(付記21) 分割後の処理グループに含まれる全ての処理を実行可能なノードが無い場合、前記分割後の処理グループを、前記分割後の処理グループに含まれる処理間のデータ通信に必要な帯域に基づいて分割する、ことを特徴とする付記17〜20のいずれかに記載の処理割当プログラム。
(付記22) 前記複数の関連する処理を開始する第1のノードと終了する第2のノードとが定められている場合、
前記分割する処理では、前記第1のノードの計算リソースと、処理間のデータ通信に必要な帯域と、に基づいて前記複数の関連する処理の最初の処理を含む処理グループを第1の処理グループとして分割するとともに、前記第2のノードの計算リソースと、処理間のデータ通信に必要な帯域と、に基づいて前記複数の関連する処理の最後の処理を含む処理グループを第2の処理グループとして分割し、
前記割り当てる処理では、前記第1のノードに前記第1の処理グループを割り当て、前記第2のノードに前記第2の処理グループを割り当てる、ことを特徴とする付記17〜21のいずれかに記載の処理割当プログラム。
(付記23) 前記複数の関連する処理のうちの所定の処理を実行する第3のノードが定められている場合、
前記分割する処理では、前記複数の関連する処理の最初の処理から前記所定の処理までの処理において、前記第3のノードの計算リソースと、処理間のデータ通信に必要な帯域と、に基づいて、前記所定の処理を含む処理グループを第3の処理グループとして分割するとともに、前記所定の処理から前記複数の関連する処理の最後の処理までの処理において、前記第3のノードの計算リソースと、処理間のデータ通信に必要な帯域と、に基づいて、前記所定の処理を含む処理グループを第4の処理グループとして分割し、
前記割り当てる処理では、前記第3のノードに前記第3の処理グループと前記第4の処理グループとを割り当てる、ことを特徴とする付記17〜22のいずれかに記載の処理割当プログラム。
(付記24) 前記割り当てる処理では、分割後の処理グループに含まれる全ての処理を実行可能なノードが複数存在する場合、処理を割当済みのノードからの通信コストに基づいて、前記分割後の処理グループを割り当てるノードを特定する、ことを特徴とする付記17〜23のいずれかに記載の処理割当プログラム。

0076

10処理割当サーバ
50−1〜50−nノード
103処理グループ作成部
105 ノード決定部

ページトップへ

この技術を出願した法人

この技術を発明した人物

ページトップへ

関連する挑戦したい社会課題

該当するデータがありません

関連する公募課題

該当するデータがありません

ページトップへ

技術視点だけで見ていませんか?

この技術の活用可能性がある分野

分野別動向を把握したい方- 事業化視点で見る -

(分野番号表示ON)※整理標準化データをもとに当社作成

ページトップへ

おススメ サービス

おススメ astavisionコンテンツ

新着 最近 公開された関連が強い技術

この 技術と関連性が強い技術

関連性が強い 技術一覧

この 技術と関連性が強い人物

関連性が強い人物一覧

この 技術と関連する社会課題

該当するデータがありません

この 技術と関連する公募課題

該当するデータがありません

astavision 新着記事

サイト情報について

本サービスは、国が公開している情報(公開特許公報、特許整理標準化データ等)を元に構成されています。出典元のデータには一部間違いやノイズがあり、情報の正確さについては保証致しかねます。また一時的に、各データの収録範囲や更新周期によって、一部の情報が正しく表示されないことがございます。当サイトの情報を元にした諸問題、不利益等について当方は何ら責任を負いかねることを予めご承知おきのほど宜しくお願い申し上げます。

主たる情報の出典

特許情報…特許整理標準化データ(XML編)、公開特許公報、特許公報、審決公報、Patent Map Guidance System データ