JP5757276B2 - Non-stop arithmetic processing device, non-stop arithmetic processing system, non-stop arithmetic processing method, and non-stop arithmetic processing program - Google Patents
Non-stop arithmetic processing device, non-stop arithmetic processing system, non-stop arithmetic processing method, and non-stop arithmetic processing program Download PDFInfo
- Publication number
- JP5757276B2 JP5757276B2 JP2012169031A JP2012169031A JP5757276B2 JP 5757276 B2 JP5757276 B2 JP 5757276B2 JP 2012169031 A JP2012169031 A JP 2012169031A JP 2012169031 A JP2012169031 A JP 2012169031A JP 5757276 B2 JP5757276 B2 JP 5757276B2
- Authority
- JP
- Japan
- Prior art keywords
- execution
- execution means
- calculation
- data
- unit
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
Images
Landscapes
- Hardware Redundancy (AREA)
Description
本願発明は、障害発生時に演算処理結果を修復して演算処理を継続実行させるための、無停止演算処理装置、無停止演算処理システム、無停止演算処理方法、及び、無停止演算処理プログラムに関する。 The present invention relates to a non-stop arithmetic processing device, a non-stop arithmetic processing system, a non-stop arithmetic processing method, and a non-stop arithmetic processing program for repairing arithmetic processing results and causing arithmetic processing to be continuously executed when a failure occurs.
高度情報化社会においては、システムダウンが社会にもたらす影響が非常に大きくなるため、システムの無停止運用に対する要求がますます高まってきている。システムを無停止運用させるためには、障害発生時に演算処理結果を修復して、速やかに処理を継続実行させることが必要となる。 In an advanced information society, the impact of a system down on society becomes so great that demand for non-stop operation of the system is increasing. In order to operate the system without stopping, it is necessary to restore the arithmetic processing result when a failure occurs and to continue the processing promptly.
このような障害発生時における処理の継続実行に関連する技術として、特許文献1には、
マルチノードで並列処理を行うシステムにおいて、あるノードで処理するデータの複製を分散して別のノードでも格納し、上述のあるノードで障害が発生した場合は、データの複製を分散格納した別のノードがバックアップ処理を行うようにしたシステムが公開されている。
As a technique related to continuous execution of processing when such a failure occurs,
In a multi-node parallel processing system, a copy of data processed at one node is distributed and stored at another node. If a failure occurs at one of the above nodes, another copy of the data is distributed and stored. A system that allows nodes to perform backup processing is publicly available.
また、特許文献2には、複数の計算機で並列処理を行うシステムにおいて、使用者から取得した分散データ配置ヒント情報に基づいて、データとその複製を各計算機に分散配置し、ある計算機で障害が発生した場合の別の計算機によるバックアップ処理を、計算機間で平準化させるようにしたシステムが公開されている。
Further, in
前述の特許文献1、及び、特許文献2のシステムは、多重障害が発生した場合の処理の継続実行に関しては言及していない。特に高度に並列化されたシステムにおいては、システムを構成する計算機やプロセッサ等の数が多くなるため、多重障害が発生する確率も高くなる。したがって、多重障害が発生した場合であっても、処理を継続実行させることが課題となる。
The systems disclosed in
本願発明の目的は、上述の課題を解決した無停止演算処理装置、無停止演算処理システム、無停止演算処理方法、及び、無停止演算処理プログラムを提供することである。 An object of the present invention is to provide a non-stop arithmetic processing device, a non-stop arithmetic processing system, a non-stop arithmetic processing method, and a non-stop arithmetic processing program that have solved the above-described problems.
本願発明の一実施形態の無停止演算処理装置は、何れかのグループに所属し、入力データを格納して前記入力データに対して演算処理を行う演算実行手段と、前記演算実行手段が入力した前記入力データを分割して複製した分割複製データを、当該演算実行手段と同じ前記グループに所属する、当該演算実行手段以外の前記演算実行手段に分配して、当該演算実行手段の識別情報と対応付けて記憶させる格納手段と、前記演算実行手段を診断して障害を検出する診断手段と、前記診断手段が検出した障害が、同じ前記グループに所属する複数の前記演算実行手段において発生した多重障害でない場合、当該演算実行手段の前記識別情報に対応付けられた前記分割複製データを記憶する前記演算実行手段に対して、前記分割複製データを用いた前記演算処理の実行を指示する指示手段と、前記分割複製データを用いた前記演算処理の実行結果をバックアップ実行結果としてまとめて、前記障害が検出された前記演算実行手段が出力した実行結果を、前記バックアップ実行結果に置き換えて出力する出力手段と、を備える。 The non-stop arithmetic processing device according to an embodiment of the present invention belongs to any group, stores the input data and performs arithmetic processing on the input data, and the arithmetic execution unit inputs divided replicated data copied by dividing the input data, belonging to the same said group with the computation execution means, and distributes to the arithmetic execution unit other than the operation executing means, corresponding to the identification information of the execution unit Storage means to be added and stored, diagnostic means for diagnosing the arithmetic execution means to detect a fault, and multiple faults in which the fault detected by the diagnostic means has occurred in a plurality of the arithmetic execution means belonging to the same group If not, with respect to the operation execution unit that stores the divided replicated data associated with the identification information of the execution unit, using the divided replica data And instruction means for instructing the execution of the serial processing, the divided replicated data collectively as a backup execution result the execution result of the arithmetic processing using the execution result of the failure has output said detected operation execution means, And output means for outputting in place of the backup execution result.
本願発明の一実施形態の無停止演算処理方法は、何れかのグループに所属し、入力データを格納して前記入力データに対して演算処理を行う複数の演算実行手段を備えるシステムにおける無停止演算処理方法であって、格納手段が、前記演算実行手段が入力した前記入力データを分割して複製した分割複製データを、当該演算実行手段と同じ前記グループに所属する、当該演算実行手段以外の前記演算実行手段に分配して、当該演算実行手段の識別情報と対応付けて記憶させ、診断手段が、前記演算実行手段を診断して障害を検出し、指示手段が、前記診断手段が検出した障害が同じ前記グループに所属する複数の前記演算実行手段において発生した多重障害でない場合、当該演算実行手段の前記識別情報に対応付けられた前記分割複製データを記憶する前記演算実行手段に対して、前記分割複製データを用いた前記演算処理の実行を指示し、出力手段が、前記分割複製データを用いた前記演算処理の実行結果をバックアップ実行結果としてまとめて、前記障害が検出された前記演算実行手段が出力した実行結果を、前記バックアップ実行結果に置き換えて出力する。 Non-stop processing method of an embodiment of the present invention, belong to one of the groups, non-stop operation in a system comprising a plurality of operation execution means for performing arithmetic processing on the input data to store the input data A processing method , wherein the storage means divides and duplicates the input data input by the calculation execution means, and the divided copy data belongs to the same group as the calculation execution means, and the other than the calculation execution means was partitioned execution unit, failure is stored in association with identification information of the execution unit, the diagnosis unit detects the fault to diagnose the operation execution means, indicating means, said diagnosis means detects the divided replica data but associated with the identification information of the plurality of cases the non-multiple failures occurring in the operation execution means, said execution means belonging to the same said group To the operation executing means for storing the divided replicated data instructing to execute the arithmetic processing using the output means, summary of the results of running the calculation process using the divided replicated data as backup execution result Then, the execution result output by the calculation execution means in which the failure is detected is replaced with the backup execution result and output.
本願発明の一実施形態の無停止演算処理プログラムは、何れかのグループに所属し、入力データを格納して前記入力データに対して演算処理を行う複数の演算実行手段を備えるシステムの全体を制御する手段が実行するプログラムであって、そのプログラムによって、前記演算実行手段が入力した前記入力データを分割して複製した分割複製データを、当該演算実行手段と同じ前記グループに所属する、当該演算実行手段以外の前記演算実行手段に分配して、当該演算実行手段の識別情報と対応付けて記憶させる格納処理と、前記演算実行手段を診断して障害を検出する診断処理と、前記診断処理が検出した障害が同じ前記グループに所属する複数の前記演算実行手段において発生した多重障害でない場合、当該演算実行手段の前記識別情報に対応付けられた前記分割複製データを記憶する前記演算実行手段に対して、前記分割複製データを用いた前記演算処理の実行を指示する指示処理と、前記分割複製データを用いた前記演算処理の実行結果をバックアップ実行結果としてまとめて、前記障害が検出された前記演算実行手段が出力した実行結果を、前記バックアップ実行結果に置き換えて出力する出力処理と、をコンピュータに実行させる。 A non-stop operation processing program according to an embodiment of the present invention controls an entire system that includes a plurality of operation execution means that belong to any group, store input data, and perform operation processing on the input data. a program means for runs, with the program, the division replicated data copied by dividing the input data which the operation execution unit is input, belonging to the same said group with the execution unit, the execution A storage process that is distributed to the calculation execution means other than the means and stored in association with the identification information of the calculation execution means; a diagnosis process that diagnoses the calculation execution means and detects a failure; and the diagnosis process detects when disorder is not a multiple failures occurring in a plurality of said operation execution means belonging to the same said group, the identification information of the execution unit To the operation executing means for storing the divided replicated data correlated, the instruction processing for instructing the execution of the calculation process using the divided replica data, the execution of the calculation process using the divided replica data The result is collected as a backup execution result, and the computer is caused to execute an output process for outputting the execution result output from the calculation execution means in which the failure is detected by replacing the execution result with the backup execution result.
本願発明は、システムにおいて多重障害が発生した場合でも、演算処理結果を修復して演算処理を継続実行させることができるようにする。 The present invention makes it possible to restore the arithmetic processing result and continue the arithmetic processing even when multiple failures occur in the system.
本願発明の第一の実施の形態について図面を参照して詳細に説明する。 A first embodiment of the present invention will be described in detail with reference to the drawings.
図1は本実施形態の無停止演算処理システムの構成を示すブロック図である。 FIG. 1 is a block diagram showing the configuration of the non-stop arithmetic processing system of this embodiment.
本実施形態の無停止演算処理システム3は、無停止演算処理装置1と、上位装置2とを包含している。無停止演算処理装置1は、指紋、掌紋、虹彩、顔などの生体情報のデータについて、ある探索データを、多数の登録照合データと照合する照合演算を実行する。
The non-stop arithmetic processing system 3 of this embodiment includes a non-stop
上位装置2は、無停止演算処理装置1に対して、まず、複数の登録照合データを出力し、次に探索データを1つずつ順次出力する。そして上位装置2は、各探索データについて、登録照合データとの照合を、無停止演算処理装置1に指示する。
The
無停止演算処理装置1は、全体制御部10と、n個の照合プロセッサ20−1乃至20−nとを包含している。照合プロセッサ20−1乃至20−nは、それぞれ照合プロセッサ番号として、1乃至nが付与されている。
The non-stop
照合プロセッサ20−1はマルチコアプロセッサであり、8個のコア201−1乃至208−1を包含している。コア201−1乃至208−1は、独立して登録照合データと探索データとの照合演算を行う最小構成単位であり、それぞれ、照合演算を実行する演算回路と、登録照合データ及び探索データを格納するメモリを包含している。コア201−1乃至208−1は、それぞれコア番号として、1乃至8が付与されている。
The verification processor 20-1 is a multi-core processor and includes eight cores 201-1 to 208-1. The cores 201-1 to 208-1 are minimum constituent units that independently perform a collation operation between registered collation data and search data, and store an arithmetic circuit that performs collation computation, registration collation data, and search data, respectively. Contains memory to do. The cores 201-1 to 208-1 are assigned
照合プロセッサ20−2乃至20−nの構成も、照合プロセッサ20−1と同じである。無停止演算処理装置1は、8個のコアを持つ照合プロセッサをn個包含するため、合計8n個のコアを包含している。したがって、無停止演算処理装置1は、最大8n個の照合演算を並列処理する。コア201−1乃至208−nは、照合結果を、出力部14へ送信する。
The configuration of the matching processors 20-2 to 20-n is the same as that of the matching processor 20-1. Since the non-stop
全体制御部10は、無停止演算処理装置1における照合演算の並列実行の制御を行い、格納部11と、診断部12と、指示部13と、出力部14とを包含している。
The
格納部11は、上位装置2から受信した複数の登録照合データを、8n個のコア201−1乃至208−nに均等に分配する。例えば、登録照合データが8n個である場合は、分配部11は、コア201−1乃至208−nの各々に対して、1個ずつ登録照合データを分配する。
The
格納部11は、さらに、各登録照合データをコピーしてm個(m=n−1)に分割した分割コピーデータを生成し、分割コピーデータの各々を、当該登録照合データを入力したコアとコア番号が等しく、かつ、所属する照合プロセッサが異なるm個のコアに送信する。
The
本実施形態における、各コアへの登録照合データの格納例を図4に示す。照合プロセッサ20−1におけるコア201−1は、登録照合データ#111乃至#11mを格納している。登録照合データ#111乃至#11mは全体で1つの登録照合データである。格納部11は、登録照合データ#111乃至#11mをコピーしてm個に分割し、登録照合データ#111のコピーデータである登録照合データコピー#111−Cを、コア201−1の識別情報である「コア1−1」の情報を付加して、照合プロセッサ20−2におけるコア番号1のコアであるコア201−2に送信して格納させる。格納部11は、同様に登録照合データ#11mのコピーデータである登録照合データコピー#11m−Cを、「コア1−1」の情報を付加して、照合プロセッサ20−nにおけるコア番号1のコアであるコア201−nに送信して格納させる。
FIG. 4 shows an example of storing registration verification data in each core in this embodiment. The core 201-1 in the verification processor 20-1 stores registration verification data # 111 to # 11m. The registration verification data # 111 to # 11m is a single registration verification data as a whole. The
格納部11は、各コアに分配して格納させた全ての各登録照合データについて、同様にコピーデータの送信、格納処理を行う。尚、本実施形態では、便宜上、m=n−1としているが、mの値はn−1に限定されるわけではない。例えば、mの値がn−1より小さい何れかの整数である場合、格納部11は、あるコアが格納した登録照合データのコピーデータを、当該コアとコア番号が等しく、かつ、所属する照合プロセッサが異なるコアの中の一部コアに送信して格納させる。
The
格納部11は、上位装置2から受信した1個の探索データを、コア201−1乃至208−nの全てに送信して格納させる。
The
診断部12は、コア201−1乃至208−nにおける、1つの探索データに関する登録照合データとの照合演算の終了を検知する度に、コア201−1乃至208−nに同一の診断プログラムを送信して、コア201−1乃至208−nに実行させる。診断部12は、診断プログラムの実行結果をコア201−1乃至208−nから受信すると、各々のコアが出力した実行結果を比較する。
The
コア201−1乃至208−nの全てについて、診断プログラムの実行結果が同じである場合、診断部12は、コア201−1乃至208−nに障害は無いと診断する。コア201−1乃至208−nにおける一部少数のコアについてのみ、他のコアと実行結果が異なる場合、診断部12は、当該一部少数のコアに障害が発生したと診断する。即ち、診断部12は、多数決論理にて、コア201−1乃至208−nの障害を診断する。診断部12は、障害が発生したコアの識別情報を含む診断結果を、指示部13と出力部14に送信する。
When the execution results of the diagnostic programs are the same for all of the cores 201-1 to 208-n, the
指示部13は、診断部12からの診断結果を受けて、障害発生コアとコア番号が等しく、かつ、所属する照合プロセッサが障害発生コアとは異なるコアに対して、障害発生コアの識別情報に対応する登録照合データのコピーデータを用いて、照合演算を再実行するように指示する。例えば、コア201−1で障害が発生した場合、指示部13は、照合プロセッサ20−2乃至20−nにおけるコア番号が1のコアであるコア201−2乃至201−nに対して、コア201−1の識別情報である「コア1−1」に対応付けられた登録照合データのコピーデータを用いて、探索データとの照合演算の再実行を指示する。このとき、コア201−2は、登録照合データコピー#111−Cを用いて照合演算を再実行し、コア201−nは、登録照合データコピー#11m−Cを用いて照合演算を再実行する。
Upon receiving the diagnosis result from the
出力部14は、診断部12からの診断結果を受けて、指示部13からの指示によりコア201−1乃至208−nにおける正常コアが障害発生コアの照合演算を再実行した結果を、バックアップ照合結果としてまとめる。出力部14は、コア201−1乃至208−nの障害発生コアから受信した照合結果を、バックアップ照合結果に置き換える。出力部14は、全てのコアの照合結果をまとめて、探索データの登録照合データとの照合結果として、上位装置2へ送信する
次に図2、及び、図3のフローチャートを参照して、本実施形態の動作について詳細に説明する。
The
図2は、無停止演算処理装置1における登録照合データの格納動作を示すフローチャートである。
FIG. 2 is a flowchart showing a registration collation data storing operation in the non-stop
格納部11は、上位装置2から、登録照合データを受信し、登録照合データをn x 8個に均等に分割して、照合プロセッサ1乃至nにおけるコア1乃至8に分配する(S101)。照合プロセッサ1乃至nにおけるコア1乃至8は、分配された登録照合データを、自コア内のメモリに格納する(S102)。i=1〜nでループ処理を実行する(S103)。j=1〜8でループ処理を実行する(S104)。
The
格納部11は、照合プロセッサiにおけるコアjに分配した登録照合データのコピーをn−1個に分割し、分割したそれぞれの登録照合データのコピーを、データ照合プロセッサiを除く照合プロセッサ1乃至nにおける、コアjに分配する(S105)。照合プロセッサiにおけるコアjは、分配された登録照合データのコピーを、自コア内のメモリに格納する(S106)。j<8の場合は、jに1を加算して処理はS104に戻り、j=8の場合は、処理はS108へ進む(S107)。i<nの場合は、iに1を加算して処理はS103に戻り、i=nの場合は、全体の処理は終了する(S108)。
The
図3は、無停止演算処理装置1における探索データの登録照合データとの照合実行動作を示すフローチャートである。
FIG. 3 is a flowchart showing the collation execution operation of the search data with the registered collation data in the non-stop
格納部11は、上位装置2から、探索データを受信し、照合プロセッサ1乃至nにおけるコア1乃至8の全てに送信する(S201)。照合プロセッサ1乃至nにおけるコア1乃至8は、受信した探索データを、自コア内のメモリに格納し、既に自コア内に格納されている登録照合データと照合して、照合結果を出力部14へ送信する(S202)。
The
診断部12は、照合プロセッサ1乃至nにおけるコア1乃至8に対して同一の診断プログラムを入力し、全てのコアの出力から、多数決論理にて全てのコアを診断し、診断結果を指示部13と出力部14へ送信する(S203)。
The
診断結果で障害コアが存在する場合(S204でYes)、処理はS205へ進み、診断結果で障害コアが存在しない場合(S204でNo)、処理はS211へ進む。診断結果で障害コアが複数存在する場合(S205でYes)、処理はS206へ進み、診断結果で障害コアが1個のみの場合(S205でNo)、処理はS207へ進む。診断結果で複数の同じコア番号のコアで障害している場合(S206でYes)、指示部13は、診断部12から受信した診断結果をもとに、修復不可能な多重障害の発生を上位装置2に報告し、無停止演算処理装置1の照合動作を停止させ(S210)、全体の処理は終了する。診断結果で障害の発生した複数のコアのコア番号が異なる場合(S206でNo)、処理はS207へ進む。
If there is a faulty core as a result of diagnosis (Yes in S204), the process proceeds to S205. If no faulty core exists as a result of the diagnosis (No in S204), the process proceeds to S211. If there are a plurality of failed cores as a result of the diagnosis (Yes in S205), the process proceeds to S206. If only one failed core is determined as a result of the diagnosis (No in S205), the process proceeds to S207. If a plurality of cores having the same core number are faulty as a result of the diagnosis (Yes in S206), the
指示部13は、診断部12から受信した診断結果をもとに、障害コアとコア番号が同じ正常コアに対して、障害コアの識別情報に対応付けられた登録照合データのコピーデータを用いて、再照合処理を行うように指示する(S207)。障害コアとコア番号が同じ正常コアは、指示部13から指示された再照合処理を実行し、再照合結果を出力部14へ送信する(S208)。
Based on the diagnosis result received from the
出力部14は、診断部12から受信した診断結果をもとに、障害コアからの照合結果を、障害コアとコア番号が同じ正常コアから受信した再照合結果をまとめたバックアップ照合結果に置き換える(S209)。出力部14は、全てのコアからの照合結果をまとめて、照合結果を上位装置2へ送信し(S211)、処理はS201へ戻る。
Based on the diagnosis result received from the
本実施形態には、第一の効果として、システムにおいて多重障害が発生した場合でも、照合演算処理結果を修復して照合演算処理を継続実行させることができる効果がある。その理由は、格納部11が、あるコアが記憶した登録照合データのコピーを、当該コアが搭載された照合プロセッサとは別の照合プロセッサ内の、当該コアとコア番号が等しいコアに記憶させておき、当該コアで障害が発生した場合、指示部13が、上述の登録照合データのコピーを記憶したコアに、障害発生コアが実行した照合演算を再実行させることで、照合演算処理結果を修復するからである。
In the present embodiment, as a first effect, there is an effect that the collation calculation processing result can be repaired and the collation calculation processing can be continuously executed even when multiple failures occur in the system. The reason is that the
本実施形態では、複数のマルチコアプロセッサ内において、コア番号が等しいコア同士でグループを形成し、同一のグループ内で演算処理結果の修復を行うため、異なるグループに所属するコアで多重障害が発生しても、システムを無停止運転させることが可能となる。本実施形態の例では、照合プロセッサ20−1乃至20−nは、それぞれ8個のコアを包含しているため、最大8個の障害に対する耐障害性を有していることになる。 In this embodiment, in a plurality of multi-core processors, a group is formed by cores having the same core number, and the arithmetic processing result is repaired in the same group. Therefore, multiple failures occur in cores belonging to different groups. However, the system can be operated without stopping. In the example of the present embodiment, each of the matching processors 20-1 to 20-n includes eight cores, and thus has fault tolerance against a maximum of eight faults.
本実施形態において、照合プロセッサ20−1乃至20−nのいずれかが丸ごとダウンするような重度障害が発生した場合でも、システムを無停止運転させることが可能である。その理由は、各照合プロセッサが搭載している個々のコアは、それぞれが全て異なるグループに所属するため、上述の演算処理結果の修復が可能であるからである。 In the present embodiment, the system can be operated without stopping even when a serious failure occurs such that any one of the verification processors 20-1 to 20-n goes down. This is because the individual cores mounted on each verification processor all belong to different groups, so that the above-described arithmetic processing result can be restored.
また、多重障害への対応のために、あるコアが記憶する登録照合データのコピーを、当該コア以外の全てのコアに記憶させるような方式では、大容量のメモリが必要となる。本実施形態には、コアのグループ化を行い、同じグループ内のコアにのみ登録照合データのコピーを記憶させることにより、多重障害への対応に必要なメモリ容量を削減できる効果もある。 Further, in order to cope with multiple failures, a method in which a copy of registration verification data stored in a certain core is stored in all cores other than the core requires a large capacity memory. The present embodiment also has an effect of reducing the memory capacity necessary for dealing with multiple failures by grouping cores and storing a copy of registration verification data only in cores in the same group.
さらに、本実施形態には、第二の効果として、即時検出が困難な障害であっても障害を速やかに検出し、照合演算処理を継続実行させることができる効果がある。その理由は、診断部12が、コア201−1乃至208−nにおける、1つの探索データに関する照合処理が完了する度に、コア201−1乃至208−nを多数決論理により診断するからである。
Furthermore, the second embodiment has an effect that a failure can be detected promptly and collation calculation processing can be continuously executed even if the failure is difficult to detect immediately. The reason is that the
例えば、データのパリティエラーのような即時検出可能な障害に対して、耐障害性を向上させたシステムは従来から存在する。しかしながら、パリティエラーにならないデータ化けのような障害が発生し、障害の検出までに時間を要した場合、障害検出後、システムを止めて障害処理を行わなければならない。本実施形態では、診断部12が、コア201−1乃至208−nに同じ診断プログラムを入力して多数決論理により診断することにより、通常は即時検出が困難な障害であっても速やかに障害を検出することが可能となる。
For example, there are systems that have improved fault tolerance against failures that can be detected immediately, such as data parity errors. However, if a failure such as data corruption that does not cause a parity error occurs, and it takes time to detect the failure, the failure must be handled after the failure is detected. In the present embodiment, the
尚、本実施形態では、コア201−1乃至208−nの診断方式として、多数決論理を使用しているが、多数決論理以外の方式で診断する場合もある。例えば、診断プログラムの実行結果に対する期待値を準備しておき、コア毎に、診断プログラム実行結果と期待値を比較する方式などがある。 In this embodiment, the majority logic is used as the diagnosis method of the cores 201-1 to 208-n, but there are cases where the diagnosis is performed by a method other than the majority logic. For example, there is a method of preparing an expected value for the execution result of the diagnostic program and comparing the execution result of the diagnostic program with the expected value for each core.
また、本実施形態では、診断部12が、コア201−1乃至208−nにおける、1つの探索データに関する照合処理が完了する度に、診断処理を実行しているが、診断処理の実行間隔をもう少し開けることで、照合処理のスピードを優先させる場合もある。
<第二の実施形態>
次に、本願発明の第二の実施形態について図面を参照して詳細に説明する。
In the present embodiment, the
<Second Embodiment>
Next, a second embodiment of the present invention will be described in detail with reference to the drawings.
図5は本願発明の第二の実施形態の無停止演算処理システムの構成を示すブロック図である。本実施形態の無停止演算処理システム3は無停止演算処理装置1を包含している。
FIG. 5 is a block diagram showing a configuration of a non-stop arithmetic processing system according to the second embodiment of the present invention. The non-stop arithmetic processing system 3 of this embodiment includes a non-stop
無停止演算処理装置1は、演算実行部301−1乃至304−kと、格納部11と、診断部12と、指示部13と、出力部14とを包含している。
The non-stop
演算実行部301−1乃至304−kは、4個のグループ30−1乃至30−4に分けられ、演算実行部301−1乃至301−kはグループ30−1に所属し、演算実行部304−1乃至301−kはグループ30−4に所属する。すなわち、グループ30−1乃至30−4は、それぞれk個の演算実行部を包含している。
The operation execution units 301-1 to 304-k are divided into four groups 30-1 to 30-4. The operation execution units 301-1 to 301-k belong to the group 30-1, and the
演算実行部301−1乃至304−kは、上位装置から指示された演算を並列処理する。演算の内容は、第一の実施形態のような照合演算の場合もあれば、一般的な配列演算等の場合もある。演算実行部301−1乃至304−kは、演算を行う構成単位であり、それぞれが、第一の実施形態のようなコアの場合もあれば、プロセッサやサーバ等の場合もある。 The arithmetic execution units 301-1 to 304-k perform parallel processing on arithmetic operations instructed by the host device. The content of the calculation may be a collation operation as in the first embodiment or a general array operation. The computation execution units 301-1 to 304-k are structural units that perform computation, and each may be a core as in the first embodiment, or may be a processor, a server, or the like.
格納部11は、演算実行部301−1乃至304−kのそれぞれが入力した入力データを複製した複製データを、当該演算実行部と同じグループに所属する、当該演算実行部以外の演算実行部に、当該演算実行部の識別情報と対応付けて記憶させる。
The
診断部12は、演算実行部301−1乃至304−kを診断して障害を検出する。診断方式としては、第一の実施形態のような多数決論理を使用する場合もあれば、診断プログラムの実行結果を期待値と比較する場合もある。
The
指示部13は、診断部12が、いずれかの演算実行部301−1乃至304−kの障害を検出した場合、当該演算実行部の識別情報に対応付けられた複製データを記憶する、当該演算実行部と同じグループ内の演算実行部に対して、複製データを用いた演算処理の実行を指示する。
The
出力部14は、障害が検出された演算実行部が出力した実行結果を、上述の複製データを用いた演算処理の実行結果に置き換えて出力する。
The
本実施形態には、第一の実施形態と同様に、システムにおいて多重障害が発生した場合でも、演算処理結果を修復して演算処理を継続実行させることができる効果がある。その理由は、格納部11が、ある演算実行部が記憶した入力データのコピーを、当該演算実行部と同じグループに所属する演算実行部に記憶させておき、当該演算実行部で障害が発生した場合、指示部13が、上述の入力データのコピーを記憶した演算実行部に、障害が発生した演算実行部が実行した演算を再実行させることで、演算処理結果を修復するからである。
As in the first embodiment, the present embodiment has an effect that the arithmetic processing result can be restored and the arithmetic processing can be continuously executed even when a multiple failure occurs in the system. The reason is that the
本実施形態では、同一のグループ内で演算処理結果の修復を行うため、異なるグループに所属する演算実行部で多重障害が発生しても、無停止運転させることが可能となる。本実施形態の例では、無停止演算処理装置1が4つのグループ30−1乃至30−4を包含しているため、最大4個の障害に対する耐障害性を有していることになる。
In the present embodiment, since the arithmetic processing result is repaired in the same group, it is possible to perform non-stop operation even when multiple faults occur in arithmetic execution units belonging to different groups. In the example of the present embodiment, the non-stop
以上、実施形態を参照して本願発明を説明したが、本願発明は上記実施形態に限定されたものではない。本願発明の構成や詳細には、本願発明のスコープ内で当業者が理解し得る様々な変更をすることができる。 While the present invention has been described with reference to the embodiments, the present invention is not limited to the above embodiments. Various changes that can be understood by those skilled in the art can be made to the configuration and details of the present invention within the scope of the present invention.
1 無停止演算処理装置
2 上位装置
3 無停止演算処理システム
10 全体制御部
11 格納部
12 診断部
13 指示部
14 出力部
20−1乃至20−n 照合プロセッサ
201−1乃至208−n コア
30−1乃至30−4 グループ
301−1乃至304−k 演算実行部
DESCRIPTION OF
Claims (7)
前記演算実行手段が入力した前記入力データを分割して複製した分割複製データを、当該演算実行手段と同じ前記グループに所属する、当該演算実行手段以外の前記演算実行手段に分配して、当該演算実行手段の識別情報と対応付けて記憶させる格納手段と、
前記演算実行手段を診断して障害を検出する診断手段と、
前記診断手段が検出した障害が、同じ前記グループに所属する複数の前記演算実行手段において発生した多重障害でない場合、当該演算実行手段の前記識別情報に対応付けられた前記分割複製データを記憶する前記演算実行手段に対して、前記分割複製データを用いた前記演算処理の実行を指示する指示手段と、
前記分割複製データを用いた前記演算処理の実行結果をバックアップ実行結果としてまとめて、前記障害が検出された前記演算実行手段が出力した実行結果を、前記バックアップ実行結果に置き換えて出力する出力手段と、
を備える無停止演算処理装置。 An arithmetic execution means belonging to any group, storing input data and performing arithmetic processing on the input data;
Dividing and replicating the duplicated input data input by the calculation execution means is distributed to the calculation execution means other than the calculation execution means belonging to the same group as the calculation execution means, and the calculation Storage means for storing in association with identification information of the execution means;
Diagnosing means for diagnosing the arithmetic execution means and detecting a failure;
When the failure detected by the diagnosis unit is not a multiple failure that occurred in a plurality of the calculation execution units belonging to the same group, the divided duplicate data associated with the identification information of the calculation execution unit is stored. Instruction means for instructing execution of the arithmetic processing using the divided replica data to the arithmetic execution means;
An output unit that summarizes the execution results of the arithmetic processing using the divided replica data as a backup execution result, replaces the execution result output by the arithmetic execution unit in which the failure is detected with the backup execution result, and outputs the backup execution result; ,
A non-stop arithmetic processing apparatus.
請求項1に記載の無停止演算処理装置。 The non-stop operation processing device according to claim 1, wherein the diagnosis unit sequentially diagnoses the calculation execution unit every time the calculation execution unit finishes execution of the calculation processing on one piece of input data.
請求項1又は2に記載の無停止演算処理装置。 The diagnostic means causes all the arithmetic execution means to input the same diagnostic program, the execution results of the diagnostic programs for a large number of the arithmetic execution means match, and the diagnostic program for a small number of the arithmetic execution means 3. The non-stop operation processing device according to claim 1, wherein when the execution result is different from the execution result of the diagnostic program for the large number of the operation execution means, a failure of the small number of the operation execution means is detected.
前記演算実行手段は、前記マルチコアプロセッサにおける1つの前記コアプロセッサを包含し、包含する前記コアプロセッサの前記コア番号が等しい場合に、同じ前記グループに所属する
請求項1乃至3の何れか一項に記載の無停止演算処理装置。 In a system including a plurality of multi-core processors including the same number of core processors and defining a core number in hardware for the core processors,
The execution unit may include one of the core processors in the multi-core processor, when the core number of including the core processor are equal to any one of claims 1 to 3 belonging to the same said group Non-stop operation processing device described.
格納手段が、前記演算実行手段が入力した前記入力データを分割して複製した分割複製データを、当該演算実行手段と同じ前記グループに所属する、当該演算実行手段以外の前記演算実行手段に分配して、当該演算実行手段の識別情報と対応付けて記憶させ、
診断手段が、前記演算実行手段を診断して障害を検出し、
指示手段が、前記診断手段が検出した障害が同じ前記グループに所属する複数の前記演算実行手段において発生した多重障害でない場合、当該演算実行手段の前記識別情報に対応付けられた前記分割複製データを記憶する前記演算実行手段に対して、前記分割複製データを用いた前記演算処理の実行を指示し、
出力手段が、前記分割複製データを用いた前記演算処理の実行結果をバックアップ実行結果としてまとめて、前記障害が検出された前記演算実行手段が出力した実行結果を、前記バックアップ実行結果に置き換えて出力する
無停止演算処理方法。 A non-stop operation processing method in a system comprising a plurality of operation execution means belonging to any group, storing input data and performing operation processing on the input data,
The storage means distributes the divided duplicated data obtained by dividing the input data input by the calculation execution means to the calculation execution means other than the calculation execution means belonging to the same group as the calculation execution means. And stored in association with the identification information of the calculation execution means,
A diagnosis unit diagnoses the calculation execution unit to detect a failure;
When the instruction means detects that the failure detected by the diagnosis means is not a multiple failure occurring in a plurality of the operation execution means belonging to the same group, the divided duplicate data associated with the identification information of the operation execution means is Instructing the operation execution means to store the execution of the operation processing using the divided replication data,
The output means summarizes the execution results of the arithmetic processing using the divided duplicate data as backup execution results, and outputs the execution results output by the arithmetic execution means in which the failure has been detected replaced with the backup execution results. Yes Non-stop calculation processing method.
前記演算実行手段が入力した前記入力データを分割して複製した分割複製データを、当該演算実行手段と同じ前記グループに所属する、当該演算実行手段以外の前記演算実行手段に分配して、当該演算実行手段の識別情報と対応付けて記憶させる格納処理と、
前記演算実行手段を診断して障害を検出する診断処理と、
前記診断処理が検出した障害が同じ前記グループに所属する複数の前記演算実行手段において発生した多重障害でない場合、当該演算実行手段の前記識別情報に対応付けられた前記分割複製データを記憶する前記演算実行手段に対して、前記分割複製データを用いた前記演算処理の実行を指示する指示処理と、
前記分割複製データを用いた前記演算処理の実行結果をバックアップ実行結果としてまとめて、前記障害が検出された前記演算実行手段が出力した実行結果を、前記バックアップ実行結果に置き換えて出力する出力処理と、
をコンピュータに実行させる無停止演算処理プログラム。 A program that belongs to any group and that is executed by a unit that controls the entire system including a plurality of calculation execution units that store input data and perform calculation processing on the input data.
Dividing and replicating the duplicated input data input by the calculation execution means is distributed to the calculation execution means other than the calculation execution means belonging to the same group as the calculation execution means, and the calculation A storage process for storing the information associated with the identification information of the execution means;
A diagnostic process for diagnosing the arithmetic execution means and detecting a failure;
If the failure detected by the diagnostic process is not a multiple failure that occurred in a plurality of the operation execution means belonging to the same group, the operation stores the divided duplicate data associated with the identification information of the operation execution means Instruction processing for instructing execution means to execute the arithmetic processing using the divided duplicate data;
An output process for collecting the execution results of the arithmetic processing using the divided replica data as backup execution results, replacing the execution results output by the arithmetic execution means in which the failure is detected with the backup execution results, and outputting the backup execution results; ,
Non-stop operation processing program for causing a computer to execute.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2012169031A JP5757276B2 (en) | 2012-07-31 | 2012-07-31 | Non-stop arithmetic processing device, non-stop arithmetic processing system, non-stop arithmetic processing method, and non-stop arithmetic processing program |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2012169031A JP5757276B2 (en) | 2012-07-31 | 2012-07-31 | Non-stop arithmetic processing device, non-stop arithmetic processing system, non-stop arithmetic processing method, and non-stop arithmetic processing program |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2014029567A JP2014029567A (en) | 2014-02-13 |
JP5757276B2 true JP5757276B2 (en) | 2015-07-29 |
Family
ID=50202103
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2012169031A Active JP5757276B2 (en) | 2012-07-31 | 2012-07-31 | Non-stop arithmetic processing device, non-stop arithmetic processing system, non-stop arithmetic processing method, and non-stop arithmetic processing program |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP5757276B2 (en) |
Family Cites Families (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH04120633A (en) * | 1990-09-12 | 1992-04-21 | Toshiba Corp | Fault diagnostic device for processor |
JP2853654B2 (en) * | 1996-04-17 | 1999-02-03 | 日本電気株式会社 | Alternative processing method in tightly coupled multiprocessor system |
EP0854423A1 (en) * | 1997-01-20 | 1998-07-22 | TELEFONAKTIEBOLAGET L M ERICSSON (publ) | Data partitioning and duplication in a distributed data processing system |
JP3293125B2 (en) * | 1998-07-24 | 2002-06-17 | 日本電気株式会社 | Initial setting and diagnosis method for on-chip multiprocessor system |
JP4789021B2 (en) * | 2009-02-06 | 2011-10-05 | 日本電気株式会社 | Data processing apparatus and data processing method |
JP5492028B2 (en) * | 2010-08-31 | 2014-05-14 | 株式会社日立ビルシステム | Data center system |
JP5637791B2 (en) * | 2010-09-30 | 2014-12-10 | 株式会社日立製作所 | Computer system and data processing method thereof |
-
2012
- 2012-07-31 JP JP2012169031A patent/JP5757276B2/en active Active
Also Published As
Publication number | Publication date |
---|---|
JP2014029567A (en) | 2014-02-13 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US11556438B2 (en) | Proactive cluster compute node migration at next checkpoint of cluster upon predicted node failure | |
Siewiorek | Fault tolerance in commercial computers | |
US8671311B2 (en) | Multiprocessor switch with selective pairing | |
JP2500038B2 (en) | Multiprocessor computer system, fault tolerant processing method and data processing system | |
JP5785477B2 (en) | Method, computer program and system for detecting errors in mirrored data storage systems | |
US10114356B2 (en) | Method and apparatus for controlling a physical unit in an automation system | |
US11675654B2 (en) | Systems and methods for error recovery | |
CN107506261A (en) | Adapt to the cascade fault-tolerance processing method of CPU, GPU isomeric group | |
JP2003015900A (en) | Follow-up type multiplex system and data processing method capable of improving reliability by follow-up | |
US8451019B2 (en) | Method of detecting failure and monitoring apparatus | |
Tang et al. | An efficient in-memory checkpoint method and its practice on fault-tolerant HPL | |
JP5757276B2 (en) | Non-stop arithmetic processing device, non-stop arithmetic processing system, non-stop arithmetic processing method, and non-stop arithmetic processing program | |
US5280606A (en) | Fault recovery processing for supercomputer | |
Agullo et al. | Hard faults and soft-errors: possible numerical remedies in linear algebra solvers | |
Chen et al. | Fault-Tolerance Implementation in Typical Distributed Stream Processing Systems. | |
US20160266985A1 (en) | Method, information processing apparatus, and computer readable medium | |
Yoon et al. | Time-redundant recovery policy of TMR failures using rollback and roll-forward methods | |
Imai et al. | Pair and swap: An approach to graceful degradation for dependable chip multiprocessors | |
JP2015106226A (en) | Dual system | |
JP5734107B2 (en) | Process failure determination and recovery device, process failure determination and recovery method, process failure determination and recovery program, and recording medium | |
Singh et al. | Enhancing Performance andFault Tolerance of Hadoop cluster | |
JP4061549B2 (en) | Network computer system | |
Zhezhera et al. | Development of a functionally sustainable system of orientation of a free battle flighting unit | |
JP6819061B2 (en) | Information processing equipment, process switching method and program | |
Mary et al. | A Deep Insight Into Fault Tolerance In Cloud Computing |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20131114 |
|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20140919 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20140930 |
|
A521 | Written amendment |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20141111 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20150310 |
|
A521 | Written amendment |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20150408 |
|
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: 20150507 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20150520 |
|
R150 | Certificate of patent or registration of utility model |
Ref document number: 5757276 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R150 |