JP2012093945A - Node controller, output order determination method of requests and inter-node communication system - Google Patents
Node controller, output order determination method of requests and inter-node communication system Download PDFInfo
- Publication number
- JP2012093945A JP2012093945A JP2010240448A JP2010240448A JP2012093945A JP 2012093945 A JP2012093945 A JP 2012093945A JP 2010240448 A JP2010240448 A JP 2010240448A JP 2010240448 A JP2010240448 A JP 2010240448A JP 2012093945 A JP2012093945 A JP 2012093945A
- Authority
- JP
- Japan
- Prior art keywords
- request
- node
- priority
- requests
- 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
Links
- 238000004891 communication Methods 0.000 title claims abstract description 33
- 238000000034 method Methods 0.000 title claims description 36
- 235000008694 Humulus lupulus Nutrition 0.000 claims description 39
- 239000012536 storage buffer Substances 0.000 description 18
- 230000005540 biological transmission Effects 0.000 description 11
- 238000010586 diagram Methods 0.000 description 9
- 230000008569 process Effects 0.000 description 9
- 241001522296 Erithacus rubecula Species 0.000 description 6
- 239000000872 buffer Substances 0.000 description 4
- 230000000694 effects Effects 0.000 description 2
- 230000015556 catabolic process Effects 0.000 description 1
- 238000006731 degradation reaction Methods 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 239000000284 extract Substances 0.000 description 1
- 230000006870 function Effects 0.000 description 1
- 230000006872 improvement Effects 0.000 description 1
- 230000007246 mechanism Effects 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 230000004044 response Effects 0.000 description 1
Images
Landscapes
- Multi Processors (AREA)
Abstract
Description
本発明は、ノードコントローラ、リクエストの出力順序決定方法及びノード間通信システムに関し、特に、ノード間通信により他のノードへのアクセスする際のリクエストの送信順序を調停するためのノードコントローラ、リクエストの出力順序決定方法及びノード間通信システムに関する。 The present invention relates to a node controller, a request output order determination method, and an inter-node communication system, and in particular, a node controller for arbitrating a request transmission order when accessing another node by inter-node communication, and a request output. The present invention relates to an order determination method and an inter-node communication system.
大規模なコンピュータシステムは、複数の処理を並列して実行するために複数のプロセッサを有する。そして、複数のプロセッサを一つのノードとして管理する。さらに、このようなノードを複数有し、ノード間を接続し、各ノードの処理及びノード間通信により所定の処理を実現する。このような大規模なコンピュータシステムでは、ノード間でのデータ通信が頻繁に発生する。例えば、あるプロセッサにおける処理を完了するために、他のプロセッサへ処理を行わせてその結果を必要とする場合がある。その際、要求元のプロセッサは、要求先のプロセッサへのリクエストを送信し、レスポンスを受信する。そして、要求元と要求先が異なるノードに属する場合、ノード間通信が発生する。 A large-scale computer system has a plurality of processors in order to execute a plurality of processes in parallel. A plurality of processors are managed as one node. Furthermore, a plurality of such nodes are provided, the nodes are connected, and predetermined processing is realized by processing of each node and inter-node communication. In such a large-scale computer system, data communication frequently occurs between nodes. For example, in order to complete the processing in a certain processor, the processing may be performed on another processor and the result may be required. At that time, the requesting processor transmits a request to the requesting processor and receives a response. When the request source and the request destination belong to different nodes, inter-node communication occurs.
特許文献1には、1つのメモリに対する複数のアクセスマスタの競合に対して柔軟、かつ、確実にレイテンシを保証するためのメモリアクセス制御回路に関する技術が開示されている。特許文献1に開示されるメモリアクセス制御回路は、複数のアクセスマスタとメモリとの間に設けられる。優先度比較回路は。優先度レジスタに保持される優先度を比較する。セレクタは、最も優先度の高いアクセスマスタにアクセスを許可する。優先度レジスタに保持される優先度は、アクセスが待たされるごとに減算値レジスタの値が減算されることによって上昇する。これにより、アクセスされやすくなる。連続アクセス回数レジスタは、連続アクセス回数を保持する。そして、連続アクセス回数がアクセス上限回数レジスタの値に達すると、次のアクセス要求があったときに優先度レジスタに保持される初期値の優先度が低く抑えられる。
また、一般に、ノード間通信におけるリクエストの処理性能を向上させるためには、特定のリクエストに優先度をつけ、優先度の高いリクエストを先に送信し、当該リクエストを優先して処理させることにより性能を向上してきた。例えば、複数のリクエストに依存関係がある場合には、先に処理すべきリクエストの優先度を予め高く設定しておくことで、後続のリクエストを効率的に処理することができる。このような複数のリクエストに依存関係は、論理的に定まるものであるため、事前に優先度を設定することが可能である。 In general, in order to improve the request processing performance in inter-node communication, a priority is given to a specific request, a request with a higher priority is sent first, and the request is processed with priority. Has improved. For example, when there are dependencies among a plurality of requests, the subsequent requests can be efficiently processed by setting the priority of the request to be processed first in advance. Since the dependency relationship between such a plurality of requests is logically determined, priority can be set in advance.
しかしながら、近年の複数のノードを用いた大規模なコンピュータシステムでは、ノード数が多数であり、ノード間の接続関係が複雑である。そして、ノード間の接続関係は、基本的に、複数のリクエストにおいて論理的に定まる依存関係とは無関係である。例えば、ノード間の接続関係は、全体の処理パフォーマンスやハードウェアに費やすことができるコスト等により変動するものである。そのため、同じリクエストであっても、ノードの配置や数によっては、経由するノード数つまり当該リクエストが要求先に到達するために要する時間に大きな差が出る場合がある。その場合、同じリクエストについての全体の処理時間に差が出る。よって、上述した依存関係に基づいて予めリクエストの優先度を設定することには限界があるという問題点がある。 However, in recent large-scale computer systems using a plurality of nodes, the number of nodes is large, and the connection relationship between the nodes is complicated. The connection relationship between the nodes is basically irrelevant to the dependency relationship logically determined in a plurality of requests. For example, the connection relationship between nodes varies depending on the overall processing performance and the cost that can be spent on hardware. Therefore, even for the same request, depending on the arrangement and number of nodes, there may be a large difference in the number of nodes that pass through, that is, the time required for the request to reach the request destination. In that case, there is a difference in the overall processing time for the same request. Therefore, there is a problem that there is a limit in setting the priority of the request in advance based on the dependency relationship described above.
例えば、後続のリクエストのHOP数がより大きい場合、優先度に従ってHOP数の小さいリクエストを先に送信してしまう場合がありえる。その場合、例え、優先度の高いリクエストの処理が完了したとしても、後続のリクエストが完了しないために、さらに後のリクエストが実行できないこととなる。そのため、リクエストの送信順序の調停に参加するタイミングによっては、処理を開始するまでに時間がかかってしまい、性能が低下してしまうことがあった。 For example, if the number of HOPs of subsequent requests is larger, a request with a smaller number of HOPs may be transmitted first according to the priority. In that case, even if processing of a request with a high priority is completed, subsequent requests are not completed, so that further subsequent requests cannot be executed. For this reason, depending on the timing of participating in the arbitration of the request transmission order, it may take time to start the processing, and the performance may deteriorate.
尚、特許文献1は、ノード間通信における上述した課題を解決するためのものではない。
Note that
本発明は、このような問題点を解決するためになされたものであり、ノード間通信により他のノードへのアクセスする際の複数のリクエスト全体の処理性能を向上するためのノードコントローラ、リクエストの出力順序決定方法及びノード間通信システムを提供することを目的とする。 The present invention has been made in order to solve such a problem. A node controller for improving the overall processing performance of a plurality of requests when accessing other nodes by inter-node communication, An object is to provide an output order determination method and an inter-node communication system.
本発明の第1の態様にかかるノードコントローラは、複数のノードと接続され、自己のノード内の複数のプロセッサから前記複数のノードのいずれかに属するプロセッサへの複数のリクエストを受け付け、当該複数のリクエストのそれぞれについて、リクエストの要求先のノードに応じた優先度を算出する優先度算出回路と、前記算出された優先度に基づいて、前記受け付けた複数のリクエストのうち出力すべきリクエストを決定する決定回路と、前記決定されたリクエストを選択して前記要求先のノードへ出力する選択回路と、を備える。 The node controller according to the first aspect of the present invention is connected to a plurality of nodes, receives a plurality of requests from a plurality of processors in its own node to a processor belonging to any of the plurality of nodes, and For each request, a priority calculation circuit that calculates a priority according to a request destination node of the request, and a request to be output among the plurality of received requests is determined based on the calculated priority. A determination circuit; and a selection circuit that selects the determined request and outputs the selected request to the requested node.
本発明の第2の態様にかかるリクエストの出力順序決定方法は、第1のノード内の第1のプロセッサから第2のノード内のプロセッサへの第1のリクエストと、当該第1のノード内の第2のプロセッサから第3のノード内のプロセッサへの第2のリクエストとを同時に受け付け、前記第1のリクエスト及び前記第2のリクエストの要求元に応じた第1の優先度と第2の優先度を算出し、前記第1の優先度と前記第2の優先度に基づいて、前記第1のリクエスト及び前記第2のリクエストのいずれを出力すべきかを決定し、前記決定されたリクエストを選択して前記要求先のノードへ出力する。 The method for determining the output order of requests according to the second aspect of the present invention includes: a first request from a first processor in a first node to a processor in a second node; The second request from the second processor to the processor in the third node is received at the same time, and the first priority and the second priority according to the request source of the first request and the second request Calculating a degree, determining whether to output the first request or the second request based on the first priority and the second priority, and selecting the determined request To the requested node.
本発明の第3の態様にかかるノード間通信システムは、複数のノードと接続され、複数のプロセッサと、当該複数のプロセッサから前記複数のノードのいずれかに属するプロセッサへの複数のリクエストを受け付け、当該複数のリクエストのそれぞれについて、リクエストの要求先のノードに応じた優先度を算出する優先度算出手段と、前記算出された優先度に基づいて、前記受け付けた複数のリクエストのうち出力すべきリクエストを決定する決定手段と、前記決定されたリクエストを選択して前記要求先のノードへ出力する選択手段と、を備えるノードコントローラとを有するノードを含む。 The inter-node communication system according to the third aspect of the present invention is connected to a plurality of nodes, receives a plurality of processors, and a plurality of requests from the plurality of processors to a processor belonging to any of the plurality of nodes, For each of the plurality of requests, priority calculation means for calculating a priority according to the request destination node of the request, and a request to be output among the plurality of received requests based on the calculated priority A node controller comprising: a determining unit that determines a request; and a selecting unit that selects the determined request and outputs the selected request to the requested node.
本発明により、ノード間通信により他のノードへのアクセスする際の複数のリクエスト全体の処理性能を向上するためのノードコントローラ、リクエストの出力順序決定方法及びノード間通信システムを提供することができる。 According to the present invention, it is possible to provide a node controller, a request output order determination method, and an inter-node communication system for improving overall processing performance of a plurality of requests when accessing other nodes by inter-node communication.
以下では、本発明を適用した具体的な実施の形態について、図面を参照しながら詳細に説明する。各図面において、同一要素には同一の符号が付されており、説明の明確化のため、必要に応じて重複説明は省略する。 Hereinafter, specific embodiments to which the present invention is applied will be described in detail with reference to the drawings. In the drawings, the same elements are denoted by the same reference numerals, and redundant description will be omitted as necessary for the sake of clarity.
<発明の実施の形態1>
図1は、本発明の実施の形態1にかかるノード間通信システム100の構成を示すブロック図である。ノード間通信システム100は、少なくともノード1と、ノード2と、ノード3とを備える。ノード1乃至3は、それぞれ、複数のプロセッサを搭載した汎用的なコンピュータ装置である。そして、ノード1乃至3は、それぞれ信号線等により接続されている。これにより、各ノードに含まれるプロセッサが他のノードに含まれるプロセッサに対する処理要求を送受信することができる。
<
FIG. 1 is a block diagram showing a configuration of an
ノード1は、プロセッサ11a、11b、・・・及び11nと、ノードコントローラ12とを備える。プロセッサ11a、11b、・・・及び11nは、例えば、CPU(Central Processing Unit)である。また、各プロセッサは、相互に接続されている。そして、各プロセッサは、それぞれ独立して所定の処理を行う。その際、各プロセッサは、必要に応じてプロセッサ間通信を行う。例えば、プロセッサ11aは、プロセッサ11bに対して処理要求すなわちリクエスト)を送信する。そして、プロセッサ11bは、当該リクエストに応じた処理を実行し、リクエスト結果をプロセッサ11aへ返信する。その後、プロセッサ11aは、プロセッサ11bから受信したリクエスト結果に応じて後続の処理を実行する。
The
また、プロセッサ11a、11b、・・・及び11nは、ノードコントローラ12とそれぞれ接続されている。そして、各プロセッサは、リクエストを他のノードつまりノード2または3のいずれかに属するプロセッサへ送信する場合がある。その場合、各プロセッサは、ノードコントローラ12を介して他のノードに属するプロセッサとの通信を行う。
The processors 11a, 11b,..., And 11n are connected to the
ノードコントローラ12は、各プロセッサからノード2又は3を要求先とした複数のリクエストを受け付け、受け付けた複数のリクエストの出力を制御する。また、ノードコントローラ12は、ノード2又は3からリクエストを受け付け、プロセッサ11a、11b、・・・及び11nのいずれかへ当該リクエストを出力する。
The
ノードコントローラ12は、優先度算出回路13と、決定回路14と、選択回路15とを備える。優先度算出回路13は、自己のノード内の複数のプロセッサから複数のノードのいずれかに属するプロセッサへの複数のリクエストを受け付け、当該複数のリクエストのそれぞれについて、リクエストの要求先のノードに応じた優先度を算出する。決定回路14は、算出された優先度に基づいて、受け付けた複数のリクエストのうち出力すべきリクエストを決定する。選択回路15は、決定されたリクエストを選択して前記要求先のノードへ出力する。尚、実際には、ノードコントローラ12は、選択回路15により出力されたリクエストについて、所定の処理を行った上でノード1の外部へ出力するが、当該所定の処理は、一般的なものであるため、詳細な説明を省略する。
The
ノード2は、複数のプロセッサ21と、ノードコントローラ22とを備える。また、ノード3は、複数のプロセッサ31と、ノードコントローラ32とを備える。尚、ノード2及び3は、ノード1と同等の機能を有するため、詳細な説明を省略する。つまり、プロセッサ21及び31は、プロセッサ11a等と同等である。また、ノードコントローラ22及び32は、ノードコントローラ12と同等である。
The
尚、ノード1乃至3が搭載するプロセッサの数は、図示したものに限定されない。例えば、ノード1には、プロセッサを1以上搭載していればよい。
Note that the number of processors mounted on the
図2は、本発明の実施の形態1にかかるアクセス調停方法の処理の流れを示すフローチャートである。まず、ノードコントローラ12は、プロセッサ11a〜11nから複数のリクエストを受け付ける(S11)。次に、優先度算出回路13は、各リクエストの優先度を算出する(S12)。そして、決定回路14は、優先度に基づいて出力すべきリクエストを決定する(S13)。その後、選択回路15は、決定されたリクエストを選択して出力する(S14)。
FIG. 2 is a flowchart showing a process flow of the access arbitration method according to the first exemplary embodiment of the present invention. First, the
また、本発明の実施の形態1にかかるアクセス調停方法は、ノード間通信システム100が3つのノードを有する場合に、少なくとも以下のように言い換えることができる。まず、第1のノード内の第1のプロセッサから第2のノード内のプロセッサへの第1のリクエストと、当該第1のノード内の第2のプロセッサから第3のノード内のプロセッサへの第2のリクエストとを同時に受け付ける。次に、第1のリクエスト及び第2のリクエストの要求元に応じた第1の優先度と第2の優先度を算出する。そして、第1の優先度と第2の優先度に基づいて、第1のリクエスト及び第2のリクエストのいずれを出力すべきかを決定する。その後、決定されたリクエストを選択して前記要求先のノードへ出力することを特徴とするリクエストの出力順序決定方法。
In addition, the access arbitration method according to the first exemplary embodiment of the present invention can be paraphrased as follows at least when the
例えば、複数のリクエストの要求先のノードが異なる場合に、優先度を単にリクエストの種別により定めるのではなく、要求先のノードに応じて算出する。これにより、ノードの配置や接続状態によって、リクエストの送信時間に差が出る場合等を考慮して優先度を求めることができる。そのため、本発明の実施の形態1により、ノードの位置関係が無視された場合に比べて、ノード間通信により他のノードへのアクセスする際の複数のリクエスト全体の処理性能を向上することができる。 For example, when the request destination nodes of a plurality of requests are different, the priority is calculated not according to the request type but according to the request destination node. Accordingly, the priority can be obtained in consideration of a case where a difference occurs in the request transmission time depending on the arrangement and connection state of the nodes. Therefore, according to the first embodiment of the present invention, it is possible to improve the overall processing performance of a plurality of requests when accessing other nodes by inter-node communication, compared to the case where the positional relationship of the nodes is ignored. .
<発明の実施の形態2>
図3は、本発明の実施の形態2にかかるコンピュータシステム100aの構成を示すブロック図である。コンピュータシステム100aは、上述した実施の形態1にかかるノード間通信システム100の一実施例である。コンピュータシステム100aは、ノード101乃至108を備える。尚、コンピュータシステム100aが備えるノード数はこれに限定されない。
<
FIG. 3 is a block diagram showing a configuration of a
ノード101は、ノードコントローラ111と、プロセッサ112乃至115とを備える。すなわち、ノードコントローラ111と、プロセッサ112乃至115とを一つの単位とし、それらを纏めたものをノード101と呼ぶ。ノードコントローラ111と、プロセッサ112乃至115とは、それぞれ一対一で信号線により接続されている。同様に、ノード102は、ノードコントローラ121と、プロセッサ122乃至125とを備える。そして、ノードコントローラ121と、プロセッサ122乃至125とは、それぞれ一対一で信号線により接続されている。
The
その他、ノード103、104、105、106、107及び108は、それぞれノードコントローラ131、141、151、161、171及び181を備え、プロセッサも複数備えているが、図示を省略する。
In addition, the
ここで、図3にかかるノード間の接続関係ついて以下に説明する。図3では、各ノードは、隣接するノード間のノードコントローラ同士が信号線で一対一に接続されている。これにより、ノード間のアクセスを実現する。 Here, the connection relationship between the nodes according to FIG. 3 will be described below. In FIG. 3, in each node, node controllers between adjacent nodes are connected one-to-one by signal lines. Thereby, access between nodes is realized.
具体的には、ノードコントローラ111は、隣接するノードコントローラ121、131、141、171及び181と、信号線305、306、307、301及び302を介して一対一に接続されている。同様に、ノードコントローラ121は、隣接するノードコントローラ111、131、141、171及び181と、信号線305、308、309、303及び304を介して一対一に接続されている。ノードコントローラ131は、隣接するノードコントローラ111、121、141、151及び161と、信号線306、308、310、311及び312を介して一対一に接続されている。ノードコントローラ141は、隣接するノードコントローラ111、121、131、151及び161と、信号線307、308、310、313及び314を介して一対一に接続されている。ノードコントローラ151は、隣接するノードコントローラ131、141及び161と、信号線311、313及び315を介して一対一に接続されている。ノードコントローラ161は、隣接するノードコントローラ131、141及び151と、信号線312、314及び315を介して一対一に接続されている。ノードコントローラ171は、隣接するノードコントローラ111、121及び181と、信号線301、303及び316を介して一対一に接続されている。ノードコントローラ181は、隣接するノードコントローラ111、121及び171と、信号線302、304及び316を介して一対一に接続されている。その他、ノード105、106、107及び108の接続関係は、図示及び説明を省略する。
Specifically, the
ノードコントローラ同士が接続されていないものとの間のアクセスは、間に別のノードコントローラを挟んでアクセスする。つまり、図3では、ノード101及び102とノード105及び106とは直接接続されておらず、ノード103又は104を介してノード間通信を行う必要があることを示す。例えば、ノードコントローラ111からノードコントローラ161へアクセスする場合には、ノードコントローラ131を経由し、信号線306及び312を介してアクセスするか、ノードコントローラ141を経由し、信号線307及び314を介してアクセスする。この際のアクセスする経路の決定は、公知の技術を用いることができるため、詳細な説明を省略する。
Access between node controllers that are not connected to each other is performed with another node controller in between. That is, FIG. 3 shows that the
図4は、本発明の実施の形態2にかかるノードコントローラ111の構成を示すブロック図である。特に、図4では、ノードコントローラ111の構成のうち、プロセッサ112乃至115から受け付けたリクエストを出力する際の出力順序を決定するための構成について示している。そのため、ノードコントローラ111における他の構成については、図示及び説明を省略する。
FIG. 4 is a block diagram showing a configuration of the
ノードコントローラ111は、テーブル201と、リクエスト格納バッファ202乃至205と、セレクト係数格納レジスタ206乃至209と、セレクト係数生成回路210乃至213と、リクエスト保持レジスタ214乃至217と、セレクト係数保持レジスタ218乃至221と、セレクト係数調停回路222乃至225と、リクエスト調停回路226と、セレクタ227とを備える。
The
テーブル201は、プロセッサから発行されるリクエストに含まれる要求先のノードと、ホップ数とを対応付けて格納する記憶部である。ここで、ホップ数とは、リクエストが自己のノードから要求先のノードへ到達するために経由するノード数である。または、ホップ数は、現在のリクエストの位置からリクエストの送信先までにかかる時間の単位を示すものということもできる。 The table 201 is a storage unit that stores a request destination node included in a request issued from a processor and the number of hops in association with each other. Here, the number of hops is the number of nodes through which the request passes to reach the requested node from its own node. Alternatively, the number of hops may indicate a unit of time taken from the current request position to the request transmission destination.
図5は、本発明の実施の形態2にかかるテーブルの例を示す図である。ここでは、例として、テーブル201に#401〜#405の5つのレコードが予め登録されているものとする。"DIND"は、リクエストに含まれる要求先を2進数で表現した値である。"HOP数"は、上述したホップ数を示す。尚、図5に示した値は、図3に示した各ノードやその接続関係とは対応しないものとする。また、テーブル201に登録された値は、コンピュータシステム100aにおけるノードの接続関係を変更した場合に、適宜、設定変更されるものとする。
FIG. 5 is a diagram illustrating an example of a table according to the second embodiment of the present invention. Here, as an example, it is assumed that five records # 401 to # 405 are registered in the table 201 in advance. “DIND” is a value representing the request destination included in the request in binary. “HOP number” indicates the number of hops described above. Note that the values shown in FIG. 5 do not correspond to the nodes shown in FIG. 3 and their connection relationships. In addition, the values registered in the table 201 are appropriately changed when the node connection relationship in the
ここで、リクエスト格納バッファ202、リクエスト保持レジスタ214、セレクト係数生成回路210、セレクト係数格納レジスタ206、セレクト係数調停回路222及びセレクト係数保持レジスタ218は、プロセッサ112から出力されるリクエストに対する処理を行う。同様に、リクエスト格納バッファ203、リクエスト保持レジスタ215、セレクト係数生成回路211、セレクト係数格納レジスタ207、セレクト係数調停回路223及びセレクト係数保持レジスタ219は、プロセッサ113から出力されるリクエストに対する処理を行う。リクエスト格納バッファ204、リクエスト保持レジスタ216、セレクト係数生成回路212、セレクト係数格納レジスタ208、セレクト係数調停回路224及びセレクト係数保持レジスタ220は、プロセッサ114から出力されるリクエストに対する処理を行う。リクエスト格納バッファ205、リクエスト保持レジスタ217、セレクト係数生成回路213、セレクト係数格納レジスタ209、セレクト係数調停回路225及びセレクト係数保持レジスタ221は、プロセッサ115から出力されるリクエストに対する処理を行う。そのため、以下では、プロセッサ112に対応する構成を中心に説明し、プロセッサ113乃至115に対応する構成については、適宜、説明を省略する。
Here, the
リクエスト格納バッファ202は、プロセッサ112から出力されたリクエストを格納するバッファである。リクエスト格納バッファ202は、複数のリクエストを格納することが可能であり、FIFO(First In First Out)方式により後段のリクエスト保持レジスタ214へリクエストを出力する。
The
セレクト係数格納レジスタ206は、後述するリクエスト調停回路226において複数のリクエストを調停する際の優先度を示した値であるセレクト係数を格納するレジスタである。セレクト係数格納レジスタ206に格納できる値の数は、リクエスト格納バッファ202に格納できるリクエスト数と同数である。
The select
セレクト係数生成回路210は、プロセッサから出力されたリクエストから要求先を抽出する。そして、セレクト係数生成回路210は、抽出した要求先に対応するホップ数をテーブル201から取得する。その後、セレクト係数生成回路210乃至213は、取得したホップ数をデコードする。つまり、セレクト係数生成回路210は、プロセッサ112から受け付けたリクエストについて、リクエストの要求先のノードに対応付けられたホップ数をテーブル201から取得して、セレクト係数を算出する。
The select
そのため、セレクト係数生成回路210乃至213は、プロセッサ112乃至115から外部のノードに属するプロセッサを要求先とした複数のリクエストを受け付け、当該複数のリクエストのそれぞれについて、リクエストの要求先のノードに応じたセレクト係数を算出するといえる。また、セレクト係数生成回路210乃至213は、ホップ数が大きいほどセレクト係数をより高く算出するといえる。
For this reason, the select
また、セレクト係数生成回路210は、リクエスト保持レジスタ214に保持しているリクエストがリクエスト調停回路226における調停により出力すべきリクエストとして決定されなかった場合に、セレクト係数格納レジスタ206に格納されている各セレクト係数に1を加算する。すなわち、セレクト係数生成回路210は、リクエスト格納バッファ202にリクエストが格納されており、かつ、当該リクエストがリクエスト保持レジスタ214へ出力されなかったときに、調停の対象外となったリクエストにおけるセレクト係数についてより優先度が高くなるように更新する。よって、
The select
そのため、セレクト係数格納レジスタ206には、セレクト係数生成回路210により算出された値をセレクト係数として格納する。
Therefore, the value calculated by the select
リクエスト保持レジスタ214乃至217は、リクエスト調停回路226における調停の対象となるリクエストを保持するレジスタである。例えば、リクエスト保持レジスタ214には、リクエスト格納バッファ202にリクエストが格納されている順番に格納される。また、リクエスト格納バッファ202にリクエストが格納されていない場合、リクエスト保持レジスタ214には、プロセッサ112から出力されたリクエストがリクエスト格納バッファ202を経由せずに、直接、格納される。
The
セレクト係数保持レジスタ218は、リクエスト調停回路226における調停対象のリクエストに対応するセレクト係数を格納するレジスタである。具体的には、セレクト係数保持レジスタ218には、後述するセレクト係数調停回路222において出力されたセレクト係数が格納される。つまり、セレクト係数保持レジスタ218乃至221は、それぞれリクエスト保持レジスタ214乃至217に対応する。
The select
セレクト係数調停回路222は、セレクト係数生成回路210、セレクト係数格納レジスタ206及びリクエスト調停回路226から出力される3つのセレクト係数とを調停する。つまり、セレクト係数調停回路222は、上述した3つのセレクト係数のいずれかを選択してセレクト係数保持レジスタ218へ出力する。例えば、リクエスト調停回路226によりリクエスト保持レジスタ214に格納されたリクエストが出力すべきリクエストとして決定された場合、セレクト係数調停回路222は、セレクト係数生成回路210又はセレクト係数格納レジスタ206から出力されるセレクト係数を出力する。このとき、リクエスト格納バッファ202にリクエストが格納済みである場合には、セレクト係数格納レジスタ206から出力されるセレクト係数を選択し、リクエスト格納バッファ202にリクエストが格納されていない場合には、セレクト係数生成回路210から出力されるセレクト係数を選択する。また、リクエスト調停回路226によりリクエスト保持レジスタ214に格納されたリクエストが出力すべきリクエストとして決定されなかった場合、リクエスト調停回路226から出力されるセレクト係数を選択する。
The select
リクエスト調停回路226は、セレクト係数保持レジスタ218乃至221に格納されたセレクト係数に基づき調停して、出力すべきリクエストを決定し、セレクタ227へ通知する。すなわち、リクエスト調停回路226は、リクエスト保持レジスタ214乃至217に格納された複数のリクエスト、つまり調停対象のリクエストのうち出力すべきリクエストを決定し、リクエスト保持レジスタ214乃至217のいずれを選択すべきかをセレクタ227に通知する。
The
また、リクエスト調停回路226は、調停により出力対象から漏れたリクエストに対し、決められたルールを基にセレクト係数を再設定し、セレクト係数調停回路222乃至225へ出力する。つまり、リクエスト調停回路226は、調停対象のリクエストのうち出力すべきリクエストとして決定されなかった未決定リクエストについて、所定の基準に基づいてセレクト係数をより高く更新する。このとき、セレクト係数生成回路210乃至213は、調停対象のリクエストの後に受け付けた後続リクエストについてセレクト係数を算出する。その後、リクエスト調停回路226は、未決定リクエストについて更新されたセレクト係数と、後続リクエストについて算出されたセレクト係数とに基づいて、出力すべきリクエストを決定する。
Further, the
さらに、リクエスト調停回路226は、後続リクエストの要求元と未決定リクエストの要求元とが同一のプロセッサである場合、当該後続リクエストを調停の対象外とする。そしてセレクト係数生成回路210乃至213は、対象外とされた後続リクエストのセレクト係数をより高く更新する。
Furthermore, when the request source of the subsequent request and the request source of the undetermined request are the same processor, the
セレクタ227は、リクエスト調停回路226から通知を受けたリクエストを選択して出力する。つまり、セレクタ227は、リクエスト調停回路226により出力すべきと決定されたリクエストを選択して要求先のノードへ出力する。
The
ここで、第1のリクエストと第2のリクエストを受け付け、第1のリクエストについて算出されるセレクト係数を第1の優先度、第2のリクエストについて算出されるセレクト係数を第2の優先度とした場合について、本発明の実施の形態2に係る動作を説明する。セレクト係数生成回路は、第1のリクエストにおけるホップ数が、第2のリクエストにおけるホップ数より大きい場合に、第1の優先度を第2の優先度より高く算出する。そして、リクエスト調停回路226は、第1のリクエストを出力すべきリクエストとして決定する。
Here, the first request and the second request are accepted, the select coefficient calculated for the first request is the first priority, and the select coefficient calculated for the second request is the second priority. An operation according to the second embodiment of the present invention will be described. The select coefficient generation circuit calculates the first priority higher than the second priority when the number of hops in the first request is larger than the number of hops in the second request. Then, the
図6は、本発明の実施の形態2にかかるアクセス調停方法の流れを説明するためのフローチャートである。まず、前提として、テーブル201には、予め自己のノードから各リクエストの要求先に応じたホップ数を格納済みであるものとする。 FIG. 6 is a flowchart for explaining the flow of the access arbitration method according to the second exemplary embodiment of the present invention. First, as a premise, it is assumed that the number of hops corresponding to the request destination of each request is already stored in the table 201 from its own node.
そして、ノードコントローラ111は、プロセッサ112乃至115からリクエストを受け付け、それぞれをリクエスト格納バッファ202乃至205に格納する(S21)。そして、調停対象となるリクエストは、リクエスト保持レジスタ214乃至217に保持される。次に、セレクト係数生成回路210乃至213は、受け付けたリクエストについて、テーブル201を参照してセレクト係数を算出し、セレクト係数格納レジスタ206乃至209に格納する(S22)。図5の例では、リクエストの要求先のDNIDが"000"の場合、ホップ数は"10"となる(#401)。
Then, the
その後、リクエスト調停回路226は、調停する(S23)。つまり、リクエスト調停回路226は、リセレクト係数保持レジスタ218乃至221に格納済みのセレクト係数を比較して、対応するリクエスト保持レジスタ214乃至217に格納済みのリクエストのいずれを出力すべきかを決定する。そして、リクエスト調停回路226は、決定したリクエストをセレクタ227に通知する。
Thereafter, the
このとき、リクエスト調停回路226の決定の基準としては、第一にセレクト係数が大きいほうから調停が優先され、第二にセレクト係数が同じ値であった場合にはセレクタの番号が小さい番号から調停していくものとする。但し、リクエスト調停回路226による決定の基準はこれに限定されない。
At this time, as a criterion for determination of the
その後、セレクタ227は、リクエスト調停回路226により決定されたリクエストを選択して出力する(S24)。また、リクエスト調停回路226は、未決定リクエストのセレクト係数を更新する(S25)。また、この間、ステップS21において、後続のリクエストを受け付けた場合、ステップS22において、セレクト係数生成回路210乃至213は、後続リクエストにおけるセレクト係数を算出する。また、ステップS25と併せて、セレクト係数生成回路210乃至213は、未決定リクエストの後続リクエストのセレクト係数について上述したように更新する。
Thereafter, the
そして、ステップS23に戻り、リクエスト調停回路226は、出力されたリクエストの後続リクエストと、未決定リクエストのいずれを出力すべきかを決定する。以後、リクエストの受け付けがなくなるまで繰り返し実行される。
Then, returning to step S23, the
ここで、リクエスト調停回路226におけるセレクト係数の再設定方法の一例を説明する。尚、本発明の実施の形態2にかかるセレクト係数の再設定方法はこれに限定されない。リクエスト調停回路226は、未決定リクエストについてセレクト係数を更新する際の所定の基準として、出力すべきリクエストとして決定されたリクエストのセレクト係数と、未決定のリクエストのセレクト係数と、複数のノードのうち自己のノードから要求先のノードへリクエストが到達するために経由するノード数の最大値とを用いる。
Here, an example of a selection coefficient resetting method in the
図7は、本発明の実施の形態2にかかるセレクト係数の再設定処理の流れを説明するためのフローチャートである。まず、リクエスト調停回路226は、決定リクエストと未決定リクエストとのセレクト係数の差分を算出する(S31)。決定リクエストとは、調停により出力すべきと決定されたリクエストである。また、未決定リクエストとは、調停により次点だったリクエストである。
FIG. 7 is a flowchart for explaining a flow of the selection coefficient resetting process according to the second embodiment of the present invention. First, the
次に、リクエスト調停回路226は、ステップS31により算出された差分がテーブル201に格納されたホップ数のうち最大値である最大ホップ数の1/2以上であるか否かを判定する(S32)。すなわち、以下の(1)式を満たすか否かを判定する。
差分 ≧ 最大ホップ数×1/2・・・(1)
Next, the
Difference ≥ Maximum number of hops x 1/2 (1)
ステップS32において、1/2以上であると判定した場合、リクエスト調停回路226は、差分の1/2の値に、調停待ち分の1を足した値を、セレクト係数に足す(S33)。すなわち、以下の(2)式によりセレクト係数を更新する。
セレクト係数= セレクト係数 + 差分×1/2 + 1 ・・・(2)
If it is determined in step S32 that it is equal to or greater than 1/2, the
Select coefficient = Select coefficient + Difference x 1/2 + 1 (2)
ステップS32において、1/2未満であると判定した場合、リクエスト調停回路226は、差分に調停待ち分の1を足した値をセレクト係数に足す(S34)。つまり、以下の(3)式によりセレクト係数を更新する。
セレクト係数= セレクト係数 + 差分 + 1 ・・・(3)
If it is determined in step S32 that the value is less than ½, the
Select coefficient = Select coefficient + Difference + 1 (3)
尚、セレクト係数の小数点が発生した場合には切り上げて計算する。そして、リクエスト調停回路226は、図7の処理を未決定リクエストの全てについて実行する。
When the decimal point of the select coefficient is generated, it is rounded up and calculated. Then, the
以下に、具体例を示して説明する。まず、図5の例では、最大ホップ数が"25"である。そのため、ステップS32の比較に用いる比較値は、最大ホップ数の1/2である"12.5"となる。また、以下では、リクエストA、B、C及びDを対象とする。そして、リクエストA、B、C及びDのDINDは、"010"、"100"、"011"及び"001"であるものとする。そして、リクエストDは、システム内でアクセスネックとなりうるリクエストであるものとする。以下、図6及び図7に沿って説明する。 Below, a specific example is shown and demonstrated. First, in the example of FIG. 5, the maximum number of hops is “25”. Therefore, the comparison value used for the comparison in step S32 is “12.5”, which is ½ of the maximum hop count. In the following, requests A, B, C, and D are targeted. The DINDs of the requests A, B, C, and D are “010”, “100”, “011”, and “001”. The request D is a request that can become an access bottleneck in the system. Hereinafter, a description will be given with reference to FIGS. 6 and 7.
まず、ノードコントローラ111は、プロセッサ112乃至114からリクエストA、B及びCを同時に受け付け、それぞれをリクエスト格納バッファ202乃至204に格納する(S21)。そして、リクエストA、B及びCは、リクエスト保持レジスタ214乃至216に格納されたものとする。つまり、3つのリクエストA、B及びCが同時に調停対象となったものとする。
First, the
次に、セレクト係数生成回路210乃至212は、リクエストA、B及びCのDINDに基づきテーブル201からホップ数"5"、"5"及び"20"を取得し、セレクタ係数としてセレクト係数格納レジスタ206乃至208に格納する(S22)。併せて、当該セレクト係数がセレクト係数保持レジスタ218乃至220にも格納される。
Next, the select
そして、リクエスト調停回路226は、3つのセレクタ係数を比較し、最大値である"20"に対応するリクエストCを出力すべきリクエストとして決定する(S23)。そして、リクエスト調停回路226は、リクエストCが決定した旨をセレクタ227に通知する(S24)。
Then, the
併せて、リクエスト調停回路226は、調停の勝者であるリクエストCのセレクト数"20"と調停の次点であるリクエストA及びBのセレクト係数"5"との差分"15"を算出する(S31)。そして、リクエスト調停回路226は、差分"15"と上述した比較値"12.5"とを比較する(S32)。ここでは、差分"15"が比較値"12.5"以上であるため、リクエスト調停回路226は、リクエストA及びBのセレクト係数"5"に、差分"15"の1/2である"8"と"1"とを加算してセレクト係数"14"を算出(S33)し、セレクト係数調停回路222及び223へ出力する。そのため、セレクト係数保持レジスタ218及び219には、それぞれ"14"が格納される。
At the same time, the
ここで、上述のステップS21以後に、ノードコントローラ111は、プロセッサ115から後続リクエストとしてリクエストDを受け付けたものとする(S21)。そのため、ノードコントローラ111は、リクエストDをリクエスト格納バッファ205、続いて、リクエスト保持レジスタ217に格納する。また、セレクト係数生成回路213は、リクエストDのDINDに基づきテーブル201からホップ数"25"を取得し、セレクタ係数としてセレクト係数格納レジスタ209に格納する(S22)。併せて、当該セレクト係数がセレクト係数保持レジスタ221にも格納される。
Here, it is assumed that the
続いて、ステップS23により次の調停が行われる。このとき、調停対象のリクエストは、リクエスト保持レジスタ214、215及び217に格納されたリクエストA、B及びDとなる。そのため、リクエスト調停回路226は、セレクト係数保持レジスタ218、219及び221に格納されたセレクト係数に基づいて決定を行う。
Subsequently, the next arbitration is performed in step S23. At this time, arbitration target requests are requests A, B, and D stored in the
ここでは、リクエストA、B及びDのセレクト係数が"14"、"14"、"25"であるため、リクエスト調停回路226は、最大値である"25"に対応するリクエストDを出力すべきリクエストとして決定する(S23)。そして、リクエスト調停回路226は、リクエストDが決定した旨をセレクタ227に通知する(S24)。
Here, since the selection coefficients of the requests A, B and D are “14”, “14” and “25”, the
また、併せて、リクエスト調停回路226は、調停の勝者であるリクエストDのセレクト数"25"と調停の次点であるリクエストA及びBのセレクト係数"14"との差分"11"を算出する(S31)。そして、リクエスト調停回路226は、差分"11"と上述した比較値"12.5"とを比較する(S32)。ここでは、差分"11"が比較値"12.5"未満であるため、リクエスト調停回路226は、リクエストA及びBのセレクト係数"14"に、差分"11"と"1"とを加算してセレクト係数"26"を算出(S34)し、セレクト係数調停回路222及び223へ出力する。そのため、セレクト係数保持レジスタ218及び219には、それぞれ"26"が格納される。
In addition, the
その後、ステップS23により3回目の調停が行われる。このとき、調停対象のリクエストは、リクエスト保持レジスタ214及び215に格納されたリクエストA及びBとなる。そのため、リクエスト調停回路226は、セレクト係数保持レジスタ218及び219に格納されたセレクト係数に基づいて決定を行う。
Thereafter, the third arbitration is performed in step S23. At this time, the arbitration target requests are requests A and B stored in the
ここでは、リクエストA及びBのセレクト係数が"26"、"26"であるため、リクエスト調停回路226は、セレクタの番号が小さい番号であるリクエストAを出力すべきリクエストとして決定する(S23)。そして、リクエスト調停回路226は、リクエストAが決定した旨をセレクタ227に通知する(S24)。
Here, since the selection coefficients of the requests A and B are “26” and “26”, the
また、併せて、リクエスト調停回路226は、調停の勝者であるリクエストAのセレクト数"26"と調停の次点であるリクエストBのセレクト係数"26"との差分"0"を算出する(S31)。そして、リクエスト調停回路226は、差分"0"と上述した比較値"12.5"とを比較する(S32)。ここでは、差分"0"が比較値"12.5"未満であるため、リクエスト調停回路226は、リクエストBのセレクト係数"26"に、差分"0"と"1"とを加算してセレクト係数"27"を算出(S34)し、セレクト係数調停回路223へ出力する。そのため、セレクト係数保持レジスタ219には、"27"が格納される。
In addition, the
その後、ステップS23により4回目の調停が行われる。このとき、調停対象のリクエストは、リクエスト保持レジスタ215に格納されたリクエストBのみとなる。そのため、リクエスト調停回路226は、単独での調停であるため、リクエストBを出力すべきリクエストとして決定する(S23)。そして、リクエスト調停回路226は、リクエストBが決定した旨をセレクタ227に通知する(S24)。
Thereafter, a fourth arbitration is performed in step S23. At this time, the request to be arbitrated is only the request B stored in the
続いて、本発明の実施の形態2により解決される課題及び効果について説明する。外部のノードへリクエストを送信する場合の調停方法としては、課題で上述した優先度を付ける方法の他、ラウンドロビンを用いることもできる。しかし、これらの方法を使用した場合、リクエストが処理される送信先までのホップ数に関係なく、調停が行われる。そのため、セレクタの調停タイミングによってはホップ数の大きいリクエストが後回しにされてしまう。よって、リクエストの処理を開始するまでの時間がかかってしまうことがあった。その際、あるメモリへのアクセスに対し、最初に処理されるべきホップ数が大きいリクエストがネックとなってしまう。それに伴い、処理速度が落ち、性能が低下してしまうことがあった。 Subsequently, problems and effects solved by the second embodiment of the present invention will be described. As an arbitration method in the case of transmitting a request to an external node, round robin can be used in addition to the method of assigning the priority described above in the problem. However, when these methods are used, arbitration is performed regardless of the number of hops to the transmission destination where the request is processed. Therefore, depending on the arbitration timing of the selector, a request with a large number of hops is postponed. Therefore, it may take time to start processing the request. At that time, a request with a large number of hops to be processed first becomes a bottleneck for accessing a certain memory. Along with this, the processing speed is lowered, and the performance may be lowered.
ここで、ラウンドロビンによる調停方式を適用した場合について説明する。上述した例と同様に、3つのリクエストA、B及びCが同時に調停に参加し、次の調停時にはリクエストDが調停に参加するような場合を想定するものとする。また、リクエストA、B、C及びDのDNIDも同様に、"010"、"100"、"011"及び"001"であるものとし、その際のホップ数が図5に示した値であるものとする。また、システム内でアクセスネックとなりうるリクエストをリクエストDとする。 Here, the case where the arbitration method by round robin is applied will be described. As in the example described above, it is assumed that three requests A, B, and C participate in arbitration at the same time, and request D participates in arbitration at the next arbitration. Similarly, the DNIDs of the requests A, B, C, and D are also “010”, “100”, “011”, and “001”, and the number of hops at that time is the value shown in FIG. Shall. A request that can become an access bottleneck in the system is referred to as request D.
図8は、ラウンドロビンを適用した場合のリクエストの処理速度を説明するための図である。まず、現在の優先権が最も小さい番号にある場合、ラウンドロビンを適用して調停による勝者を決める際は、当該小さい番号から調停権を与えられる。そのため、図8に示すように、調停順は、リクエストA、リクエストB、リクエストC、リクエストDの順になる。そして、調停順に従って、各リクエストが要求先のノードへ出力される。その際、経過する時間がリクエストごとの網掛け部分となる。つまり、リクエストAが時刻1から時刻5まで経過した後、目的の要求先に到達し、要求先にてリクエストAの処理が開始される。同様に、リクエストB及びCが出力され、最後に時刻4にて、リクエストDが出力される。そのため、システム内でのアクセスネックとなりうるリクエストDは、セレクタ227がリクエストを受け取ってから、最速でも28ホップ後に要求先に到達することになる。
FIG. 8 is a diagram for explaining the request processing speed when round robin is applied. First, when the current priority is at the lowest number, when applying a round robin to determine the winner by arbitration, the arbitration right is given from the lower number. Therefore, as shown in FIG. 8, the arbitration order is the order of request A, request B, request C, and request D. Each request is output to the requested node according to the arbitration order. At that time, the elapsed time is shaded for each request. That is, after the request A has elapsed from
また、単位時間当たりのリクエストの送信処理数の最大値は"4"であるが、最大値で送信処理されている時間は、2ホップ間のみである。つまり、2ホップ間において、ノード間通信が最も効率的に利用されていることとなる。そのため、処理が横長になっており、全てのリクエストについて、要求先で処理が開始されるまでに28ホップかかっている。 Further, the maximum value of the number of request transmission processes per unit time is “4”, but the time during which transmission processing is performed at the maximum value is only between two hops. That is, communication between nodes is most efficiently used between two hops. Therefore, the processing is horizontally long, and it takes 28 hops for all requests to start processing at the request destination.
ここで、近年の複数のノードを用いた大規模なコンピュータシステムでは、さらなるリクエストの処理性能の向上が求められている。そこで、本発明の実施の形態2により、さらなるリクエストの処理性能の向上を実現することを説明する。 Here, in a large-scale computer system using a plurality of nodes in recent years, further improvement in request processing performance is required. Thus, it will be described that the request processing performance is further improved according to the second embodiment of the present invention.
図9は、本発明の実施の形態2にかかるリクエストの処理速度を説明するための図である。本発明の実施の形態2において、調停により勝者を決定すると、その調停順は、リクエストC、リクエストD、リクエストA、リクエストBとなる。ここで、システム内でのアクセスネックとなりうるリクエストDは、セレクタ227がリクエストを受け取ってから最速で25ホップ後に要求先が受信することになる。
FIG. 9 is a diagram for explaining the request processing speed according to the second embodiment of the present invention. In the second embodiment of the present invention, when a winner is determined by arbitration, the arbitration order is request C, request D, request A, and request B. Here, the request D that can be an access bottleneck in the system is received by the
また、単位時間当たりのリクエストの送信処理数の最大値は"4"であるが、最大値で送信処理されている時間は、4ホップ間である。そのため、ラウンドロビンで処理しているときよりも送信処理期間が短くなっており、全てのリクエストについて、要求先で処理が開始されるまでに26ホップとなる。 Further, the maximum value of the number of request transmission processes per unit time is “4”, but the time during which transmission processing is performed at the maximum value is between four hops. For this reason, the transmission processing period is shorter than when round robin processing is performed, and all requests have 26 hops before processing is started at the request destination.
以上のことから、本発明の実施の形態2における効果を説明する。まず、同一メモリなどへのアクセスが多発したときに、全体的な性能が一番遅いリクエストに引っ張られることがある。そこで、本発明の実施の形態2では、ホップ数の大きいリクエストを先に処理することで、全体的なリクエストの処理速度が向上できる。 From the above, the effect in the second embodiment of the present invention will be described. First, when access to the same memory or the like occurs frequently, a request with the slowest overall performance may be pulled. Therefore, in the second embodiment of the present invention, by processing a request with a large number of hops first, the overall request processing speed can be improved.
また、セレクタからリクエストの要求先までの到達にかかる時間が長いリクエストを優先させることで、システム全体における単位時間あたりのリクエストの送信処理数が増大し、全リクエストの処理時間が平均、短縮化できる。 In addition, by giving priority to requests that take a long time to reach the request destination from the selector, the number of request transmission processes per unit time in the entire system increases, and the processing time for all requests can be shortened on average. .
<その他の発明の実施の形態>
本発明の実施の形態2は、大規模なシステムにおいて、あるセレクタにおけるホップ数の大きなリクエストの調停を優先させることで、全体的な処理速度の向上を図ることができる。
また、本発明の実施の形態2により、ノードコントローラ111に、セレクタ227からリクエストの要求先までのホップ数を基に、優先度を決定する機構であるリクエスト調停回路226を設けた。そして、ホップ数が大きいリクエストほど調停を優先的に調停させることで、アクセスネックとなる可能性のあるホップ数の大きいリクエストを先に処理することで局所的な性能低下を抑えることができる。
<Other embodiments of the invention>
Further, according to the second embodiment of the present invention, the
さらに、本発明は上述した実施の形態のみに限定されるものではなく、既に述べた本発明の要旨を逸脱しない範囲において種々の変更が可能であることは勿論である。 Furthermore, the present invention is not limited to the above-described embodiments, and various modifications can be made without departing from the gist of the present invention described above.
上記の実施形態の一部又は全部は、以下の付記のようにも記載され得るが、以下には限られない。 A part or all of the above embodiments can be described as in the following supplementary notes, but is not limited thereto.
(付記1) 複数のノードと接続され、
自己のノード内の複数のプロセッサから前記複数のノードのいずれかに属するプロセッサへの複数のリクエストを受け付け、当該複数のリクエストのそれぞれについて、リクエストの要求先のノードに応じた優先度を算出する優先度算出回路と、
前記算出された優先度に基づいて、前記受け付けた複数のリクエストのうち出力すべきリクエストを決定する決定回路と、
前記決定されたリクエストを選択して前記要求先のノードへ出力する選択回路と、
を備えるノードコントローラ。
(Appendix 1) Connected to multiple nodes,
Priority that receives a plurality of requests from a plurality of processors in its own node to a processor belonging to any of the plurality of nodes, and calculates a priority according to the request destination node for each of the plurality of requests. A degree calculation circuit;
A determination circuit for determining a request to be output among the plurality of received requests based on the calculated priority;
A selection circuit that selects the determined request and outputs the selected request to the requested node;
A node controller comprising:
(付記2) 前記優先度算出回路は、各リクエストが自己のノードから要求先のノードへ到達するために経由するノード数であるホップ数が大きいほど、前記優先度をより高く算出することを特徴とする付記1に記載のノードコントローラ。
(Supplementary Note 2) The priority calculation circuit calculates the priority higher as the number of hops, which is the number of nodes through which each request passes from its own node to reach the request destination node, is larger. The node controller according to
(付記3) 前記リクエストの要求先のノードと、前記ホップ数とを対応付けて格納する記憶部をさらに備え、
前記優先度算出回路は、前記受け付けた複数のリクエストのそれぞれについて、リクエストの要求先のノードに対応付けられた前記ホップ数を前記記憶部から取得して、前記優先度を算出する
ことを特徴とする付記2に記載のノードコントローラ。
(Supplementary Note 3) A storage unit that stores the request destination node of the request and the number of hops in association with each other,
The priority calculation circuit, for each of the plurality of received requests, acquires the number of hops associated with a request destination node of the request from the storage unit, and calculates the priority. The node controller according to
(付記4) 前記決定回路は、前記受け付けた複数のリクエストのうち、前記出力すべきリクエストとして決定されなかった未決定リクエストについて、所定の基準に基づいて前記優先度をより高く更新し、
前記優先度算出回路は、前記複数のリクエストを受け付けた後に受け付けた後続リクエストについて前記優先度を算出し、
前記決定回路は、前記未決定リクエストの前記更新された優先度と、前記後続リクエストの前記算出された優先度とに基づいて、前記出力すべきリクエストを決定する
ことを特徴とする付記1乃至3のいずれか1項に記載のノードコントローラ。
(Additional remark 4) The said determination circuit updates the said priority higher based on a predetermined | prescribed reference | standard about the undecided request which was not determined as the said request which should be output among the said some received requests,
The priority calculation circuit calculates the priority for subsequent requests received after receiving the plurality of requests,
The determination circuit determines the request to be output based on the updated priority of the undecided request and the calculated priority of the subsequent request. The node controller according to any one of the above.
(付記5) 前記決定回路は、前記未決定リクエストについて前記優先度を更新する際の前記所定の基準として、前記出力すべきリクエストとして決定されたリクエストの優先度と、前記未決定のリクエストの優先度と、前記複数のノードのうち自己のノードから要求先のノードへリクエストが到達するために経由するノード数の最大値とを用いることを特徴とする付記4に記載のノードコントローラ。
(Additional remark 5) The said determination circuit, as the said predetermined reference | standard at the time of updating the said priority regarding the said undetermined request, the priority of the request determined as the said request which should be output, and the priority of the said undetermined request The node controller according to
(付記6) 前記決定回路は、前記後続リクエストの要求元と前記未決定リクエストの要求元とが同一のプロセッサである場合、当該後続リクエストを前記決定の対象外とし、
前記優先度算出回路は、前記対象外とされた後続リクエストの前記優先度をより高く更新する
ことを特徴とする付記4又は5に記載のノードコントローラ。
(Supplementary Note 6) When the request source of the subsequent request and the request source of the undecided request are the same processor, the determination circuit excludes the subsequent request from the determination target.
The node controller according to
(付記7) 第1のノード内の第1のプロセッサから第2のノード内のプロセッサへの第1のリクエストと、当該第1のノード内の第2のプロセッサから第3のノード内のプロセッサへの第2のリクエストとを同時に受け付け、
前記第1のリクエスト及び前記第2のリクエストの要求元に応じた第1の優先度と第2の優先度を算出し、
前記第1の優先度と前記第2の優先度に基づいて、前記第1のリクエスト及び前記第2のリクエストのいずれを出力すべきかを決定し、
前記決定されたリクエストを選択して前記要求先のノードへ出力する
ことを特徴とするリクエストの出力順序決定方法。
(Supplementary note 7) A first request from a first processor in a first node to a processor in a second node, and a second processor in the first node to a processor in a third node Simultaneously with the second request for
Calculating a first priority and a second priority according to a request source of the first request and the second request;
Determining whether to output the first request or the second request based on the first priority and the second priority;
A request output order determination method comprising: selecting the determined requests and outputting the selected requests to the request destination node.
(付記8) 前記第1のリクエストが前記第2のノードへ到達するために経由するノード数であるホップ数が、前記第2のリクエストが前記第3のノードへ到達するために経由するノード数より大きい場合、前記第1の優先度を前記第2の優先度より高く算出し、
前記出力すべきリクエストとして前記第1のリクエストを決定する
ことを特徴とする付記7に記載の出力順序決定方法。
(Supplementary Note 8) The number of hops, which is the number of nodes through which the first request passes to reach the second node, is the number of nodes through which the second request passes through to reach the third node. If greater, calculate the first priority higher than the second priority;
The output order determination method according to
(付記9) 前記出力すべきリクエストとして決定されなかった前記第2のリクエストについて、所定の基準に基づいて前記第2の優先度をより高く更新し、
前記第1のリクエスト及び前記第2のリクエストを受け付けた後に受け付けた第3のリクエストについて第3の優先度を算出し、
前記更新された第2の優先度と、前記算出された第3の優先度とに基づいて、前記出力すべきリクエストを決定する
ことを特徴とする付記8に記載の出力順序決定方法。
(Supplementary Note 9) For the second request that has not been determined as the request to be output, update the second priority higher based on a predetermined criterion,
Calculating a third priority for a third request received after receiving the first request and the second request;
The output order determination method according to
(付記10) 前記第2の優先度を更新する際の前記所定の基準として、前記第1の優先度と、前記第2の優先度と、前記第1のノードから要求先のノードへリクエストが到達するために経由するノード数の最大値とを用いることを特徴とする付記9に記載の出力順序決定方法。
(Supplementary Note 10) As the predetermined reference when the second priority is updated, the first priority, the second priority, and a request from the first node to the requesting node The output order determination method according to
(付記11) 前記第3のリクエストの要求元と前記第2のリクエストの要求元とが同一のプロセッサである場合、当該第3のリクエストを前記決定の対象外とし、
前記第3の優先度をより高く更新する
ことを特徴とする付記9又は10に記載の出力順序決定方法。
(Supplementary Note 11) When the request source of the third request and the request source of the second request are the same processor, the third request is excluded from the determination target,
The output order determination method according to
(付記12) 複数のノードと接続され、
複数のプロセッサと、
当該複数のプロセッサから前記複数のノードのいずれかに属するプロセッサへの複数のリクエストを受け付け、当該複数のリクエストのそれぞれについて、リクエストの要求先のノードに応じた優先度を算出する優先度算出手段と、
前記算出された優先度に基づいて、前記受け付けた複数のリクエストのうち出力すべきリクエストを決定する決定手段と、
前記決定されたリクエストを選択して前記要求先のノードへ出力する選択手段と、
を備えるノードコントローラとを有するノード
を含むノード間通信システム。
(Supplementary Note 12) Connected to multiple nodes,
Multiple processors,
Priority calculating means for receiving a plurality of requests from the plurality of processors to a processor belonging to any of the plurality of nodes, and calculating a priority according to a request destination node for each of the plurality of requests; ,
Determining means for determining a request to be output among the plurality of received requests based on the calculated priority;
Selecting means for selecting the determined request and outputting it to the requested node;
An inter-node communication system including a node having a node controller.
(付記13) 前記優先度算出手段は、各リクエストが自己のノードから要求先のノードへ到達するために経由するノード数であるホップ数が大きいほど、前記優先度をより高く算出することを特徴とする付記12に記載のノード間通信システム。
(Additional remark 13) The said priority calculation means calculates the said priority higher, so that the number of hops which are the number of nodes through which each request | requirement passes from its own node to a request destination node is large. The inter-node communication system according to
(付記14) 前記ノードコントローラは、前記リクエストの要求先のノードと、前記ホップ数とを対応付けて格納する記憶手段をさらに備え、
前記優先度算出手段は、前記受け付けた複数のリクエストのそれぞれについて、リクエストの要求先のノードに対応付けられた前記ホップ数を前記記憶手段から取得して、前記優先度を算出する
ことを特徴とする付記13に記載のノード間通信システム。
(Supplementary Note 14) The node controller further includes storage means for storing the request destination node of the request in association with the hop count,
The priority calculation means acquires the number of hops associated with a request destination node of the request from each of the plurality of received requests from the storage means, and calculates the priority. The inter-node communication system according to Supplementary Note 13.
(付記15) 前記決定手段は、前記受け付けた複数のリクエストのうち、前記出力すべきリクエストとして決定されなかった未決定リクエストについて、所定の基準に基づいて前記優先度をより高く更新し、
前記優先度算出手段は、前記複数のリクエストを受け付けた後に受け付けた後続リクエストについて前記優先度を算出し、
前記決定手段は、前記未決定リクエストの前記更新された優先度と、前記後続リクエストの前記算出された優先度とに基づいて、前記出力すべきリクエストを決定する
ことを特徴とする付記12乃至14のいずれか1項に記載のノード間通信システム。
(Additional remark 15) The said determination means updates the said priority higher based on a predetermined | prescribed reference | standard about the undetermined request which was not determined as the said request which should be output among the received several requests,
The priority calculation means calculates the priority for subsequent requests received after receiving the plurality of requests,
The determination means determines the request to be output based on the updated priority of the undecided request and the calculated priority of the subsequent request. The inter-node communication system according to any one of the above.
(付記16) 前記決定手段は、前記未決定リクエストについて前記優先度を更新する際の前記所定の基準として、前記出力すべきリクエストとして決定されたリクエストの優先度と、前記未決定のリクエストの優先度と、前記複数のノードのうち自己のノードから要求先のノードへリクエストが到達するために経由するノード数の最大値とを用いることを特徴とする付記15に記載のノード間通信システム。
(Additional remark 16) The said determination means, as the said predetermined reference | standard at the time of updating the said priority about the said undetermined request, the priority of the request determined as the said request which should be output, and the priority of the said undetermined request 16. The inter-node communication system according to
(付記17) 前記決定手段は、前記後続リクエストの要求元と前記未決定リクエストの要求元とが同一のプロセッサである場合、当該後続リクエストを前記決定の対象外とし、
前記優先度算出手段は、前記対象外とされた後続リクエストの前記優先度をより高く更新する
ことを特徴とする付記15又は16に記載のノード間通信システム。
(Supplementary Note 17) When the request source of the subsequent request and the request source of the undecided request are the same processor, the determination unit excludes the subsequent request from the determination target.
The inter-node communication system according to
100 ノード間通信システム
1 ノード
11a プロセッサ
11b プロセッサ
11n プロセッサ
12 ノードコントローラ
13 優先度算出回路
14 決定回路
15 選択回路
2 ノード
21 プロセッサ
22 ノードコントローラ
3 ノード
31 プロセッサ
32 ノードコントローラ
100a コンピュータシステム
101 ノード
102 ノード
103 ノード
104 ノード
105 ノード
106 ノード
107 ノード
108 ノード
111 ノードコントローラ
112 プロセッサ
113 プロセッサ
114 プロセッサ
115 プロセッサ
121 ノードコントローラ
122 プロセッサ
123 プロセッサ
124 プロセッサ
125 プロセッサ
131 ノードコントローラ
141 ノードコントローラ
151 ノードコントローラ
161 ノードコントローラ
171 ノードコントローラ
181 ノードコントローラ
301 信号線
302 信号線
303 信号線
304 信号線
305 信号線
306 信号線
307 信号線
308 信号線
309 信号線
310 信号線
311 信号線
312 信号線
313 信号線
314 信号線
315 信号線
316 信号線
201 テーブル
202 リクエスト格納バッファ
203 リクエスト格納バッファ
204 リクエスト格納バッファ
205 リクエスト格納バッファ
206 セレクト係数格納レジスタ
207 セレクト係数格納レジスタ
208 セレクト係数格納レジスタ
209 セレクト係数格納レジスタ
210 セレクト係数生成回路
211 セレクト係数生成回路
212 セレクト係数生成回路
213 セレクト係数生成回路
214 リクエスト保持レジスタ
215 リクエスト保持レジスタ
216 リクエスト保持レジスタ
217 リクエスト保持レジスタ
218 セレクト係数保持レジスタ
219 セレクト係数保持レジスタ
220 セレクト係数保持レジスタ
221 セレクト係数保持レジスタ
222 セレクト係数調停回路
223 セレクト係数調停回路
224 セレクト係数調停回路
225 セレクト係数調停回路
226 リクエスト調停回路
227 セレクタ
100 node communication system 1 node 11a processor 11b processor 11n processor 12 node controller 13 priority calculation circuit 14 decision circuit 15 selection circuit 2 node 21 processor 22 node controller 3 node 31 processor 32 node controller 100a computer system 101 node 102 node 103 node 104 node 105 node 106 node 107 node 108 node 111 node controller 112 processor 113 processor 114 processor 115 processor 121 node controller 122 processor 123 processor 124 processor 125 processor 131 node controller 141 node controller 151 node controller 161 no Controller 171 Node controller 181 Node controller 301 Signal line 302 Signal line 303 Signal line 304 Signal line 305 Signal line 306 Signal line 307 Signal line 308 Signal line 309 Signal line 310 Signal line 311 Signal line 312 Signal line 313 Signal line 314 Signal line 315 Signal line 316 Signal line 201 Table 202 Request storage buffer 203 Request storage buffer 204 Request storage buffer 205 Request storage buffer 206 Select coefficient storage register 207 Select coefficient storage register 208 Select coefficient storage register 209 Select coefficient storage register 210 Select coefficient generation circuit 211 Select Coefficient generation circuit 212 Select coefficient generation circuit 213 Select coefficient generation circuit 214 Request holding Register 215 Request holding register 216 Request holding register 217 Request holding register 218 Select coefficient holding register 219 Select coefficient holding register 220 Select coefficient holding register 221 Select coefficient holding register 222 Select coefficient arbitration circuit 223 Select coefficient arbitration circuit 224 Select coefficient arbitration circuit 225 Select Coefficient Arbitration Circuit 226 Request Arbitration Circuit 227 Selector
Claims (10)
自己のノード内の複数のプロセッサから前記複数のノードのいずれかに属するプロセッサへの複数のリクエストを受け付け、当該複数のリクエストのそれぞれについて、リクエストの要求先のノードに応じた優先度を算出する優先度算出回路と、
前記算出された優先度に基づいて、前記受け付けた複数のリクエストのうち出力すべきリクエストを決定する決定回路と、
前記決定されたリクエストを選択して前記要求先のノードへ出力する選択回路と、
を備えるノードコントローラ。 Connected to multiple nodes,
Priority that receives a plurality of requests from a plurality of processors in its own node to a processor belonging to any of the plurality of nodes, and calculates a priority according to the request destination node for each of the plurality of requests. A degree calculation circuit;
A determination circuit for determining a request to be output among the plurality of received requests based on the calculated priority;
A selection circuit that selects the determined request and outputs the selected request to the requested node;
A node controller comprising:
前記優先度算出回路は、前記受け付けた複数のリクエストのそれぞれについて、リクエストの要求先のノードに対応付けられた前記ホップ数を前記記憶部から取得して、前記優先度を算出する
ことを特徴とする請求項2に記載のノードコントローラ。 A storage unit that stores the request destination node of the request in association with the hop count;
The priority calculation circuit, for each of the plurality of received requests, acquires the number of hops associated with a request destination node of the request from the storage unit, and calculates the priority. The node controller according to claim 2.
前記優先度算出回路は、前記複数のリクエストを受け付けた後に受け付けた後続リクエストについて前記優先度を算出し、
前記決定回路は、前記未決定リクエストの前記更新された優先度と、前記後続リクエストの前記算出された優先度とに基づいて、前記出力すべきリクエストを決定する
ことを特徴とする請求項1乃至3のいずれか1項に記載のノードコントローラ。 The determination circuit updates the priority higher based on a predetermined criterion for an undecided request that has not been determined as the request to be output among the plurality of received requests,
The priority calculation circuit calculates the priority for subsequent requests received after receiving the plurality of requests,
The determination circuit determines the request to be output based on the updated priority of the undecided request and the calculated priority of the subsequent request. 4. The node controller according to any one of 3 above.
前記優先度算出回路は、前記対象外とされた後続リクエストの前記優先度をより高く更新する
ことを特徴とする請求項4又は5に記載のノードコントローラ。 If the request source of the subsequent request and the request source of the undecided request are the same processor, the determination circuit excludes the subsequent request from the determination target,
The node controller according to claim 4, wherein the priority calculation circuit updates the priority of the subsequent request that is excluded from the target higher.
前記第1のリクエスト及び前記第2のリクエストの要求元に応じた第1の優先度と第2の優先度を算出し、
前記第1の優先度と前記第2の優先度に基づいて、前記第1のリクエスト及び前記第2のリクエストのいずれを出力すべきかを決定し、
前記決定されたリクエストを選択して前記要求先のノードへ出力する
ことを特徴とするリクエストの出力順序決定方法。 A first request from a first processor in a first node to a processor in a second node and a second request from a second processor in the first node to a processor in a third node; Accept requests at the same time,
Calculating a first priority and a second priority according to a request source of the first request and the second request;
Determining whether to output the first request or the second request based on the first priority and the second priority;
A request output order determination method comprising: selecting the determined requests and outputting the selected requests to the request destination node.
前記出力すべきリクエストとして前記第1のリクエストを決定する
ことを特徴とする請求項7に記載の出力順序決定方法。 If the number of hops, which is the number of nodes through which the first request passes to reach the second node, is greater than the number of nodes through which the second request passes to reach the third node; Calculating the first priority higher than the second priority;
The output order determination method according to claim 7, wherein the first request is determined as the request to be output.
複数のプロセッサと、
当該複数のプロセッサから前記複数のノードのいずれかに属するプロセッサへの複数のリクエストを受け付け、当該複数のリクエストのそれぞれについて、リクエストの要求先のノードに応じた優先度を算出する優先度算出手段と、
前記算出された優先度に基づいて、前記受け付けた複数のリクエストのうち出力すべきリクエストを決定する決定手段と、
前記決定されたリクエストを選択して前記要求先のノードへ出力する選択手段と、
を備えるノードコントローラとを有するノード
を含むノード間通信システム。 Connected to multiple nodes,
Multiple processors,
Priority calculating means for receiving a plurality of requests from the plurality of processors to a processor belonging to any of the plurality of nodes, and calculating a priority according to a request destination node for each of the plurality of requests; ,
Determining means for determining a request to be output among the plurality of received requests based on the calculated priority;
Selecting means for selecting the determined request and outputting it to the requested node;
An inter-node communication system including a node having a node controller.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2010240448A JP5645253B2 (en) | 2010-10-27 | 2010-10-27 | Node controller, request output order determination method, and inter-node communication system |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2010240448A JP5645253B2 (en) | 2010-10-27 | 2010-10-27 | Node controller, request output order determination method, and inter-node communication system |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2012093945A true JP2012093945A (en) | 2012-05-17 |
JP5645253B2 JP5645253B2 (en) | 2014-12-24 |
Family
ID=46387204
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2010240448A Expired - Fee Related JP5645253B2 (en) | 2010-10-27 | 2010-10-27 | Node controller, request output order determination method, and inter-node communication system |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP5645253B2 (en) |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20030174652A1 (en) * | 2002-03-18 | 2003-09-18 | Nec Corporation | Multi-hop network for transmission of packets whose size is determined by hop count number |
JP2004086304A (en) * | 2002-08-23 | 2004-03-18 | Nec Computertechno Ltd | Information processing system having matrix switch with arbitration circuit |
JP2009194510A (en) * | 2008-02-13 | 2009-08-27 | Nec Computertechno Ltd | Priority arbitration system and priority arbitration method |
-
2010
- 2010-10-27 JP JP2010240448A patent/JP5645253B2/en not_active Expired - Fee Related
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20030174652A1 (en) * | 2002-03-18 | 2003-09-18 | Nec Corporation | Multi-hop network for transmission of packets whose size is determined by hop count number |
JP2003273788A (en) * | 2002-03-18 | 2003-09-26 | Nec Corp | Transmission node, relay node and communication system in radio multi-hop network |
JP2004086304A (en) * | 2002-08-23 | 2004-03-18 | Nec Computertechno Ltd | Information processing system having matrix switch with arbitration circuit |
JP2009194510A (en) * | 2008-02-13 | 2009-08-27 | Nec Computertechno Ltd | Priority arbitration system and priority arbitration method |
Also Published As
Publication number | Publication date |
---|---|
JP5645253B2 (en) | 2014-12-24 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
KR101426461B1 (en) | Bus arbitration techniques to reduce access latency | |
US7551564B2 (en) | Flow control method and apparatus for single packet arrival on a bidirectional ring interconnect | |
JP5498505B2 (en) | Resolving contention between data bursts | |
EP2192496B1 (en) | Arbitration in multiprocessor device | |
US8228930B1 (en) | Interconnection network router arrangements and methods therefor | |
JP6481427B2 (en) | Arithmetic processing device, information processing device, and control method for information processing device | |
US11941528B2 (en) | Neural network training in a distributed system | |
JP2004318876A (en) | Method and system for managing distributed arbitration for multi-cycle data transfer request | |
CN116664377A (en) | Data transmission method and related device | |
JP7089530B2 (en) | Data processing | |
JP5650441B2 (en) | Arithmetic device, cache device, control method thereof, and computer program | |
US11449449B2 (en) | Data processing apparatus and operating method thereof | |
JP5645253B2 (en) | Node controller, request output order determination method, and inter-node communication system | |
US20180375801A1 (en) | Apparatus and method for distribution of congestion information in a switch | |
CN116150082A (en) | Access method, device, chip, electronic equipment and storage medium | |
CN115580572A (en) | Routing method, routing node, routing device and computer readable storage medium | |
US7782780B1 (en) | System and method for arbitration of multicast data packets using holds | |
US8289989B1 (en) | System and method for arbitration using availability signals | |
JP2013005145A (en) | Packet transfer device and packet transfer method | |
JP5949312B2 (en) | Parallel computer system, data transfer apparatus, and parallel computer system control method | |
US11093436B2 (en) | Arithmetic processing device, information processing apparatus, and control method of the arithmetic processing device | |
KR20220009848A (en) | Systems and methods for arbitrating access to a shared resource | |
JP2017535212A (en) | Method, device, and system for determining task distribution route | |
JP6350098B2 (en) | Arithmetic processing device, information processing device, and control method for information processing device | |
JP2019139406A (en) | Data processing apparatus |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20130906 |
|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20140521 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20140527 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20140723 |
|
A711 | Notification of change in applicant |
Free format text: JAPANESE INTERMEDIATE CODE: A712 Effective date: 20140807 |
|
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: 20141007 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20141030 |
|
R150 | Certificate of patent or registration of utility model |
Ref document number: 5645253 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R150 |
|
LAPS | Cancellation because of no payment of annual fees |