JP2012243223A - プロセス配置装置、プロセス配置方法及びプロセス配置プログラム - Google Patents

プロセス配置装置、プロセス配置方法及びプロセス配置プログラム Download PDF

Info

Publication number
JP2012243223A
JP2012243223A JP2011115232A JP2011115232A JP2012243223A JP 2012243223 A JP2012243223 A JP 2012243223A JP 2011115232 A JP2011115232 A JP 2011115232A JP 2011115232 A JP2011115232 A JP 2011115232A JP 2012243223 A JP2012243223 A JP 2012243223A
Authority
JP
Japan
Prior art keywords
communication
inter
node
evaluation value
nodes
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.)
Granted
Application number
JP2011115232A
Other languages
English (en)
Other versions
JP5724626B2 (ja
Inventor
Hiroaki Imade
広明 今出
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.)
Fujitsu Ltd
Original Assignee
Fujitsu Ltd
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 Fujitsu Ltd filed Critical Fujitsu Ltd
Priority to JP2011115232A priority Critical patent/JP5724626B2/ja
Priority to US13/415,255 priority patent/US8719821B2/en
Priority to EP12159122.6A priority patent/EP2527981A3/en
Publication of JP2012243223A publication Critical patent/JP2012243223A/ja
Application granted granted Critical
Publication of JP5724626B2 publication Critical patent/JP5724626B2/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/5083Techniques for rebalancing the load in a distributed system
    • G06F9/5088Techniques for rebalancing the load in a distributed system involving task migration
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/46Multiprogramming arrangements
    • G06F9/50Allocation of resources, e.g. of the central processing unit [CPU]
    • G06F9/5061Partitioning or combining of resources
    • G06F9/5066Algorithms for mapping a plurality of inter-dependent sub-tasks onto a plurality of physical CPUs

Landscapes

  • Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)

Abstract

【課題】プロセス配置を正確に評価すること。
【解決手段】プロセス配置装置100は、評価値算出部122aと、ノード間総通信量算出部122bと、補正評価値算出部122cとを有する。評価値算出部122aは、通信元であるプロセスが配置されている通信元のノードから通信先であるプロセスが配置されている通信先のノードまでのホップ数及びプロセス間通信量に基づいてプロセス配置についての評価値を算出する。ノード間総通信量算出部122bは、通信元のノードから通信先のノードまでの通信ルートを特定し、特定した通信ルート上の各ノード間の通信量の総計を示すノード間総通信量を算出する。補正評価値算出部122cは、評価値算出部122aが算出したプロセス配置についての評価値及びノード間総通信量算出部122bが算出したノード間総通信量に基づいて、補正に用いる補正評価値を算出する。
【選択図】図2

Description

本発明は、プロセス配置装置、プロセス配置方法及びプロセス配置プログラムに関する。
従来、複数の情報処理装置(以下、ノードと記す)を有するコンピュータシステムでは、各ノードに配置されたプロセスが、他のノードに配置されたプロセスと互いに通信することで並列プログラムを実行する。
通信元プロセスに対して、通信先プロセスが配置されたノードが異なれば、通信時に通過するノード及び通過するノード数を示す通信ホップ数が異なる。すなわち、プロセス間の通信処理時間は、プロセスが配置されるノードの位置によって影響される。
図10A〜図10Cを用いて、プロセスが配置されるノードの位置と通信処理時間の関係を説明する。図10Aは、通信元プロセスに対して通信先となるプロセスを示す図であり、図10B及び図10Cは、プロセス配置の一例を示す図である。
図10Bに示す例では、各プロセスは、通信ホップ数が「1」となるように配置されている。すなわち、各プロセスは、隣接するノードに配置されたプロセスと通信を行う。また、この場合、各ノードは、隣接するノードとのみ通信を行うので、各ノードと隣接するノードとの間は、他のプロセス間による通信に利用されることもない。このようにプロセスが配置された場合、通信処理時間は短縮される。
一方、図10Cに示す例において、プロセスは、通信ホップ数が「2」以上となる場合を含むように配置されている。一例を示すと、プロセス6は、プロセス2と通信する場合、ノード903、ノード900、ノード901及びノード902の4つのノードを通過するため、通信ホップ数が「4」となる。また、プロセス6とプロセス2との通信を行うノード906とノード903との間は、プロセス6とプロセス3との間の通信によっても利用される。すなわち、図10Cに示すプロセス配置では、一回の通信に通過するノード数が多く、また、ノード間が複数の通信に利用されるので、図10Bのプロセス配置に比べて通信処理時間は長くなる。
このようなことから、コンピュータシステムでは、通信処理時間を短縮するように、ノード上へのプロセスの配置が最適化される。例えば、コンピュータシステムは、ノードに配置したプロセスについて通信処理時間を測定して、プロセスの配置を評価する。また、コンピュータシステムは、毎回通信処理時間を測定する手間を省くために、プロセス配置について評価値を算出し、算出した値に基づいてプロセスの配置を相対的に評価する。
例えば、コンピュータシステムでは、以下の式(A)を用いて相対的にプロセスの配置を評価する。
Figure 2012243223
式(A)において、{hop(node(i)、node(j))}は、通信元プロセス(node(i)が実行するプロセス)と通信先プロセス(node(j)が実行するプロセス)との間の通信ホップ数を示し、size(i、j)は、通信元プロセスと通信先プロセスとの間の通信量を示す。すなわち、評価値Fは、すべての通信元プロセスと通信先プロセスとの組み合わせに対して、通信ホップ数と通信量とを乗じた値の総計を示す。この式(A)によれば、大量の通信を行うプロセス同士ほど通信ホップ数が少なくなるように配置した場合に、評価値Fの値が小さくなる。このため、コンピュータシステムは、式(A)の値を算出し、算出した値が所定の閾値よりも小さくなるようにプロセスを配置する。
特表2008−516346号公報
しかしながら、上述した従来の技術では、プロセス配置を正確に評価することができない場合があるという課題があった。
例えば、従来の技術では、大量の通信を行なうプロセス同士ほど通信ホップ数が少なくなるようプロセスを配置することで通信処理時間の短縮を行なっている。しかしながら、従来の技術では、個々のプロセス間の通信量を考慮しているが、ノード間の通信量を考慮していない。このため、通信ホップ数が小さくても特定のノード間に通信が集中するようにプロセスが配置される場合がある。このようにプロセスが配置された場合、通信処理時間が長くなる。
1つの側面では、プロセス配置を最適に配置することができるプロセス配置装置、プロセス配置方法及びプロセス配置プログラムを提供することを目的とする。
第1の案では、互いに接続された複数のノードにプロセスを配置するプロセス配置装置である。プロセス配置装置は、複数のノードそれぞれの位置情報と、複数のノードのそれぞれに配置されたプロセスの識別子とを対応付けて記憶するプロセス配置記憶部から、通信元であるプロセスが配置されている通信元のノードから通信先であるプロセスが配置されている通信先のノードまでのホップ数を特定する。また、プロセス配置装置は、通信元であるプロセスの識別子、通信先であるプロセスの識別子、及び通信元であるプロセスと通信先であるプロセスとの間の通信量を示すプロセス間通信量を対応付けて記憶するプロセス間通信量記憶部から、通信元のノードから通信先のノードまでのプロセス間通信量を取得する。そして、プロセス配置装置は、ホップ数及びプロセス間通信量に基づいてプロセス配置についての評価値を算出する。また、プロセス配置装置は、通信元のノードから通信先のノードまでの通信ルートを特定し、特定した通信ルート上の各ノード間それぞれのプロセス間の通信量をプロセス間通信量記憶部から取得して、取得したプロセス間通信量から隣接するノード間の通信量の総計を示すノード間総通信量を算出する。続いて、プロセス配置装置は、算出したプロセス配置についての評価値及び算出したノード間総通信量に基づいて、補正に用いる補正評価値を算出する。さらに、プロセス配置装置は、算出した補正評価値が所定値を下回っている場合、複数のノードのそれぞれにプロセスを新たな組合せで配置する。
ノード間の通信量を考慮することにより、プロセス配置を正確に評価することができる。
図1は、コンピュータシステムの構成例を示す図である。 図2は、プロセス配置装置の構成を示すブロック図である。 図3は、プロセス配置テーブルの一例を示す図である。 図4は、プロセス間通信量テーブルの一例を示す図である。 図5は、評価値テーブルの一例を示す図である。 図6は、ノード間総通信量テーブルの一例を示す図である。 図7は、補正評価値テーブルの一例を示す図である。 図8は、プロセス配置装置による補正評価値算出処理の処理手順を示すフローチャートである。 図9は、評価値算出プログラムを実行するコンピュータを示す図である。 図10Aは、通信元プロセスに対して通信先となるプロセスを示す図である。 図10Bは、プロセス配置の一例を示す図である。 図10Cは、プロセス配置の一例を示す図である。
以下に、本願の開示するプロセス配置装置、プロセス配置方法及びプロセス配置プログラムの実施例を図面に基づいて詳細に説明する。なお、この実施例によりこの発明が限定されるものではない。そして、各実施例は、処理内容を矛盾させない範囲で適宜組み合わせることが可能である。
実施例1では、図1から図8を用いて、実施例1に係るコンピュータシステムの構成例、実施例1に係るプロセス配置装置の構成、プロセス配置装置による処理の処理手順、実施例1の効果について説明する。
[実施例1に係るコンピュータシステムの構成例]
図1は、実施例1に係るコンピュータシステムの構成例を示す図である。図1に示すように、コンピュータシステム1は、ノード10〜ノード18、プロセス配置装置100を有する。ノード10〜ノード18それぞれは、隣接する各ノードと、メッシュ状に接続されており、互いに通信可能である。また、各ノードには、プロセスが配置されており、他のノードに配置されたプロセスと互いに通信することで並列プログラムを実行する。プロセス配置装置100は、各ノードと、例えばLAN(Local Area Network)などで互いに通信可能に接続される。なお、コンピュータシステム1における各ノードと隣接するノードとの接続は、メッシュ状の接続に限定されるものではなく、トーラス状又はループ状に接続されてもよい。
ノード10は、CPU(Central Processing Unit)とメモリとを有する情報処理装置であり、プロセス配置装置100によって配置されたプロセス「6」を実行する。なお、ノード11〜ノード18の動作についてもノード10の動作と同様であるため、ここでは説明を省略する。
プロセス配置装置100は、プロセスを各ノードに配置する。そして、プロセス配置装置100は、プロセスの配置が最適化されているか否かを判定する。例えば、プロセス配置装置100は、プロセスの配置を相対的に評価する評価値を算出し、算出した評価値が所定の閾値を下回ったか否かを判定する。
ここで、プロセス配置装置100は、算出した評価値が所定の閾値を下回っていないと判定した場合、新たにプロセスを各ノードに配置し、評価値を算出する。一方、プロセス配置装置100は、算出した評価値が所定の閾値を下回ったと判定した場合、プロセスの配置が最適化されていると判定する。
[実施例1に係るプロセス配置装置の構成]
次に、図2を用いて、実施例1に係るプロセス配置装置100の構成を説明する。図2は、実施例1に係るプロセス配置装置の構成を示すブロック図である。実施例1に係るプロセス配置装置100は、入力部101と出力部102と通信制御I/F部103と記憶部110と制御部120とを有する。
入力部101は、例えば、キーボードやマウスなどであり、利用者から各種の設定や操作の入力を受付ける。出力部102は、例えば、ディスプレイなどであり、各種の情報を出力する。
通信制御I/F部103は、少なくとも1つの通信ポートを有するインターフェースであり、ノードを含む他の装置との間でやり取りされる情報を制御する。例えば、通信制御I/F部103は、各ノードにプロセスを配置する。
記憶部110は、例えば、半導体メモリ素子などの記憶装置であり、プロセス配置テーブル111、プロセス間通信量テーブル112、評価値テーブル113、ノード間総通信量テーブル114、補正評価値テーブル115を有する。
プロセス配置テーブル111は、メッシュ状またはトーラス状に接続されたノードそれぞれの位置情報と、ノードのそれぞれに配置されたプロセスの識別子とを対応付けて記憶する。図3を用いて、プロセス配置テーブル111の一例を説明する。図3は、プロセス配置テーブル111の一例を示す図である。例えば、プロセス配置テーブル111は、図3に示すように、「プロセスID」と「ノードID」と「X座標」と「Y座標」とをそれぞれ対応付けて記憶する。
ここで、プロセス配置テーブル111として記憶される「プロセスID」は、プロセスの識別子を示し、例えば、「0」、「1」、「2」などが格納される。また、「ノードID」は、ノードの識別子を示し、例えば、「14」、「17」、「15」などが格納される。なお、説明の便宜上、「プロセスID」に格納される値と、図1に示す各プロセスの番号とが対応し、「ノードID」に格納される値と、図1に示す各ノードに付した符号とが対応するものとして説明する。
また、「X座標」は、各ノードの位置情報を二次元座標で表現した場合のX座標を示し、例えば、「0」、「1」、「2」などが格納される。また、「Y座標」は、各ノードの位置情報を二次元座標で表現した場合のY座標を示し、例えば、「0」、「1」、「2」などが格納される。なお、「X座標」及び「Y座標」は、図1に示したノード10を原点(0、0)とした二次元座標により表されるものとして説明する。
また、プロセス配置テーブル111として記憶される「ノードID」と「X座標」と「Y座標」とは、利用者によって予め設定された値が格納される。また、プロセス配置テーブル111として記憶される「プロセスID」は、後述するプロセス配置部121によって格納される。
具体的には、図3に示す例の場合、プロセス配置テーブル111は、IDが「0」で識別されるプロセスが、座標(1、1)に位置するノード14に配置され、IDが「1」で識別されるプロセスが、座標(1、2)に位置するノード17に配置されることを示す。同様に、プロセス配置テーブル111は、IDが「2」で識別されるプロセスが、座標(2、1)に位置するノード15に配置され、IDが「3」で識別されるプロセスが、座標(1、0)に位置するノード11に配置されることを示す。
プロセス間通信量テーブル112は、通信元であるプロセスの識別子、通信先であるプロセスの識別子、及び通信元であるプロセスと通信先であるプロセスとの間の通信量を示すプロセス間通信量をそれぞれ対応付けて記憶する。図4を用いて、プロセス間通信量テーブル112の一例を説明する。図4は、プロセス間通信量テーブルの一例を示す図である。例えば、プロセス間通信量テーブル112は、図4に示すように、「通信元プロセスID」と「通信先プロセスID」と「プロセス間通信量(Byte)」とを対応付けて記憶する。
ここで、プロセス間通信量テーブル112として記憶される「通信元プロセスID」は、通信元となるプロセスの識別子を示し、例えば、「0」、「1」、「2」などが格納される。「通信先プロセスID」は、通信先となるプロセスの識別子を示し、例えば、「2」、「3」、「8」などが格納される。「プロセス間通信量(Byte)」は、通信先プロセスと通信先プロセスとの間で通信される通信量を示し、例えば、「904」、「64」、「128」などが格納される。
具体的には、図4に示す例の場合、プロセス間通信量テーブル112は、IDが「0」で識別されるプロセスを通信元にして、IDが「2」で識別されるプロセスを通信先にする通信の通信量が「904(Byte)」であることを示す。同様に、プロセス間通信量テーブル112は、IDが「0」で識別されるプロセスを通信元にして、IDが「3」で識別されるプロセスを通信先にする通信の通信量が「64(Byte)」であることを示す。
評価値テーブル113は、通信元プロセスと通信先プロセスとの間のプロセス配置についての評価値を記憶する。図5を用いて、評価値テーブル113の一例を説明する。図5は、評価値テーブルの一例を示す図である。例えば、評価値テーブル113は、図5に示すように、「通信元プロセスID」と「通信先プロセスID」と「評価値」とを対応付けて記憶する。
ここで、評価値テーブル113として記憶される「通信元プロセスID」、「通信先プロセスID」は、プロセス間通信量テーブル112で説明した「通信元プロセスID」、「通信先プロセスID」と同様であるので説明を省略する。「評価値」は、通信元プロセスと通信先プロセスとの間のプロセス配置を相対的に評価する値であり、例えば、「評価値」には、「0」、「904」、「64」などが格納される。なお、「評価値」として格納される値は、後述する評価値算出部122aによって算出される。
具体的には、図5に示す例の場合、評価値テーブル113は、IDが「0」で識別されるプロセスを通信元にして、IDが「1」で識別されるプロセスを通信先にするプロセスの配置についての評価値が「0」であることを示す。同様に、評価値テーブル113は、IDが「0」で識別されるプロセスを通信元にして、IDが「2」で識別されるプロセスを通信先にするプロセスの配置についての評価値が「904」であることを示す。
ノード間総通信量テーブル114は、あるプロセス配置について、プロセスが配置された各ノード間の通信量の総計を記憶する。図6を用いて、ノード間総通信量テーブル114の一例を説明する。図6は、ノード間総通信量テーブルの一例を示す図である。例えば、ノード間総通信量テーブル114は、図6に示すように、「通信元プロセスが配置されているノードID」と「通信先プロセスが配置されているノードID」と「ノード間総通信量(Byte)」とを対応付けて記憶する。
ここで、ノード間総通信量テーブル114として記憶される「通信元プロセスが配置されているノードID」は、通信元となるプロセスが配置されているノードの識別子を示し、例えば、「14」が格納される。「通信先プロセスが配置されているノードID」は、通信先となるプロセスが配置されているノードの識別子を示し、例えば、「11」、「13」、「15」などが格納される。「ノード間総通信量(Byte)」は、プロセスが配置されたノードと隣接するノードとの間の通信量の総計を示し、例えば、「448」、「0」、「256」などが格納される。
具体的には、図6に示す例の場合、ノード間総通信量テーブル114は、ノード14とノード11との間の通信量の総計が「448(Byte)」であり、ノード14とノード13との間の通信量の総計が「0(Byte)」であることを示す。
補正評価値テーブル115は、あるプロセス配置に対して、プロセス配置を相対的に評価する評価値を記憶する。図7を用いて、補正評価値テーブル115の一例を説明する。図7は、補正評価値テーブルの一例を示す図である。例えば、補正評価値テーブル115は、図7に示すように、「プロセス配置ID」と「補正評価値」とを対応付けて記憶する。
ここで、補正評価値テーブル115として記憶される「プロセス配置ID」は、ノードに配置した通信元プロセスと通信先プロセスを含むプロセスの組み合わせを識別する識別子を示し、例えば、「xxx1」、「xxx2」などが格納される。また、「補正評価値」は、プロセス配置を相対的に評価する値であり、例えば、「補正評価値」には、「3012」、「740」などが格納される。
具体的には、図7に示す例の場合、補正評価値テーブル115は、IDが「xxx1」で識別されるプロセス配置の評価値が「3012」であることを示す。同様に、補正評価値テーブル115は、IDが「xxx2」で識別されるプロセス配置の評価値が「740」であることを示す。なお、「補正評価値」として格納される値は、後述する補正評価値算出部122cによって算出される。
制御部120は、各種の処理手順などを規定したプログラムおよび所要データを格納するための内部メモリを有し、プロセス配置部121と評価部122と補正評価値判定部123とを有する。例えば、制御部120は、ASIC(Application Specific Integrated Circuit)やFPGA(Field Programmable Gate Array)などの集積回路、又は、CPU(Central Processing Unit)やMPU(Micro Processing Unit)などの電子回路を用いて実現される。
プロセス配置部121は、メッシュ状またはトーラス状に接続されたノードそれぞれにプロセスを配置し、配置したプロセスの識別子をノードの位置情報に対応付けてプロセス配置テーブル111に格納する。
例えば、プロセス配置部121は、座標(2、1)に配置されたノード15にプロセス2を配置した場合、以下の処理を実行する。すなわち、プロセス配置部121は、図3に示したプロセス配置テーブル111の「ノードID」が「15」、「X座標」が「2」、「Y座標」が「1」に対応する「プロセスID」に「2」を格納する。
また、プロセス配置部121は、ノードにプロセスを配置した場合、配置したプロセスの組み合わせに対して識別子を付与する。言い換えると、プロセス配置部121は、プロセス配置テーブル111が示すプロセス配置の組み合わせに対して、プロセス配置IDを付与する。
評価部122は、評価値算出部122a、ノード間総通信量算出部122b、補正評価値算出部122cを有し、プロセス配置部121によってノードに配置されたプロセスの配置を評価する。
評価値算出部122aは、通信ホップ数及びプロセス間通信量に基づいて通信元プロセスと通信先プロセスとの間の評価値を算出する。ここで、通信ホップ数は、通信元であるプロセスが配置されている通信元のノードから通信先であるプロセスが配置されている通信先のノードに通信する場合に通過するノード数を示し、プロセス配置テーブル111から特定される。また、プロセス間通信量は、プロセス間通信量テーブル112から取得される。
例えば、評価値算出部122aは、IDが「0」で識別される通信元プロセスとIDが「2」で識別される通信先プロセスとの間の評価値を以下の処理を実行して算出する。なお、図3に示すプロセス配置テーブル111の通りにプロセスが配置され、プロセス間の通信量が図4に示すプロセス間通信量テーブル112の通りであるとする。
評価値算出部122aは、IDが「0」で識別される通信元プロセスが配置されているノード14及びIDが「2」で識別される通信先プロセスが配置されているノード15をプロセス配置テーブル111から特定する。続いて、評価値算出部122aは、ノード14からノード15に通信するまでの通信ホップ数として「1」を特定する。具体的には、評価値算出部122aは、ノード14の座標(1、1)からノード15の座標(2、1)の差(−1、0)を算出し、算出したX座標の絶対値「1」とY座標の絶対値「0」との和「1」を通信ホップ数として特定する。
また、評価値算出部122aは、IDが「0」で識別される通信元プロセスとIDが「2」で識別される通信先プロセスとの間のプロセス間通信量「904(Byte)」をプロセス間通信量テーブル112から取得する。
そして、評価値算出部122aは、特定した通信ホップ数に取得したプロセス間通信量を乗じた値を評価値として算出する。例えば、評価値算出部122aは、通信ホップ数「1」にプロセス間通信量「904(Byte)」を乗じて評価値「904」を算出する。
別例として、IDが「2」で識別される通信元プロセスとIDが「6」で識別される通信先プロセスとの間の評価値の算出を示す。評価値算出部122aは、通信元プロセス「2」が配置されているノード15及び通信先プロセス「6」が配置されているノード10をプロセス配置テーブル111から特定する。続いて、評価値算出部122aは、ノード15からノード10に通信するまでの通信ホップ数として「3」を特定する。
また、評価値算出部122aは、通信元プロセス「2」と通信先プロセス「6」との間のプロセス間通信量「128(Byte)」をプロセス間通信量テーブル112から取得する。そして、評価値算出部122aは、通信ホップ数「3」にプロセス間通信量「128(Byte)」を乗じて評価値「384」を算出する。
ノード間総通信量算出部122bは、ノード間の通信量の総計を示すノード間総通信量を算出する。例えば、ノード間総通信量算出部122bは、通信元であるプロセスが配置されているノードから通信先であるプロセスが配置されているノードまでの通信ルートを特定する。また、ノード間総通信量算出部122bは、プロセス間の通信量をプロセス間通信量テーブル112から取得する。そして、ノード間総通信量算出部122bは、特定した通信ルート上の各ノード間それぞれについて取得したプロセス間通信量を加算する。さらに、ノード間総通信量算出部122bは、すべてのプロセス間通信に対して、同様の処理を実行し、各ノード間の通信量の総計を示すノード間総通信量を算出する。
例えば、図3に示したプロセス配置テーブル111の通りにプロセスが配置される場合、ノード間総通信量算出部122bは、プロセス「0」が配置されたノード14とプロセス「3」が配置されたノード11との間の通信量の総計を以下の処理を実行して算出する。なお、説明の便宜上、ノード14とノード11との間は、プロセス「0」とプロセス「3」との通信、プロセス「0」とプロセス「4」との通信、プロセス「1」とプロセス「3」との通信、プロセス「2」とプロセス「6」との通信に利用されるものとする。
ノード間総通信量算出部122bは、プロセス「0」とプロセス「3」との通信量が「64(Byte)」であり、プロセス「0」とプロセス「4」との通信量が「128(Byte)」であることを図4に示すプロセス間通信量テーブル112から取得する。同様に、ノード間総通信量算出部122bは、プロセス「1」とプロセス「3」との通信量が「64(Byte)」であり、プロセス「2」とプロセス「6」との通信量が「128(Byte)」であることを取得する。そして、ノード間総通信量算出部122bは、取得した各プロセス間の通信量の和を算出して、ノード間の通信量の総計を算出する。例えば、ノード間総通信量算出部122bは、ノード14とノード11との間の通信量の総計として、「64+128+128+128=448(Byte)」を算出する。
補正評価値算出部122cは、評価値算出部122aによって算出された評価値及びノード間総通信量算出部122bによって算出されたノード間総通信量に基づいて、補正評価値を算出する。
例えば、補正評価値算出部122cは、以下の式(B)に基づいて、補正評価値を算出する。
Figure 2012243223
式(B)において、{hop(node(i)、node(j))}は、通信元プロセス((node(i)が実行するプロセス)と通信先プロセス(node(j)が実行するプロセス)との間の通信ホップ数を示し、size(i、j)は、通信元プロセスと通信先プロセスとの間の通信量を示す。また、max(DB)は、ノード間総通信量の最大値を示す。
すなわち、補正評価値算出部122cは、評価値の総計を算出するとともに、ノード間総通信量の最大値を抽出し、算出した評価値の総計と、抽出したノード間総通信量の最大値とに基づいて補正評価値を算出する。
具体的には、補正評価値算出部122cは、通信元プロセスと通信先プロセスとのすべての組み合わせに対する評価値を評価値テーブル113から読み出し、読み出した評価値の総計を算出する。また、補正評価値算出部122cは、ノード間総通信量テーブル114からノード間総通信量の最大値を抽出する。
そして、補正評価値算出部122cは、評価値の総計にノード間総通信量の最大値を乗じた値を補正評価値として算出する。続いて、補正評価値算出部122cは、算出した補正評価値を補正評価値テーブル115の「補正評価値」に「プロセス配置ID」と対応付けて格納する。
補正評価値判定部123は、補正評価値算出部122cによって算出された補正評価値が所定の閾値を下回ったか否かを判定する。そして、補正評価値判定部123は、補正評価値が所定の閾値を下回っていると判定した場合、プロセスの配置が最適化されていると判定する。この場合、補正評価値判定部123は、プロセスの配置が最適化されていることを出力部102に出力するようにしてもよい。
一方、補正評価値判定部123は、補正評価値が所定の閾値を上回っていると判定した場合、プロセスの配置が最適化されていないと判定する。そして、補正評価値判定部123は、補正評価値が所定の閾値を上回っていることをプロセス配置部121に通知する。この結果、プロセス配置部121は、各ノードに新たな組み合わせでプロセスを配置する。
所定の閾値を例えば「800」として補正評価値判定部123の動作の一例を説明する。補正評価値判定部123は、図7に示すプロセス配置IDが「xxx1」の場合、補正評価値「3012」が所定の閾値「800」を下回っていると判定し、配置されたプロセスが最適化されていないと判定する。補正評価値判定部123が、補正評価値が所定の閾値を上回っていることにより、配置されたプロセスが最適化されていないと判定した場合、プロセス配置部121は、各ノードに新たな組み合わせでプロセスを配置し、補正評価値判定部123は、新たな組み合わせで配置したプロセスの補正評価値が所定の閾値「800」を下回っているか再度判定する。また、補正評価値判定部123は、図7に示すプロセス配置IDが「xxx2」の場合、補正評価値「740」が所定の閾値「800」を下回っていると判定し、配置されたプロセスが最適化されていると判定する。なお、所定の閾値は「800」に限定されるものではなく、任意に変更可能である。
[実施例1に係る評価値算出装置よる処理の処理手順]
次に図8を用いて、実施例1に係るプロセス配置装置100による補正評価値算出処理の処理手順を説明する。図8は、実施例1に係るプロセス配置装置による補正評価値算出処理の処理手順を説明するフローチャートである。図8に示すように、プロセス配置装置100は、プロセスが配置されたことを契機として処理を実行する。
プロセス配置装置100は、通信元プロセスを選択し(ステップS101)、選択した通信元プロセスが配置されているノードを特定する(ステップS102)。また、プロセス配置装置100は、通信先プロセスを選択し(ステップS103)、選択した通信先プロセスが配置されているノードを特定する(ステップS104)。
プロセス配置装置100は、特定した通信元プロセスが配置されているノードから通信先プロセスが配置されているノードまでの通信ホップ数を特定する(ステップS105)。また、プロセス配置装置100は、特定した通信元プロセスが配置されているノードから通信先プロセスが配置されているノードとの間の通信量をプロセス間通信量テーブル112から特定する(ステップS106)。そして、プロセス配置装置100は、通信ホップ数とプロセス間通信量とから評価値を算出する(ステップS107)。
プロセス配置装置100は、通信元プロセスが配置されているノードから通信先プロセスが配置されているノードまでの通信ルートを特定し(ステップS108)、特定した通信ルート上のノード間それぞれのノード間総通信量を算出する(ステップS109)。
プロセス配置装置100は、すべての通信先プロセスについて処理を実行したか否かを判定する(ステップS110)。ここで、プロセス配置装置100は、すべての通信先プロセスについて処理を実行していないと判定した場合(ステップS110、No)、ステップS103に移行する。一方、プロセス配置装置100は、すべての通信先プロセスについて処理を実行したと判定した場合(ステップS110、Yes)、すべての通信元プロセスについて処理を実行したか否かを判定する(ステップS111)。
プロセス配置装置100は、すべての通信元プロセスについて処理を実行していないと判定した場合(ステップS111、No)、ステップS101に移行する。一方、プロセス配置装置100は、すべての通信元プロセスについて処理を実行したと判定した場合(ステップS111、Yes)、ステップS112を実行する。
すなわち、プロセス配置装置100は、すべての組み合わせについて算出された評価値の総計を算出する(ステップS112)。また、プロセス配置装置100は、すべての組み合わせについて算出されたノード間総通信量の中から最大値を抽出する(ステップS113)。そして、プロセス配置装置100は、評価値の総計とノード間総通信量の最大値とから補正評価値を算出する(ステップS114)。補正評価値判定部123は、補正評価値と所定の閾値との比較に基づき、配置されたプロセスが最適化されているかを判定する(ステップS115)。補正評価値判定部123が、補正評価値が所定の閾値を下回っており、配置されたプロセスが最適化されていないと判定した場合(ステップS115、No)、プロセス配置部121は、各ノードに新たな組み合わせでプロセスを配置する(ステップS116)。補正評価値判定部123は、新たな組み合わせで配置したプロセスの補正評価値が所定の閾値「800」を下回っているか再度判定する(ステップS115)。プロセス配置装置100は、補正評価値判定部123が、補正評価値が所定の閾値を上回っており、配置されたプロセスが最適化されていると判定した場合(ステップS115、Yes)、処理を終了する。
[実施例1の効果]
上述してきたように、実施例1では、プロセス配置装置100は、補正評価値Fを上記した式(B)によって算出する。補正評価値の値を小さくするためには、通信ホップ数とプロセス間通信量とを小さくするとともに、特定のノード間に通信を集中させないことが必要となる。すなわち、プロセス配置装置100は、従来の技術と比較して、ノード間の通信量を考慮することにより、プロセス配置の評価を向上することができる。この結果、プロセス配置装置100は、大量の通信を行うプロセス同士ほどノード間が他の通信に利用されず、かつ通信ホップ数が少なくなるようにプロセスの配置を選択するので、通信処理時間を短縮できる。
ところで、本発明は、上述した実施例以外にも、種々の異なる形態にて実施されてよい。そこで、実施例2では、本発明に含まれる他の実施例について説明する。
(システム構成等)
本実施例において説明した各処理のうち自動的に行われるものとして説明した処理の全部または一部を手動的に行うこともできる。あるいは、手動的に行われるものとして説明した処理の全部又は一部を公知の方法で自動的に行うこともできる。この他、上記文章中や図面中で示した処理手順、制御手順、具体的名称については、特記する場合を除いて任意に変更することができる。
また、プロセス配置部121は、ノードそれぞれにプロセスを配置し、配置したプロセスの識別子をノードの位置情報に対応付けてプロセス配置テーブル111に格納するものとして説明したがこれに限定されるものではない。例えば、プロセス配置部121は、利用者によって予めプロセス配置テーブル111に設定されたプロセスの配置に基づいて、ノードそれぞれにプロセスを配置してもよい。
また、図示した記憶部が格納する情報は一例に過ぎず、必ずしも図示のごとく情報が格納される必要はなく、任意に設定変更できる。例えば、プロセス配置テーブル111は、ノードのネットワークがメッシュ状またはトーラス状であることを示す情報を記憶してもよい。
また、各種の負荷や使用状況などに応じて、各実施例において説明した各処理の各ステップでの処理の順番を変更してもよい。例えば、図8に示すステップS105とステップS106との順番を入れ替えても良い。
また、図示した各構成部は、機能概念的なものであり、必ずしも物理的に図示のごとく構成されていることを要しない。例えば、プロセス配置装置100では、評価部122と補正評価値判定部123とが統合されてもよい。さらに、各装置にて行われる各処理機能は、その全部または任意の一部が、CPUおよび当該CPUにて解析実行されるプログラムにて実現され、あるいは、ワイヤードロジックによるハードウェアとして実現され得る。
(プログラム)
ところで、上記実施例で説明した各種の処理は、あらかじめ用意されたプログラムをパーソナルコンピュータやワークステーションなどのコンピュータシステムで実行することによって実現することができる。そこで、以下では、上記実施例と同様の機能を有するプログラムを実行するコンピュータシステムの一例を説明する。
図9は、評価値算出プログラムを実行するコンピュータを示す図である。図9に示すように、コンピュータ300は、利用者からデータや各種設定などを受け付ける入力装置310と、コンピュータの状況などを通知する出力装置320とを有する。また、コンピュータ300は、他の装置とデータを送受信するネットワークインターフェース330と媒体読取装置340とHDD(Hard Disk Drive)350とRAM(Random Access Memory)360とCPU370とバス380とを有する。そして、各装置310〜370それぞれは、バス380に接続される。
ここで、図9に示すように、HDD350には、図2に示した、評価値算出部122aとノード間総通信量算出部122bと補正評価値算出部122cと同様の機能を発揮する評価値算出プログラム351が予め記憶されている。また、媒体読取装置340は、評価値算出プログラム351を実現するための各種データを記憶する。この各種データは、例えば、プロセス配置テーブル111やプロセス間通信量テーブル112を含む。そして、CPU370は、評価値算出プログラム351をHDD350から読み出して、評価値算出プロセス371として実行する。すなわち、評価値算出プロセス371は、図2に示した、評価値算出部122aとノード間総通信量算出部122bと補正評価値算出部122cと同様の動作を実行する。
ところで、上記した評価値算出プログラム351は、必ずしもHDD350に記憶させておく必要はない。例えば、コンピュータ300に挿入されるフレキシブルディスク(FD)、CD−ROM、MOディスク、DVDディスク、光磁気ディスク、ICカードなどの「可搬用の物理媒体」に記憶させておくようにしてもよい。また、コンピュータ300の外に備えられるHDDなどの「固定用の物理媒体」に記憶させておいてもよい。さらに、公衆回線、インターネット、LAN(Local Area Network)、WAN(Wide Area Network)などを介してコンピュータ300に接続される「他のコンピュータシステム」に記憶させておいてもよい。そして、コンピュータ300がこれらからプログラムを読み出して実行するようにしてもよい。
すなわち、このプログラムは、上記した「可搬用の物理媒体」、「固定用の物理媒体」、「通信媒体」などの記録媒体に、コンピュータ読み取り可能に記憶されるものである。そして、コンピュータ300は、このような記録媒体からプログラムを読み出して実行することで上記した実施例と同様の機能を実現する。なお、この他の実施例でいうプログラムは、コンピュータ300によって実行されることに限定されるものではない。例えば、他のコンピュータシステムまたはサーバがプログラムを実行する場合や、これらが協働してプログラムを実行するような場合にも、本発明を同様に適用することができる。
1 コンピュータシステム
10、11、12、13、14、15、16、17、18 ノード
100 プロセス配置装置
101 入力部
102 出力部
103 通信制御I/F部
110 記憶部
111 プロセス配置テーブル
112 プロセス間通信量テーブル
113 評価値テーブル
114 ノード間総通信量テーブル
115 補正評価値テーブル
120 制御部
121 プロセス配置部
122 評価部
122a 評価値算出部
122b ノード間総通信量算出部
122c 補正評価値算出部
123 補正評価値判定部
300 コンピュータ
310 入力装置
320 出力装置
330 ネットワークインターフェース
340 媒体読取装置
350 HDD
351 評価値算出プログラム
360 RAM
370 CPU
371 評価値算出プロセス
380 バス

Claims (4)

  1. 互いに接続された複数のノードにプロセスを配置するプロセス配置装置において、
    前記複数のノードそれぞれの位置情報と、前記複数のノードのそれぞれに配置されたプロセスの識別子とを対応付けて記憶するプロセス配置記憶部と、
    通信元であるプロセスの識別子、通信先であるプロセスの識別子、及び前記通信元であるプロセスと前記通信先であるプロセスとの間の通信量を示すプロセス間通信量を対応付けて記憶するプロセス間通信量記憶部と、
    前記通信元であるプロセスが配置されている通信元のノードから前記通信先であるプロセスが配置されている通信先のノードまでのホップ数を前記プロセス配置記憶部から特定するとともに、前記プロセス間通信量を前記プロセス間通信量記憶部から取得し、前記ホップ数及び前記プロセス間通信量に基づいてプロセス配置についての評価値を算出する評価値算出部と、
    前記通信元のノードから前記通信先のノードまでの通信ルートを特定し、特定した通信ルート上の各ノード間それぞれのプロセス間の通信量を前記プロセス間通信量記憶部から取得して、取得したプロセス間通信量からノード間の通信量の総計を示すノード間総通信量を算出するノード間総通信量算出部と、
    前記評価値算出部が算出したプロセス配置についての評価値及び前記ノード間総通信量算出部が算出したノード間総通信量に基づいて、補正に用いる補正評価値を算出する補正評価値算出部と、
    前記補正評価値算出部が算出した補正評価値が所定値を下回っている場合、前記複数のノードのそれぞれにプロセスを新たな組合せで配置するプロセス配置部と、
    を有することを特徴とするプロセス配置装置。
  2. 前記プロセス配置装置において、
    前記補正評価値算出部は、前記評価値の総計を算出するとともに、前記ノード間総通信量の最大値を抽出し、算出した評価値の総計と、抽出したノード間総通信量の最大値とに基づいて補正評価値を算出することを特徴とする請求項1記載のプロセス配置装置。
  3. 互いに接続された複数のノードにプロセスを配置するプロセス配置方法において、
    コンピュータが、
    前記複数のノードそれぞれの位置情報と、前記複数のノードのそれぞれに配置されたプロセスの識別子とを対応付けて記憶するプロセス配置記憶部から、通信元であるプロセスが配置されている通信元のノードから通信先であるプロセスが配置されている通信先のノードまでのホップ数を特定し、
    通信元であるプロセスの識別子、通信先であるプロセスの識別子、及び前記通信元であるプロセスと前記通信先であるプロセスとの間の通信量を示すプロセス間通信量を対応付けて記憶するプロセス間通信量記憶部から、前記通信元のノードから前記通信先のノードまでのプロセス間通信量を取得し、
    前記ホップ数及び前記プロセス間通信量に基づいてプロセス配置についての評価値を算出し、
    前記通信元のノードから前記通信先のノードまでの通信ルートを特定し、特定した通信ルート上の各ノード間それぞれのプロセス間の通信量を前記プロセス間通信量記憶部から取得して、取得したプロセス間通信量から隣接するノード間の通信量の総計を示すノード間総通信量を算出し、
    前記算出したプロセス配置についての評価値及び前記算出したノード間総通信量に基づいて、補正に用いる補正評価値を算出し、
    前記算出した補正評価値が所定値を下回っている場合、前記複数のノードのそれぞれにプロセスを新たな組合せで配置する
    ことを特徴とするプロセス配置方法。
  4. 互いに接続された複数のノードにプロセスを配置するプロセス配置プログラムにおいて、
    コンピュータに、
    前記複数のノードそれぞれの位置情報と、前記複数のノードのそれぞれに配置されたプロセスの識別子とを対応付けて記憶するプロセス配置記憶部から、通信元であるプロセスが配置されている通信元のノードから通信先であるプロセスが配置されている通信先のノードまでのホップ数を特定させ、
    通信元であるプロセスの識別子、通信先であるプロセスの識別子、及び前記通信元であるプロセスと前記通信先であるプロセスとの間の通信量を示すプロセス間通信量を対応付けて記憶するプロセス間通信量記憶部から、前記通信元のノードから前記通信先のノードまでのプロセス間通信量を取得させ、
    前記ホップ数及び前記プロセス間通信量に基づいてプロセス配置についての評価値を算出させ、
    前記通信元のノードから前記通信先のノードまでの通信ルートを特定し、特定した通信ルート上の各ノード間それぞれのプロセス間の通信量を前記プロセス間通信量記憶部から取得して、取得したプロセス間通信量から隣接するノード間の通信量の総計を示すノード間総通信量を算出させ、
    前記算出したプロセス配置についての評価値及び前記算出したノード間総通信量に基づいて、補正評価値を算出させ、
    前記算出した補正評価値が所定値を下回っている場合、前記複数のノードのそれぞれにプロセスを新たな組合せで配置させる
    ことを特徴とするプロセス配置プログラム。
JP2011115232A 2011-05-23 2011-05-23 プロセス配置装置、プロセス配置方法及びプロセス配置プログラム Active JP5724626B2 (ja)

Priority Applications (3)

Application Number Priority Date Filing Date Title
JP2011115232A JP5724626B2 (ja) 2011-05-23 2011-05-23 プロセス配置装置、プロセス配置方法及びプロセス配置プログラム
US13/415,255 US8719821B2 (en) 2011-05-23 2012-03-08 Process allocation apparatus and process allocation method
EP12159122.6A EP2527981A3 (en) 2011-05-23 2012-03-12 Process allocation apparatus and process allocation method

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2011115232A JP5724626B2 (ja) 2011-05-23 2011-05-23 プロセス配置装置、プロセス配置方法及びプロセス配置プログラム

Publications (2)

Publication Number Publication Date
JP2012243223A true JP2012243223A (ja) 2012-12-10
JP5724626B2 JP5724626B2 (ja) 2015-05-27

Family

ID=45855508

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2011115232A Active JP5724626B2 (ja) 2011-05-23 2011-05-23 プロセス配置装置、プロセス配置方法及びプロセス配置プログラム

Country Status (3)

Country Link
US (1) US8719821B2 (ja)
EP (1) EP2527981A3 (ja)
JP (1) JP5724626B2 (ja)

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2014109117A1 (ja) * 2013-01-10 2014-07-17 株式会社日立製作所 情報処理装置
WO2014208661A1 (ja) * 2013-06-27 2014-12-31 日本電気株式会社 仮想マシン配置設計装置及び方法とシステム並びにプログラム
JP2016522488A (ja) * 2013-05-14 2016-07-28 華為技術有限公司Huawei Technologies Co.,Ltd. タスク割り当て方法、タスク割り当て装置、およびネットワークオンチップ
US9454399B2 (en) 2013-08-14 2016-09-27 Fujitsu Limited Parallel computer system, method of controlling parallel computer system, and recording medium

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9285865B2 (en) 2012-06-29 2016-03-15 Oracle International Corporation Dynamic link scaling based on bandwidth utilization
US20140040526A1 (en) * 2012-07-31 2014-02-06 Bruce J. Chang Coherent data forwarding when link congestion occurs in a multi-node coherent system

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH06243113A (ja) * 1993-02-19 1994-09-02 Fujitsu Ltd 並列計算機における計算モデルのマッピング法
JPH0934847A (ja) * 1995-07-14 1997-02-07 Hitachi Ltd 並列計算機システムの負荷分散方法
JPH11154143A (ja) * 1997-11-21 1999-06-08 Hitachi Ltd 並列プロセッサにおけるプロセス間のスケジューリング方式
JP2010257056A (ja) * 2009-04-22 2010-11-11 Fujitsu Ltd 並列処理装置、並列処理方法及び並列処理プログラム

Family Cites Families (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
AU2001293982A1 (en) * 2000-10-10 2002-04-22 Radiant Networks Plc Communications meshes
US8117288B2 (en) 2004-10-12 2012-02-14 International Business Machines Corporation Optimizing layout of an application on a massively parallel supercomputer
US7644142B2 (en) 2006-05-04 2010-01-05 Intel Corporation Methods and apparatus to perform process placement for distributed applications
US9384042B2 (en) 2008-12-16 2016-07-05 International Business Machines Corporation Techniques for dynamically assigning jobs to processors in a cluster based on inter-thread communications

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH06243113A (ja) * 1993-02-19 1994-09-02 Fujitsu Ltd 並列計算機における計算モデルのマッピング法
JPH0934847A (ja) * 1995-07-14 1997-02-07 Hitachi Ltd 並列計算機システムの負荷分散方法
JPH11154143A (ja) * 1997-11-21 1999-06-08 Hitachi Ltd 並列プロセッサにおけるプロセス間のスケジューリング方式
JP2010257056A (ja) * 2009-04-22 2010-11-11 Fujitsu Ltd 並列処理装置、並列処理方法及び並列処理プログラム

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
森江 善之,外4名: "通信衝突削減のためのタスク配置最適化の評価", 情報処理学会研究報告, vol. 第2008巻 第19号, JPN6014039637, 5 March 2008 (2008-03-05), pages 79 - 84, ISSN: 0003015549 *

Cited By (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2014109117A1 (ja) * 2013-01-10 2014-07-17 株式会社日立製作所 情報処理装置
JP2016522488A (ja) * 2013-05-14 2016-07-28 華為技術有限公司Huawei Technologies Co.,Ltd. タスク割り当て方法、タスク割り当て装置、およびネットワークオンチップ
US9965335B2 (en) 2013-05-14 2018-05-08 Huawei Technologies Co., Ltd. Allocating threads on a non-rectangular area on a NoC based on predicted traffic of a smallest rectangular area
US10671447B2 (en) 2013-05-14 2020-06-02 Huawei Technologies Co., Ltd. Method, apparatus, and network-on-chip for task allocation based on predicted traffic in an extended area
WO2014208661A1 (ja) * 2013-06-27 2014-12-31 日本電気株式会社 仮想マシン配置設計装置及び方法とシステム並びにプログラム
US9904566B2 (en) 2013-06-27 2018-02-27 Nec Corporation Selecting virtual machine placement by computing network link utilization and link variance
US9454399B2 (en) 2013-08-14 2016-09-27 Fujitsu Limited Parallel computer system, method of controlling parallel computer system, and recording medium
US9996391B2 (en) 2013-08-14 2018-06-12 Fujitsu Limited Parallel computer system, method of controlling parallel computer system, and recording medium

Also Published As

Publication number Publication date
US8719821B2 (en) 2014-05-06
US20120304180A1 (en) 2012-11-29
EP2527981A2 (en) 2012-11-28
JP5724626B2 (ja) 2015-05-27
EP2527981A3 (en) 2014-04-23

Similar Documents

Publication Publication Date Title
JP5724626B2 (ja) プロセス配置装置、プロセス配置方法及びプロセス配置プログラム
US8671099B2 (en) Clustering devices in an internet of things (‘IoT’)
US11449655B2 (en) Synthesis of a network-on-chip (NoC) using performance constraints and objectives
JP2016534456A (ja) データを記憶する方法及び装置
CN109039819A (zh) 时延统计方法、装置、系统及存储介质
WO2018040360A1 (zh) 一种整机柜功耗限制方法及装置
US20200065437A1 (en) System and method for application specific integrated circuit design
US9716625B2 (en) Identifying compatible system configurations
WO2021128171A1 (zh) 芯片的形式验证方法、设备和存储介质
US9923794B2 (en) Method, apparatus, and system for identifying abnormal IP data stream
JP6599049B2 (ja) データ収集装置
CN109218068A (zh) 用于提供自适应平台服务质量的技术
JP2012243224A (ja) プロセス配置装置、プロセス配置方法及びプロセス配置プログラム
JP2019053346A (ja) 情報処理装置、情報処理方法、情報処理プログラム、および情報処理システム
JP2017228223A (ja) 信号処理装置
JP2019140625A (ja) 通信システム及び通信方法
CN114422523B (zh) 一种面向电力车联网业务的业务编排方法及系统
JP5831274B2 (ja) 算出装置、算出プログラムおよび算出方法
JP6187202B2 (ja) 情報処理装置、情報処理方法および情報処理プログラム
CN114339832B (zh) 一种无线传感器网络的确定方法及装置
JP2022070307A (ja) コンテナ再配置システム、サーバ、コンテナ再配置方法及びコンテナ再配置プログラム
JP2019046041A (ja) 情報処理装置、情報処理システム、情報処理装置の制御方法及び情報処理装置の制御プログラム
TW201911956A (zh) 裝置對裝置網路之群組主機選擇方法與選擇群組主機的控制平台
WO2022160916A1 (zh) 处理数据的方法、装置、系统及存储介质
WO2021003704A1 (zh) 含隐私约束条件的地理分布式进程映射方法、装置及终端

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20140204

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20140908

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20140924

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20141125

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20141216

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20150126

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

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20150316

R150 Certificate of patent or registration of utility model

Ref document number: 5724626

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150