JP2011170755A - Device, method and program for processing memory failure - Google Patents
Device, method and program for processing memory failure Download PDFInfo
- Publication number
- JP2011170755A JP2011170755A JP2010035991A JP2010035991A JP2011170755A JP 2011170755 A JP2011170755 A JP 2011170755A JP 2010035991 A JP2010035991 A JP 2010035991A JP 2010035991 A JP2010035991 A JP 2010035991A JP 2011170755 A JP2011170755 A JP 2011170755A
- Authority
- JP
- Japan
- Prior art keywords
- memory
- node controller
- data
- failure
- write request
- 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
Images
Landscapes
- Techniques For Improving Reliability Of Storages (AREA)
Abstract
Description
本発明はメモリDIMM(Dual Inline Memory Module)のマルチビットエラーやメモリコントローラ障害が発生した場合でもシステムの運用を継続することに関する。 The present invention relates to continuing system operation even when a multi-bit error or a memory controller failure occurs in a memory DIMM (Dual Inline Memory Module).
近年では障害が発生しても動作が停止することなく、保守介入が可能なシステムが求められている。メモリに関しても同様の要求があり、その対策の1つがメモリRAIDによる冗長化である。 In recent years, there has been a demand for a system that can perform maintenance intervention without stopping operation even if a failure occurs. There is a similar request for the memory, and one of the countermeasures is redundancy by the memory RAID.
このような、メモリRAIDの冗長化に関する技術が例えば特許文献1に記載されている。特許文献1に記載の技術では、以下のような構成を提案している。
For example,
特許文献1に記載のメモリシステムにおいては、第1のデータ・メモリは、第1のメモリ・コントローラに、第2のデータ・メモリは、第2のメモリ・コントローラに、パリティ・メモリは、パリティ・コントローラに結合され、パリティ・コントローラは、第1および第2のメモリ・コントローラに直接結合される。パリティ・データ制御ロジックは、第1および第2のデータ・メモリ内のデータと関連付けられたパリティ情報を記憶して取り出し、パリティ・データ制御ロジックは、第1のデータ・メモリ内のデータと関連付けられたパリティ・データを、前記第2のデータ・メモリ内のデータと関連付けられたパリティ・データと、パリティ・メモリ内でインタリーブする。そして、上述のような構成をとることによりメモリ・コントローラ・レベルのRAIDに必要とされるシステムの複雑化を防ぐことが可能となる。
In the memory system described in
マルチビットエラーなどのメモリDIMMの障害やメモリコントローラの障害が発生した場合、当該DIMMやメモリコントローラは自配下のデータが保証できなくなるためシステムの停止などを引き起こしていた。これを回避するために例えば特許文献1に記載の技術のようにメモリの二重化やメモリRAIDが行われている。しかし、二重化やデータのストライピング及びパリティ生成・チェックを集中管理しているため、パリティ生成部やデータ復号部に負荷が集中し、性能の低下が発生していた。また、複数のストライピングデータを1つのRAIDメモリコントローラが制御しているため、当該コントローラで障害が発生した場合にシステムダウンが回避できなかった。例えば特許文献1に記載の技術では、メモリへの書き込みに関してはパリティデータ制御ロジック460が、メモリからの読み出しデータのパリティチェック及びデータ復号化は各Dコントローラ内のパリティ制御ロジックが行っている。また、各Dコントローラ内のメモリ制御ロジックが一括して配下のメモリへのアクセスを行っている。(図6参照。なお図6は特許文献1の図4に相当する図面である。)
つまり、一般的なメモリRAIDはRAIDアーキテクチャが集中管理されており、システムの性能がRAIDコントローラの性能に左右されていた。また、当該RAIDコントローラ部で障害が発生した場合にシステムの停止を引き起こすことが懸念されていた。
When a memory DIMM failure such as a multi-bit error or a memory controller failure occurs, the DIMM or memory controller cannot guarantee data under its control, causing a system stop or the like. In order to avoid this, memory duplication and memory RAID are performed as in the technique described in
That is, a general memory RAID has a centralized RAID architecture, and the system performance depends on the performance of the RAID controller. In addition, there is a concern that the system may be stopped when a failure occurs in the RAID controller unit.
そこで、本発明は、RAIDコントローラ部で障害が発生した場合にシステムの停止を引き起こすことがないメモリ障害処理装置、メモリ障害処理方法及びメモリ障害処理プログラムを提供することを目的とする。 Therefore, an object of the present invention is to provide a memory failure processing apparatus, a memory failure processing method, and a memory failure processing program that do not cause a system stop when a failure occurs in a RAID controller unit.
本発明の第1の観点によれば、演算処理装置と、前記演算処理装置に接続されたノードコントローラと、前記ノードコントローラに接続された複数のメモリコントローラと、前記複数のメモリコントローラのそれぞれの配下にあるメモリDIMM(Dual Inline Memory Module)と、を備えたメモリ障害処理装置であって、前記ノードコントローラが、前記演算処理装置からメモリ書き込み要求を受けつけた場合には、自身に接続されている前記複数のメモリコントローラのそれぞれと、自身に接続されている他のメモリ障害処理装置のノードコントローラと、に当該メモリ書き込み要求を転送し、前記ノードコントローラが、自身に接続されている他のメモリ障害処理装置のノードコントローラからメモリ書き込み要求を転送された場合には、自身に接続されている前記複数のメモリコントローラのそれぞれに当該メモリ書き込み要求を転送し、前記複数のメモリコントローラのそれぞれは、前記メモリ書き込み要求が転送されてきた場合であって、当該書き込み要求が自配下のメモリDIMMへのものである場合に当該書き込み要求に従ってデータの格納をすることを特徴とするメモリ障害処理装置が提供される。 According to a first aspect of the present invention, an arithmetic processing unit, a node controller connected to the arithmetic processing unit, a plurality of memory controllers connected to the node controller, and subordinates of the plurality of memory controllers A memory fault processing device comprising a memory DIMM (Dual Inline Memory Module) in the memory controller, wherein when the node controller receives a memory write request from the arithmetic processing device, the memory fault processing device is connected to the memory fault processing device. The memory controller transfers the memory write request to each of the plurality of memory controllers and the node controller of another memory failure processing apparatus connected to the memory controller, and the node controller is connected to the other memory failure processing. When a memory write request is transferred from the device node controller, The memory write request is transferred to each of the plurality of connected memory controllers, and each of the plurality of memory controllers is a case where the memory write request is transferred, and the write request is under its control. A memory failure processing apparatus is provided that stores data in accordance with a write request when the data is in a memory DIMM.
本発明の第2の観点によれば、複数のメモリ障害装置を有するメモリ障害処理システムにおいて、前記複数のメモリ障害装置が上記のメモリ障害装置であることを特徴とするメモリ障害処理システムが提供される。 According to a second aspect of the present invention, there is provided a memory fault processing system having a plurality of memory fault devices, wherein the plurality of memory fault devices are the memory fault devices described above. The
本発明の第3の観点によれば、演算処理装置と、前記演算処理装置に接続されたノードコントローラと、前記ノードコントローラに接続された複数のメモリコントローラと、前記複数のメモリコントローラのそれぞれの配下にあるメモリDIMM(Dual Inline Memory Module)と、を備えたメモリ障害処理装置が行うメモリ障害処理方法であって、前記ノードコントローラが、前記演算処理装置からメモリ書き込み要求を受けつけた場合には、自身に接続されている前記複数のメモリコントローラのそれぞれと、自身に接続されている他のメモリ障害処理装置のノードコントローラと、に当該メモリ書き込み要求を転送し、前記ノードコントローラが、自身に接続されている他のメモリ障害処理装置のノードコントローラからメモリ書き込み要求を転送された場合には、自身に接続されている前記複数のメモリコントローラのそれぞれに当該メモリ書き込み要求を転送し、前記複数のメモリコントローラのそれぞれは、前記メモリ書き込み要求が転送されてきた場合であって、当該書き込み要求が自配下のメモリDIMMへのものである場合に当該書き込み要求に従ってデータの格納をすることを特徴とするメモリ障害処理方法が提供される。 According to a third aspect of the present invention, an arithmetic processing unit, a node controller connected to the arithmetic processing unit, a plurality of memory controllers connected to the node controller, and a subordinate of each of the plurality of memory controllers A memory failure processing method performed by a memory failure processing device including a memory DIMM (Dual Inline Memory Module) in the memory controller, when the node controller receives a memory write request from the arithmetic processing device, The memory write request is transferred to each of the plurality of memory controllers connected to the node controller and to the node controller of the other memory failure processing apparatus connected to itself, and the node controller is connected to itself. The memory write request is transferred from the node controller of the other memory fault processor. If it is sent, the memory write request is transferred to each of the plurality of memory controllers connected to itself, and each of the plurality of memory controllers is a case where the memory write request is transferred. Thus, there is provided a memory failure processing method that stores data according to the write request when the write request is for a memory DIMM under its control.
本発明の第4の観点によれば、演算処理装置と、前記演算処理装置に接続されたノードコントローラと、前記ノードコントローラに接続された複数のメモリコントローラと、前記複数のメモリコントローラのそれぞれの配下にあるメモリDIMM(Dual Inline Memory Module)と、を備えたメモリ障害処理装置であって、前記ノードコントローラが、前記演算処理装置からメモリ書き込み要求を受けつけた場合には、自身に接続されている前記複数のメモリコントローラのそれぞれと、自身に接続されている他のメモリ障害処理装置のノードコントローラと、に当該メモリ書き込み要求を転送し、前記ノードコントローラが、自身に接続されている他のメモリ障害処理装置のノードコントローラからメモリ書き込み要求を転送された場合には、自身に接続されている前記複数のメモリコントローラのそれぞれに当該メモリ書き込み要求を転送し、前記複数のメモリコントローラのそれぞれは、前記メモリ書き込み要求が転送されてきた場合であって、当該書き込み要求が自配下のメモリDIMMへのものである場合に当該書き込み要求に従ってデータの格納をするメモリ障害処理装置としてコンピュータを機能させることを特徴とするメモリ障害処理プログラムが提供される。 According to a fourth aspect of the present invention, an arithmetic processing unit, a node controller connected to the arithmetic processing unit, a plurality of memory controllers connected to the node controller, and a subordinate of each of the plurality of memory controllers A memory fault processing device comprising a memory DIMM (Dual Inline Memory Module) in the memory controller, wherein when the node controller receives a memory write request from the arithmetic processing device, the memory fault processing device is connected to the memory fault processing device. The memory controller transfers the memory write request to each of the plurality of memory controllers and the node controller of another memory failure processing apparatus connected to the memory controller, and the node controller is connected to the other memory failure processing. When a memory write request is transferred from the device node controller, The memory write request is transferred to each of the plurality of connected memory controllers, and each of the plurality of memory controllers is a case where the memory write request is transferred, and the write request is under its control. A memory failure processing program is provided that causes a computer to function as a memory failure processing device that stores data in accordance with the write request when the data is in a memory DIMM.
本発明によれば、RAID機能の分散化によりRAID構築処理が分散・平準化されることから、RAID機能を持つメモリコントローラの1つが障害により停止或いはデータの不整合が発生しても、データの再構築が可能となる。 According to the present invention, since the RAID construction process is distributed and leveled by the distribution of the RAID function, even if one of the memory controllers having the RAID function is stopped due to a failure or data inconsistency occurs, Reconstruction is possible.
まず、本発明の実施形態の概略を説明する。本発明の実施形態は、概略、以下のようなものである。 First, an outline of an embodiment of the present invention will be described. An embodiment of the present invention is roughly as follows.
CPUからのメモリへのデータ書き込み時は、メモリアクセスをノードコントローラで一旦受けた後、全てのメモリコントローラへとトランザクションを転送する。トランザクションを受け取った各メモリコントローラは共通するRAIDアーキテクチャを持ち、アドレスから自配下のメモリへのアクセスであるかを判断し、自配下のメモリに対するアクセスである場合は、該当するストライピングデータの書き込みを行う。 When data is written from the CPU to the memory, the memory access is once received by the node controller, and then the transaction is transferred to all the memory controllers. Each memory controller that receives the transaction has a common RAID architecture, determines whether it is an access to the memory under its own control from the address, and writes the corresponding striping data if it is an access to the memory under its own control. .
CPUからメモリへのデータ読み出し時は、書き込み時と同様にメモリアクセスをノードコントローラで一旦受けた後、全てのメモリコントローラへとトランザクションを転送する。各メモリコントローラはアドレスから自配下のメモリへのアクセスであるかを判断し、自配下のメモリに対するアクセスである場合は、該当するストライピングデータを返却する。ノードコントローラは各メモリコントローラと同等のRAIDアーキテクチャを持ち、各メモリコントローラから返却されたデータを取りまとめてCPUへとデータを返却する。メモリDIMMの訂正不可能なエラーやメモリコントローラの障害が発生した場合には、ノードコントローラがデータを訂正してCPUへとデータを転送する。 When data is read from the CPU to the memory, memory access is once received by the node controller as in the case of writing, and then the transaction is transferred to all the memory controllers. Each memory controller determines whether it is an access to its own subordinate memory from the address, and if it is an access to its own subordinate memory, returns the corresponding striping data. The node controller has a RAID architecture equivalent to each memory controller, collects data returned from each memory controller, and returns the data to the CPU. When an uncorrectable error in the memory DIMM or a failure of the memory controller occurs, the node controller corrects the data and transfers the data to the CPU.
次に、本発明の実施形態について図面を用いて詳細に説明する。 Next, embodiments of the present invention will be described in detail with reference to the drawings.
図1を参照すると、図1には本実施形態である複数のCELLからなるシステムが示されている。本システムは第1のCELL100、第2のCELL200、第3のCELL300及び第4のCELL400を有する。なお今回は説明の便宜上CELLの数を4つとしているが、これは本実施形態のCELLの数を限定するものではない。4つ以外の個数のCELLで本システムを実現するようにしてもよい。
Referring to FIG. 1, FIG. 1 shows a system comprising a plurality of CELLs according to this embodiment. The system includes a
第1のCELL100は、CPU111〜114、ノードコントローラ121及びメモリコントローラ131、132を有している。また、同様に第2のCELL200は、CPU211〜214、ノードコントローラ221及びメモリコントローラ231、232を有している。また、第3のCELL300は、CPU311〜314、ノードコントローラ321及びメモリコントローラ331、332を有している。また、第4のCELL400は、CPU411〜414、ノードコントローラ421及びメモリコントローラ431、432を有している。また、各CELLに実装されている各メモリコントローラにはメモリDIMMが接続されている。なお、各CELLのそれぞれは、本願発明の「メモリ障害処理装置」に相当する。また、複数のCELLを組み合わせたシステムは、本願発明の「メモリ障害処理システム」に相当する。
The
次に、上述した各部の機能について説明する。 Next, the function of each unit described above will be described.
CPU111〜114、CPU211〜214、CPU311〜314及びCPU411〜414は演算処理装置である。これら各CPUは各CELLのノードコントローラを経由して、メモリに対してのアクセス要求を行う。アクセス要求には書き込み及び読み込みの2つがある。
The
ノードコントローラ121、ノードコントローラ221、ノードコントローラ321及びノードコントローラ421は、各CPU唐のアクセス要求を受け取り他のノードコントローラに転送する。また、各メモリコントローラから返却されたストライピングデータやパリティは読み出し要求を行ったCPU配下のノードコントローラへと集められ、当該ノードコントローラによりデータの組み立てを行う。メモリコントローラやメモリDIMMの障害によりデータの一部が欠落した場合は、当該ノードコントローラによりデータの再構築を行ない、要求元のCPUへとデータを返却する。
The
メモリコントローラ131、132、231、232、331、332、431及び432は、書き込み要求があった場合に、アドレスより自配下のメモリDIMMへのアクセスであるか判断すると同時に、共通したRAIDアーキテクチャにより自配下のメモリDIMMが担当するストライピングデータ或いはパリティのみを保存する。また、読み込み要求があった場合に、各メモリコントローラは自配下のメモリDIMMへのアクセスであるかを判断すると同時に、共通したRAIDアーキテクチャにより自配下のメモリDIMMから担当するストライピングデータ或いはパリティを読み出し、上位のノードコントローラへと転送する。
When there is a write request, the
次に、データのやり取りを模式的に表す図である図2と、動作を表すフローチャートである図3を用いてCPUからメモリへの書き込みアクセスが発生した場合の動作について説明する。今回は、具体例としてCPU212からメモリへの書き込みアクセスが発生した場合について説明するが、これは本実施形態の動作を限定するものではない。本実施形態では何れのCPUからもメモリへの書き込みアクセスが可能である。
Next, an operation when a write access from the CPU to the memory occurs will be described with reference to FIG. 2 which is a diagram schematically showing exchange of data and FIG. 3 which is a flowchart showing the operation. This time, as a specific example, a case where a write access to the memory from the
まず、各々にCPU、ノードコントローラ及びメモリコントローラを有する第1のCELL100、第2のCELL200、第3のCELL300及び第4のCELL400から構成されるシステムにおいて、第2のCELL200上のCPU212からメモリへの書き込みアクセスが発生する(ステップS11)。
First, in a system composed of a
上記の書き込みアクセスが発生した場合、CPU212からの書き込み要求をノードコントローラ221で受け取った後、各CELLのノードコントローラ121、321、421へとそのまま転送する(ステップS12)。
When the above write access occurs, the
次に、各ノードコントローラは配下のメモリコントローラへと当該アクセスをそのまま転送する(ステップS13)。 Next, each node controller transfers the access as it is to the subordinate memory controller (step S13).
続いて、各メモリコントローラは予め設定された情報を元に自配下のメモリDIMMへのアクセスであるか否かを判断し、自配下のメモリアクセスである場合は、予め設定された情報を元にデータを分割してストライピングデータ或いはパリティを生成し、メモリDIMMに該当するデータ或いはパリティを格納する(ステップS14)。今回の例では、CPU212から発行されたメモリコントローラ131、132、231、232及び331の5つのメモリコントローラが処理対象となるアドレスへのメモリ書き込み要求がなされたものとする。この場合は、これらの5つのメモリコントローラのみによって処理され、各コントローラ配下のメモリDIMMにストライピングデータと場合によってはパリティを格納する。この時、データのどの部分或いはパリティを格納するかは、アドレス及び設定されたオフセットから判定される。
Subsequently, each memory controller determines whether or not it is an access to its own subordinate memory DIMM based on preset information, and if it is a subordinate memory access, based on the preset information The data is divided to generate striping data or parity, and the data or parity corresponding to the memory DIMM is stored (step S14). In this example, it is assumed that the
次に、データのやり取りを模式的に表す図である図4と、動作を表すフローチャートである図5を用いてCPUからメモリへの読み出しアクセスが発生した場合の動作について説明する。上述の書き込みアクセスと同様、本実施形態では何れのCPUからもメモリへの読み込みアクセスが可能である。 Next, an operation when a read access from the CPU to the memory occurs will be described with reference to FIG. 4 which is a diagram schematically showing exchange of data and FIG. 5 which is a flowchart showing the operation. Similar to the write access described above, in this embodiment, any CPU can read access to the memory.
第4のCELL400上のCPU413からメモリへの読み出しアクセスが発生する(ステップS21)。
A read access to the memory from the
上記の読み込みアクセスが発生した場合、CPU413からの読み出し要求をノードコントローラ421で受け取った後、各CELLのノードコントローラ121、221、321へとそのまま転送する(ステップS22)。
When the above read access occurs, the
次に、各ノードコントローラは配下のメモリコントローラへと当該アクセスをそのまま転送する(ステップS23)。 Next, each node controller transfers the access as it is to the subordinate memory controller (step S23).
続いて、各メモリコントローラは予め設定された情報を元に自配下のメモリDIMMへのアクセスであるか否かを判断し、自配下のメモリアクセスである場合は、メモリDIMMへのデータの読み出しを行う(ステップS24)。 Subsequently, each memory controller determines whether it is an access to its own memory DIMM based on preset information. If it is a memory access under its own, it reads out data to the memory DIMM. It performs (step S24).
メモリDIMMより読み出されたデータは下位アドレス或いはパリティフラグを付加してノードコントローラへと返却される(ステップS25においてYes)。 The data read from the memory DIMM is returned to the node controller with the lower address or parity flag added (Yes in step S25).
各ノードコントローラで受け取ったデータは発行元のCPU413配下のノードコントローラ421へと集められ、当該ノードコントローラでデータの組み立てを行い、要求元のCPU413へと返却される(ステップS26)。
The data received by each node controller is collected to the
この際、障害によりデータが返却できない場合は(ステップS25においてNo)、メモリコントローラからエラーフラグを付加して返却する。これを受け取ったノードコントローラ421は残りのストライピングデータ及びパリティからデータを再構築し、要求元のCPU413へと返却する(ステップS27)。
At this time, if data cannot be returned due to a failure (No in step S25), an error flag is added from the memory controller and returned. Receiving this, the
以上説明した本発明の実施形態は、以下に示すような効果を奏する。 The embodiment of the present invention described above has the following effects.
第1の効果は集中管理方式に比べてデータのストライピングやパリティの生成のための時間を短くできることである。 The first effect is that the time required for data striping and parity generation can be shortened as compared with the centralized management method.
その理由は、RAID機能の分散化によりRAID構築処理が分散・平準化されるからである。 This is because the RAID construction process is distributed and leveled by the distribution of the RAID function.
第2の効果はRAID機能を持つメモリコントローラの1つが障害により停止或いはデータの不整合が発生しても、データの再構築が可能となることである。 The second effect is that data can be reconstructed even if one of the memory controllers having a RAID function is stopped due to a failure or data inconsistency occurs.
その理由は、ストライピングデータ及びパリティ生成部とデータの再構築部を分離するからである。 The reason is that the striping data / parity generation unit and the data reconstruction unit are separated.
なお、本発明の実施形態であるメモリ障害処理装置は、ハードウェアにより実現することもできるが、コンピュータをそのメモリ障害処理装置として機能させるためのプログラムをコンピュータがコンピュータ読み取り可能な記録媒体から読み込んで実行することによっても実現することができる。 The memory failure processing apparatus according to the embodiment of the present invention can be realized by hardware, but the computer reads a program for causing the computer to function as the memory failure processing apparatus from a computer-readable recording medium. It can also be realized by executing.
また、本発明の実施形態によるメモリ障害処理方法は、ハードウェアにより実現することもできるが、コンピュータにその方法を実行させるためのプログラムをコンピュータがコンピュータ読み取り可能な記録媒体から読み込んで実行することによっても実現することができる。 In addition, the memory failure processing method according to the embodiment of the present invention can be realized by hardware, but the computer reads a program for causing the computer to execute the method from a computer-readable recording medium and executes the program. Can also be realized.
また、上述した実施形態は、本発明の好適な実施形態ではあるが、上記実施形態のみに本発明の範囲を限定するものではなく、本発明の要旨を逸脱しない範囲において種々の変更を施した形態での実施が可能である。 Moreover, although the above-described embodiment is a preferred embodiment of the present invention, the scope of the present invention is not limited only to the above-described embodiment, and various modifications are made without departing from the gist of the present invention. Implementation in the form is possible.
上記の実施形態の一部又は全部は、以下の付記のようにも記載されうるが、以下には限られない。 A part or all of the above-described embodiment can be described as in the following supplementary notes, but is not limited thereto.
(付記1) 演算処理装置と、前記演算処理装置に接続されたノードコントローラと、前記ノードコントローラに接続された複数のメモリコントローラと、前記複数のメモリコントローラのそれぞれの配下にあるメモリDIMM(Dual Inline Memory Module)と、を備えたメモリ障害処理装置であって、
前記ノードコントローラが、前記演算処理装置からメモリ書き込み要求を受けつけた場合には、自身に接続されている前記複数のメモリコントローラのそれぞれと、自身に接続されている他のメモリ障害処理装置のノードコントローラと、に当該メモリ書き込み要求を転送し、
前記ノードコントローラが、自身に接続されている他のメモリ障害処理装置のノードコントローラからメモリ書き込み要求を転送された場合には、自身に接続されている前記複数のメモリコントローラのそれぞれに当該メモリ書き込み要求を転送し、
前記複数のメモリコントローラのそれぞれは、前記メモリ書き込み要求が転送されてきた場合であって、当該書き込み要求が自配下のメモリDIMMへのものである場合に当該書き込み要求に従ってデータの格納をするメモリ障害処理装置としてコンピュータを機能させることを特徴とするメモリ障害処理プログラム。
(Supplementary Note 1) An arithmetic processing unit, a node controller connected to the arithmetic processing unit, a plurality of memory controllers connected to the node controller, and a memory DIMM (Dual Inline) under each of the plurality of memory controllers A memory fault processing apparatus comprising:
When the node controller receives a memory write request from the arithmetic processing unit, each of the plurality of memory controllers connected to itself and a node controller of another memory fault processing unit connected to the node controller And transfer the memory write request to
When the node controller receives a memory write request from a node controller of another memory failure processing apparatus connected to itself, the memory write request is sent to each of the plurality of memory controllers connected to the node controller. Forward and
Each of the plurality of memory controllers has a memory failure in which data is stored in accordance with the write request when the memory write request is transferred and the write request is for a memory DIMM under its control. A memory failure processing program for causing a computer to function as a processing device.
(付記2) 付記1に記載のメモリ障害処理プログラムであって、
前記ノードコントローラが、前記演算処理装置からメモリ読み込み要求を受けつけた場合には、自身に接続されている前記複数のメモリコントローラのそれぞれと、自身に接続されている他のメモリ障害処理装置のノードコントローラと、に当該メモリ読み込み要求を転送し、
前記ノードコントローラが、自身に接続されている他のメモリ障害処理装置のノードコントローラからメモリ読み込み要求を転送された場合には、自身に接続されている前記複数のメモリコントローラのそれぞれに当該メモリ読み込み要求を転送し、
前記複数のメモリコントローラのそれぞれは、前記メモリ読み込み要求が転送されてきた場合であって、当該読み込み要求が自配下のメモリDIMMへのものである場合に当該
読み込み要求に従ってデータの読み込みを試み、当該データの読み込みが成功した場合は前記ノードコントローラに読み込んだデータを返却し、当該データの読み込みが失敗した場合は前記ノードコントローラに失敗をした旨を返却することを特徴とするメモリ障害処理プログラム。
(付記3) 付記2に記載のメモリ障害処理プログラムであって、
前記ノードコントローラは、自身に接続されている他のメモリ障害処理装置のノードコントローラからメモリ読み込み要求を転送された場合には、自配下の前記メモリDIMMから返却された前記読み込んだデータ若しくは前記失敗をした旨を、自身に接続されている他のメモリ障害処理装置のノードコントローラに転送し、
前記ノードコントローラは、自身が前記演算処理装置からメモリ読み込み要求を受けつけた場合には、自身に接続されている他のメモリ障害処理装置のノードコントローラから転送されてきた前記読み込んだデータ若しくは前記失敗をした旨、及び、自配下の前記メモリDIMMから返却された前記読み込んだデータ若しくは前記失敗をした旨、を用いてデータを組み立て又は再構築し、当該組み立て又は再構築したデータを前記メモリ読み込み要求した前記演算処理装置に返却することを特徴とするメモリ障害処理プログラム。
(付記4) 付記1乃至3の何れか1項に記載のメモリ障害処理プログラムであって、
前記データの格納は、予め設定された情報を元にデータを分割してストライピングデータ或いはパリティを生成し、当該生成したストライピングデータ或いはパリティを格納することにより行われることを特徴とするメモリ障害処理プログラム。
(Supplementary note 2) The memory fault processing program according to
When the node controller receives a memory read request from the arithmetic processing unit, each of the plurality of memory controllers connected to itself and a node controller of another memory fault processing unit connected to the node controller And the memory read request is transferred to
When the node controller receives a memory read request from a node controller of another memory failure processing apparatus connected to the node controller, the memory read request is sent to each of the plurality of memory controllers connected to the node controller. Forward and
Each of the plurality of memory controllers attempts to read data in accordance with the read request when the memory read request has been transferred and the read request is for a memory DIMM under its control. A memory failure processing program that returns data read to the node controller when data reading is successful, and returns failure to the node controller when data reading fails.
(Supplementary note 3) The memory fault processing program according to
When the node controller receives a memory read request from a node controller of another memory failure processing apparatus connected to the node controller, the node controller returns the read data or the failure returned from the memory DIMM under its control. To the node controller of the other memory fault processing device connected to itself,
When the node controller receives a memory read request from the arithmetic processing unit, the node controller displays the read data or the failure transferred from the node controller of another memory fault processing unit connected to the node controller. The data is assembled or reconstructed using the read data returned from the memory DIMM under its control or the failure, and the memory read request is made for the assembled or reconstructed data. A memory failure processing program which is returned to the arithmetic processing unit.
(Supplementary note 4) The memory fault processing program according to any one of
The memory is stored by dividing the data based on preset information to generate striping data or parity, and storing the generated striping data or parity. .
100 第1のCELL
111、112、113、114、211、212、213、214、311、312、313、314、411、412、413、414 CPU
121、221、321、421 ノードコントローラ
131、132、231、232、331、332、431、432 メモリコントローラ
200 第2のCELL
300 第3のCELL
400 第4のCELL
100 first CELL
111, 112, 113, 114, 211, 212, 213, 214, 311, 312, 313, 314, 411, 412, 413, 414 CPU
121,221,321,421 Node controller 131,132,231,232,331,332,431,432
300 3rd CELL
400 4th CELL
Claims (10)
前記ノードコントローラが、前記演算処理装置からメモリ書き込み要求を受けつけた場合には、自身に接続されている前記複数のメモリコントローラのそれぞれと、自身に接続されている他のメモリ障害処理装置のノードコントローラと、に当該メモリ書き込み要求を転送し、
前記ノードコントローラが、自身に接続されている他のメモリ障害処理装置のノードコントローラからメモリ書き込み要求を転送された場合には、自身に接続されている前記複数のメモリコントローラのそれぞれに当該メモリ書き込み要求を転送し、
前記複数のメモリコントローラのそれぞれは、前記メモリ書き込み要求が転送されてきた場合であって、当該書き込み要求が自配下のメモリDIMMへのものである場合に当該書き込み要求に従ってデータの格納をすることを特徴とするメモリ障害処理装置。 An arithmetic processing unit, a node controller connected to the arithmetic processing unit, a plurality of memory controllers connected to the node controller, and a memory DIMM (Dual Inline Memory Module) under each of the plurality of memory controllers; A memory failure processing apparatus comprising:
When the node controller receives a memory write request from the arithmetic processing unit, each of the plurality of memory controllers connected to itself and a node controller of another memory fault processing unit connected to the node controller And transfer the memory write request to
When the node controller receives a memory write request from a node controller of another memory failure processing apparatus connected to itself, the memory write request is sent to each of the plurality of memory controllers connected to the node controller. Forward and
Each of the plurality of memory controllers stores data according to the write request when the memory write request has been transferred and the write request is for a memory DIMM under its control. A memory failure processing apparatus.
前記ノードコントローラが、前記演算処理装置からメモリ読み込み要求を受けつけた場合には、自身に接続されている前記複数のメモリコントローラのそれぞれと、自身に接続されている他のメモリ障害処理装置のノードコントローラと、に当該メモリ読み込み要求を転送し、
前記ノードコントローラが、自身に接続されている他のメモリ障害処理装置のノードコントローラからメモリ読み込み要求を転送された場合には、自身に接続されている前記複数のメモリコントローラのそれぞれに当該メモリ読み込み要求を転送し、
前記複数のメモリコントローラのそれぞれは、前記メモリ読み込み要求が転送されてきた場合であって、当該読み込み要求が自配下のメモリDIMMへのものである場合に当該
読み込み要求に従ってデータの読み込みを試み、当該データの読み込みが成功した場合は前記ノードコントローラに読み込んだデータを返却し、当該データの読み込みが失敗した場合は前記ノードコントローラに失敗をした旨を返却することを特徴とするメモリ障害処理装置。 The memory failure processing apparatus according to claim 1,
When the node controller receives a memory read request from the arithmetic processing unit, each of the plurality of memory controllers connected to itself and a node controller of another memory fault processing unit connected to the node controller And the memory read request is transferred to
When the node controller receives a memory read request from a node controller of another memory failure processing apparatus connected to the node controller, the memory read request is sent to each of the plurality of memory controllers connected to the node controller. Forward and
Each of the plurality of memory controllers attempts to read data in accordance with the read request when the memory read request has been transferred and the read request is for a memory DIMM under its control. A memory failure processing apparatus, wherein when the data reading is successful, the read data is returned to the node controller, and when the data reading fails, a failure notification is returned to the node controller.
前記ノードコントローラは、自身に接続されている他のメモリ障害処理装置のノードコントローラからメモリ読み込み要求を転送された場合には、自配下の前記メモリDIMMから返却された前記読み込んだデータ若しくは前記失敗をした旨を、自身に接続されている他のメモリ障害処理装置のノードコントローラに転送し、
前記ノードコントローラは、自身が前記演算処理装置からメモリ読み込み要求を受けつけた場合には、自身に接続されている他のメモリ障害処理装置のノードコントローラから転送されてきた前記読み込んだデータ若しくは前記失敗をした旨、及び、自配下の前記メモリDIMMから返却された前記読み込んだデータ若しくは前記失敗をした旨、を用いてデータを組み立て又は再構築し、当該組み立て又は再構築したデータを前記メモリ読み込み要求した前記演算処理装置に返却することを特徴とするメモリ障害処理装置。 The memory failure processing apparatus according to claim 2,
When the node controller receives a memory read request from a node controller of another memory failure processing apparatus connected to the node controller, the node controller returns the read data or the failure returned from the memory DIMM under its control. To the node controller of the other memory fault processing device connected to itself,
When the node controller receives a memory read request from the arithmetic processing unit, the node controller displays the read data or the failure transferred from the node controller of another memory fault processing unit connected to the node controller. The data is assembled or reconstructed using the read data returned from the memory DIMM under its control or the failure, and the memory read request is made for the assembled or reconstructed data. A memory failure processing device, which is returned to the arithmetic processing device.
前記データの格納は、予め設定された情報を元にデータを分割してストライピングデータ或いはパリティを生成し、当該生成したストライピングデータ或いはパリティを格納することにより行われることを特徴とするメモリ障害処理装置。 The memory failure processing apparatus according to any one of claims 1 to 3,
The memory is stored by dividing the data based on preset information to generate striping data or parity, and storing the generated striping data or parity. .
前記ノードコントローラが、前記演算処理装置からメモリ書き込み要求を受けつけた場合には、自身に接続されている前記複数のメモリコントローラのそれぞれと、自身に接続されている他のメモリ障害処理装置のノードコントローラと、に当該メモリ書き込み要求を転送し、
前記ノードコントローラが、自身に接続されている他のメモリ障害処理装置のノードコントローラからメモリ書き込み要求を転送された場合には、自身に接続されている前記複数のメモリコントローラのそれぞれに当該メモリ書き込み要求を転送し、
前記複数のメモリコントローラのそれぞれは、前記メモリ書き込み要求が転送されてきた場合であって、当該書き込み要求が自配下のメモリDIMMへのものである場合に当該書き込み要求に従ってデータの格納をすることを特徴とするメモリ障害処理方法。 An arithmetic processing unit, a node controller connected to the arithmetic processing unit, a plurality of memory controllers connected to the node controller, and a memory DIMM (Dual Inline Memory Module) under each of the plurality of memory controllers; A memory fault processing method performed by a memory fault processing apparatus comprising:
When the node controller receives a memory write request from the arithmetic processing unit, each of the plurality of memory controllers connected to itself and a node controller of another memory fault processing unit connected to the node controller And transfer the memory write request to
When the node controller receives a memory write request from a node controller of another memory failure processing apparatus connected to itself, the memory write request is sent to each of the plurality of memory controllers connected to the node controller. Forward and
Each of the plurality of memory controllers stores data according to the write request when the memory write request has been transferred and the write request is for a memory DIMM under its control. A memory failure processing method characterized by the above.
前記ノードコントローラが、前記演算処理装置からメモリ読み込み要求を受けつけた場合には、自身に接続されている前記複数のメモリコントローラのそれぞれと、自身に接続されている他のメモリ障害処理装置のノードコントローラと、に当該メモリ読み込み要求を転送し、
前記ノードコントローラが、自身に接続されている他のメモリ障害処理装置のノードコントローラからメモリ読み込み要求を転送された場合には、自身に接続されている前記複数のメモリコントローラのそれぞれに当該メモリ読み込み要求を転送し、
前記複数のメモリコントローラのそれぞれは、前記メモリ読み込み要求が転送されてきた場合であって、当該読み込み要求が自配下のメモリDIMMへのものである場合に当該
読み込み要求に従ってデータの読み込みを試み、当該データの読み込みが成功した場合は前記ノードコントローラに読み込んだデータを返却し、当該データの読み込みが失敗した場合は前記ノードコントローラに失敗をした旨を返却することを特徴とするメモリ障害処理方法。 The memory failure processing method according to claim 6,
When the node controller receives a memory read request from the arithmetic processing unit, each of the plurality of memory controllers connected to itself and a node controller of another memory fault processing unit connected to the node controller And the memory read request is transferred to
When the node controller receives a memory read request from a node controller of another memory failure processing apparatus connected to the node controller, the memory read request is sent to each of the plurality of memory controllers connected to the node controller. Forward and
Each of the plurality of memory controllers attempts to read data in accordance with the read request when the memory read request has been transferred and the read request is for a memory DIMM under its control. A memory failure processing method comprising: returning data read to the node controller when data reading is successful; and returning failure to the node controller when data reading fails.
前記ノードコントローラは、自身に接続されている他のメモリ障害処理装置のノードコントローラからメモリ読み込み要求を転送された場合には、自配下の前記メモリDIMMから返却された前記読み込んだデータ若しくは前記失敗をした旨を、自身に接続されている他のメモリ障害処理装置のノードコントローラに転送し、
前記ノードコントローラは、自身が前記演算処理装置からメモリ読み込み要求を受けつけた場合には、自身に接続されている他のメモリ障害処理装置のノードコントローラから転送されてきた前記読み込んだデータ若しくは前記失敗をした旨、及び、自配下の前記メモリDIMMから返却された前記読み込んだデータ若しくは前記失敗をした旨、を用いてデータを組み立て又は再構築し、当該組み立て又は再構築したデータを前記メモリ読み込み要求した前記演算処理装置に返却することを特徴とするメモリ障害処理方法。 The memory failure processing method according to claim 7,
When the node controller receives a memory read request from a node controller of another memory failure processing apparatus connected to the node controller, the node controller returns the read data or the failure returned from the memory DIMM under its control. To the node controller of the other memory fault processing device connected to itself,
When the node controller receives a memory read request from the arithmetic processing unit, the node controller displays the read data or the failure transferred from the node controller of another memory fault processing unit connected to the node controller. The data is assembled or reconstructed using the read data returned from the memory DIMM under its control or the failure, and the memory read request is made for the assembled or reconstructed data. A memory failure processing method comprising returning to the arithmetic processing unit.
前記データの格納は、予め設定された情報を元にデータを分割してストライピングデータ或いはパリティを生成し、当該生成したストライピングデータ或いはパリティを格納することにより行われることを特徴とするメモリ障害処理方法。 The memory failure processing method according to any one of claims 6 to 8,
The data storage is performed by dividing the data based on preset information to generate striping data or parity, and storing the generated striping data or parity. .
前記ノードコントローラが、前記演算処理装置からメモリ書き込み要求を受けつけた場合には、自身に接続されている前記複数のメモリコントローラのそれぞれと、自身に接続されている他のメモリ障害処理装置のノードコントローラと、に当該メモリ書き込み要求を転送し、
前記ノードコントローラが、自身に接続されている他のメモリ障害処理装置のノードコントローラからメモリ書き込み要求を転送された場合には、自身に接続されている前記複数のメモリコントローラのそれぞれに当該メモリ書き込み要求を転送し、
前記複数のメモリコントローラのそれぞれは、前記メモリ書き込み要求が転送されてきた場合であって、当該書き込み要求が自配下のメモリDIMMへのものである場合に当該書き込み要求に従ってデータの格納をするメモリ障害処理装置としてコンピュータを機能させることを特徴とするメモリ障害処理プログラム。 An arithmetic processing unit, a node controller connected to the arithmetic processing unit, a plurality of memory controllers connected to the node controller, and a memory DIMM (Dual Inline Memory Module) under each of the plurality of memory controllers; A memory failure processing apparatus comprising:
When the node controller receives a memory write request from the arithmetic processing unit, each of the plurality of memory controllers connected to itself and a node controller of another memory fault processing unit connected to the node controller And transfer the memory write request to
When the node controller receives a memory write request from a node controller of another memory failure processing apparatus connected to itself, the memory write request is sent to each of the plurality of memory controllers connected to the node controller. Forward and
Each of the plurality of memory controllers has a memory failure in which data is stored in accordance with the write request when the memory write request is transferred and the write request is for a memory DIMM under its control. A memory failure processing program for causing a computer to function as a processing device.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2010035991A JP5464347B2 (en) | 2010-02-22 | 2010-02-22 | Memory failure processing apparatus, memory failure processing method, and memory failure processing program |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2010035991A JP5464347B2 (en) | 2010-02-22 | 2010-02-22 | Memory failure processing apparatus, memory failure processing method, and memory failure processing program |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2011170755A true JP2011170755A (en) | 2011-09-01 |
JP5464347B2 JP5464347B2 (en) | 2014-04-09 |
Family
ID=44684789
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2010035991A Expired - Fee Related JP5464347B2 (en) | 2010-02-22 | 2010-02-22 | Memory failure processing apparatus, memory failure processing method, and memory failure processing program |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP5464347B2 (en) |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2000076207A (en) * | 1998-08-28 | 2000-03-14 | Nippon Telegr & Teleph Corp <Ntt> | Distributedly storing method, distributed storage system and record medium recording distributed storage program |
JP2005108224A (en) * | 2003-09-29 | 2005-04-21 | Hewlett-Packard Development Co Lp | Improved raid memory system |
JP2007052805A (en) * | 2001-08-09 | 2007-03-01 | Emc Corp | Memory system and method for using same |
-
2010
- 2010-02-22 JP JP2010035991A patent/JP5464347B2/en not_active Expired - Fee Related
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2000076207A (en) * | 1998-08-28 | 2000-03-14 | Nippon Telegr & Teleph Corp <Ntt> | Distributedly storing method, distributed storage system and record medium recording distributed storage program |
JP2007052805A (en) * | 2001-08-09 | 2007-03-01 | Emc Corp | Memory system and method for using same |
JP2005108224A (en) * | 2003-09-29 | 2005-04-21 | Hewlett-Packard Development Co Lp | Improved raid memory system |
Also Published As
Publication number | Publication date |
---|---|
JP5464347B2 (en) | 2014-04-09 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US10191676B2 (en) | Scalable storage protection | |
US10452498B2 (en) | Fault tolerance for persistent main memory | |
JP6202756B2 (en) | Assisted coherent shared memory | |
JP5404804B2 (en) | Storage subsystem | |
US20100079885A1 (en) | System and method for providing performance-enhanced rebuild of a solid-state drive (SSD) in a solid-state drive hard disk drive (SSD HDD) redundant array of inexpensive disks 1 (RAID 1) pair | |
US20090327803A1 (en) | Storage control device and storage control method | |
US20160378344A1 (en) | Processor and platform assisted nvdimm solution using standard dram and consolidated storage | |
US20120324156A1 (en) | Method and system of organizing a heterogeneous memory architecture | |
JP2016530637A (en) | RAID parity stripe reconstruction | |
CN112912851B (en) | System and method for addressing, and media controller | |
TW201237622A (en) | Semiconductor storage device and method of controlling the same | |
JP2013125513A (en) | Nonvolatile semiconductor memory device and management method therefor | |
US11520659B2 (en) | Refresh-hiding memory system staggered refresh | |
JP2010205261A (en) | Parameter copying method and parameter copying device | |
US8996935B2 (en) | Memory operation of paired memory devices | |
JP2008217395A (en) | Disk array device | |
JP5464347B2 (en) | Memory failure processing apparatus, memory failure processing method, and memory failure processing program | |
JP5213061B2 (en) | Mirroring control device, mirroring control circuit, mirroring control method and program thereof | |
JP4843695B2 (en) | Disk array control device and disk array device | |
JP5773446B2 (en) | Storage device, redundancy recovery method, and program | |
WO2016122602A1 (en) | Systems and methods for sharing non-volatile memory between multiple access models | |
KR20210093821A (en) | Storage Device Based on RAID | |
NL2029789A (en) | Adaptive error correction to improve for system memory reliability, availability, and serviceability (ras) | |
US8848470B2 (en) | Memory operation upon failure of one of two paired memory devices | |
JP2019159416A (en) | Data management device, file system, data management method, and program |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20130115 |
|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20131015 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20131021 |
|
A521 | Written amendment |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20131209 |
|
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: 20131225 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20140107 |
|
R150 | Certificate of patent or registration of utility model |
Ref document number: 5464347 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R150 Free format text: JAPANESE INTERMEDIATE CODE: R150 |
|
LAPS | Cancellation because of no payment of annual fees |