JP2009230673A - Computer, computer system, distributed processing method, and program - Google Patents
Computer, computer system, distributed processing method, and program Download PDFInfo
- Publication number
- JP2009230673A JP2009230673A JP2008078178A JP2008078178A JP2009230673A JP 2009230673 A JP2009230673 A JP 2009230673A JP 2008078178 A JP2008078178 A JP 2008078178A JP 2008078178 A JP2008078178 A JP 2008078178A JP 2009230673 A JP2009230673 A JP 2009230673A
- Authority
- JP
- Japan
- Prior art keywords
- computer
- grid
- memory
- software
- kernel
- 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.)
- Withdrawn
Links
- 238000003672 processing method Methods 0.000 title claims description 11
- 238000012545 processing Methods 0.000 claims abstract description 34
- 230000015654 memory Effects 0.000 claims description 73
- 230000006870 function Effects 0.000 claims description 40
- 238000000034 method Methods 0.000 claims description 16
- 238000004590 computer program Methods 0.000 claims description 2
- 230000004044 response Effects 0.000 claims 4
- 238000010586 diagram Methods 0.000 description 7
- 238000004891 communication Methods 0.000 description 5
- 238000001152 differential interference contrast microscopy Methods 0.000 description 3
- 238000010276 construction Methods 0.000 description 2
- 238000005516 engineering process Methods 0.000 description 2
- 230000009286 beneficial effect Effects 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 230000001747 exhibiting effect Effects 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
Images
Landscapes
- Multi Processors (AREA)
Abstract
Description
本発明は、他の計算機と接続することでグリッドコンピューティングによる処理を行うことができる計算機、計算機システム、分散処理方法およびプログラムに関する。 The present invention relates to a computer, a computer system, a distributed processing method, and a program that can perform processing by grid computing by connecting to another computer.
近年、比較的低価格のPC(Personal Computer)、サーバをグリッドとして複数組み合わせてシステムを構成し、システム全体としての演算能力を高めるグリッドコンピューティングが注目されつつある。 2. Description of the Related Art In recent years, attention has been focused on grid computing that increases the computing capacity of the entire system by configuring a system by combining a plurality of relatively inexpensive PCs (Personal Computers) and servers as a grid.
また、近年CPU(Central Processing Unit)のマルチコア化が進み、対称型マルチプロセッシング(SMP;Symmetric Multiprocessing)のハードウェアが安価に提供されるようになっている。このため、一般商用アプリケーションソフトウェアでは、SMP環境を配慮した製品が多数販売されるようになっている。 In recent years, CPUs (Central Processing Units) have become multicore, and symmetric multiprocessing (SMP) hardware has been provided at low cost. For this reason, in general commercial application software, many products that take the SMP environment into consideration are sold.
一般的なグリッドコンピューティング環境例を図11に示す。
この図11に示すように、グリッドコンピューティングにより処理を行う一般的な計算機システムでは、グリッド間の通信、制御を行うためのソフトウェア機能をOS(Operating System)より上の階層にミドルウェアという形で実装している。
An example of a general grid computing environment is shown in FIG.
As shown in FIG. 11, in a general computer system that performs processing by grid computing, a software function for performing communication and control between grids is implemented in the form of middleware in a layer above the OS (Operating System). is doing.
また、本発明の関連技術として、マイクロプロセッサのソフトウェア部分に、グリッドコンピューティングを構築する場合の補助システムを有し、この補助システムが、ミドルウェアに存在するグリッドコンピューティング構築支援ソフトウェアと連携するようにしたものがある(例えば、特許文献1参照)。
しかしながら、上述した一般的なグリッドコンピューティング環境では、ハードウェアの持つ演算能力を発揮するためにはグリッドコンピューティングに特化したアプリケーションソフトウェアを個別に作成する必要あり、汎用性が高いものではなかった。
また、一般的なアプリケーションでは、アプリケーションが使用できるディスク資源、メモリ資源についても、グリッドコンピューティングにより複数のグリッドを横断的かつ連続的に活用することは困難であった。
However, in the general grid computing environment described above, application software specialized for grid computing has to be created individually in order to demonstrate the computing power of hardware, and it was not highly versatile. .
In general applications, it has been difficult to use a plurality of grids across and continuously by grid computing for disk resources and memory resources that can be used by the applications.
また、グリッドコンピューティング環境と、SMP環境は似て非なるものであるため、広く流通しているSMP環境での動作を配慮したアプリケーションソフトウェアはグリッドコンピューティング環境においてはその能力を発揮することができなかった。
また、これら一般商用アプリケーションソフトウェアの多くは、グリッドコンピューティング環境で構築されたCPU資源のみならず、ディスク資源、メモリ資源などの大容量のメモリ資源についても活用が困難であった。
In addition, since the grid computing environment and the SMP environment are not similar, application software that considers operation in a widely distributed SMP environment can exhibit its capabilities in the grid computing environment. There wasn't.
In addition, most of these general commercial application software is difficult to use not only for CPU resources built in a grid computing environment but also for large-capacity memory resources such as disk resources and memory resources.
以上のように、グリッドコンピューティング環境での動作について配慮されておらず、一般的なSMP環境での動作について配慮された通常のアプリケーションからは、グリッドコンピューティング環境により提供されているネットワーク上のCPU、メモリ等の各種の資源を活用することができなかった。 As described above, the operation on the grid computing environment is not taken into consideration, and the normal application considering the operation on the general SMP environment has a CPU on the network provided by the grid computing environment. The various resources such as memory could not be utilized.
また、上述した特許文献1のものは、マイクロプロセッサを認証するセキュリティ補助システムなどの補助システムを、上述したミドルウェアに存在するグリッドコンピューティング構築支援ソフトウェアと連携させ、動作を効率化させようとするものであり、グリッドコンピューティング環境に特化されていない一般的なSMP環境用のアプリケーションを用いて、グリッドコンピューティング環境で各ハードウェア資源を有効に活用できるようにさせることについてまで考慮されたものではなかった。 In addition, the above-mentioned Patent Document 1 tries to make an operation efficient by linking an auxiliary system such as a security auxiliary system for authenticating a microprocessor with the above-described grid computing construction support software in the middleware. In addition, it is not even considered to make it possible to effectively use each hardware resource in a grid computing environment by using an application for a general SMP environment that is not specialized in the grid computing environment. There wasn't.
本発明はこのような状況に鑑みてなされたものであり、グリッドコンピューティング環境に特化されていない一般的なアプリケーションを用いた場合であっても、グリッドコンピューティング環境として各種のハードウェア資源を有効に活用することができる計算機、計算機システム、分散処理方法およびプログラムを提供することを目的とする。 The present invention has been made in view of such circumstances, and even when a general application that is not specialized for a grid computing environment is used, various hardware resources are used as the grid computing environment. It is an object of the present invention to provide a computer, a computer system, a distributed processing method, and a program that can be used effectively.
かかる目的を達成するために、本発明に係る計算機は、他の計算機と接続されてグリッドコンピューティングによる処理が可能な計算機であって、ソフトウェアの階層におけるカーネルより下、かつハードウェアより上に、上記グリッドコンピューティングによる処理を実現させるグリッド用ソフトを備えたことを特徴とする。 In order to achieve such an object, a computer according to the present invention is a computer that is connected to other computers and can perform processing by grid computing, and is below the kernel in the software hierarchy and above the hardware. Grid software for realizing the processing by the grid computing is provided.
また、本発明に係る計算機システムは、上述した本発明に係る計算機の複数が互いに接続され、グリッドコンピューティングによる処理が可能に構成されたことを特徴とする。 Further, the computer system according to the present invention is characterized in that a plurality of the computers according to the present invention described above are connected to each other and can be processed by grid computing.
また、本発明に係る分散処理方法は、複数の計算機が接続されてグリッドコンピューティングによる処理が可能な計算機システムにおける分散処理方法であって、アプリケーションによる処理を上記グリッドコンピューティングにより行う際、ソフトウェアの階層におけるカーネルより下、かつハードウェアより上に設けられたグリッド用ソフトを用いて行うことを特徴とする。 Further, the distributed processing method according to the present invention is a distributed processing method in a computer system capable of processing by grid computing by connecting a plurality of computers, and when performing processing by an application by the grid computing, It is characterized by using grid software provided below the kernel in the hierarchy and above the hardware.
また、本発明に係るプログラムは、他の計算機と接続されてグリッドコンピューティングによる処理が可能な計算機のプログラムであって、ソフトウェアの階層におけるカーネルより下、かつハードウェアより上に設けられたグリッド用ソフトにより、上記グリッドコンピューティングでのアプリケーションによる処理を上記計算機に実行させることを特徴とする。 The program according to the present invention is a computer program that can be connected to other computers and can be processed by grid computing, and is for a grid provided below the kernel in the software hierarchy and above the hardware. The computer causes the computer to execute processing by the application in the grid computing.
以上のように、本発明によれば、グリッドコンピューティング環境に特化されていない一般的なアプリケーションを用いた場合であっても、グリッドコンピューティング環境として各種のハードウェア資源を有効に活用することができる。 As described above, according to the present invention, various hardware resources can be effectively used as a grid computing environment even when a general application that is not specialized for the grid computing environment is used. Can do.
次に、本発明に係る計算機、計算機システム、分散処理方法およびプログラムを適用した一実施形態について、図面を用いて詳細に説明する。
本実施形態の計算機システムは、グリッドコンピューティング環境で広く流通しているSMP環境用のアプリケーションソフトウェアの機能を発揮させる好適なものを例示している。
Next, an embodiment to which a computer, a computer system, a distributed processing method, and a program according to the present invention are applied will be described in detail with reference to the drawings.
The computer system of the present embodiment exemplifies a suitable system that exhibits the function of application software for the SMP environment that is widely distributed in the grid computing environment.
まず、本実施形態の概略について説明する。
本実施形態は、図1に示すように、計算機が他の計算機と接続されて計算機システムを構成し、グリッドコンピューティングによる処理が可能となっている。この計算機のソフトウェアの階層におけるカーネルより下、かつハードウェアより上に、グリッドコンピューティングによる処理を実現させるグリッド用ソフトが設けられている。
First, an outline of the present embodiment will be described.
In this embodiment, as shown in FIG. 1, a computer is connected to another computer to form a computer system, and processing by grid computing is possible. Grid software for realizing processing by grid computing is provided below the kernel and above the hardware in the computer software hierarchy.
より詳述すると、本実施形態では、グリッドコンピューティング環境に特化されていない一般的なアプリケーションであっても、グリッドコンピューティング実行環境として各種のハードウェア資源を有効に活用できるようにするため、グリッド間の通信、制御を行うためのソフトウェア機能を図2に示すようにOSのカーネル層よりも一段ハードウェア(HW)に近いレイヤに実装する。 More specifically, in the present embodiment, even in a general application that is not specialized for a grid computing environment, various hardware resources can be effectively used as a grid computing execution environment. As shown in FIG. 2, software functions for performing communication and control between grids are implemented in a layer closer to the one-stage hardware (HW) than the OS kernel layer.
こうした構成とすることで、本実施形態では、グリッドコンピューティング環境により連携している各計算機資源をあたかも一台の計算機であるかのように上位のアプリケーションに提供することが可能となり、一般的なSMP環境での動作を配慮した通常のアプリケーションであってもグリッド環境で実現される複数CPU、大容量メモリ資源の恩恵を享受できるようにしている。 With this configuration, in this embodiment, each computer resource linked in the grid computing environment can be provided to a higher-level application as if it were a single computer. Even a normal application considering operation in the SMP environment can enjoy the benefits of multiple CPUs and large-capacity memory resources realized in the grid environment.
次に、本実施形態の構成概略について、図3〜図5を参照して説明する。
近年、オペレーティングシステムはハードウェアアーキテクチャによる差異を吸収することを目的として、ソフトウェアの階層構造におけるハードウェアとカーネルの間にハードウェア仮想化レイヤ(Hardware Abstraction Layer;HAL)を設けることが主流となっている。
Next, a schematic configuration of the present embodiment will be described with reference to FIGS.
In recent years, it has become mainstream to provide a hardware virtualization layer (Hardware Abstraction Layer; HAL) between the hardware and the kernel in the hierarchical structure of software for the purpose of absorbing differences due to hardware architecture. Yes.
本実施形態として提案するPC用グリッド実行環境では、図3、図4、図5に示すいずれかの形でグリッド用ソフトウェアを配置する。この配置については、処理速度、実装の容易さ、制御の容易さなどの条件により適宜選択することが可能である。 In the PC grid execution environment proposed as the present embodiment, the grid software is arranged in any of the forms shown in FIGS. About this arrangement | positioning, it is possible to select suitably by conditions, such as processing speed, the ease of mounting, and the ease of control.
ただし、一般商用のオペレーティングシステムを活用することを考えた場合、HALをオペレーティングシステム提供者が提供することが通常であるため、図3のようにHALとカーネル間の処理を新たに定義することは現実的ではなく、また、HALとグリッド用ソフトウェアを一体化する図5の実現もまた現実的ではないため、図4の階層構造がもっとも実装が容易である。従い、以下の説明では、図4に示す構成を例として説明する。 However, when considering using a general commercial operating system, it is normal for the operating system provider to provide the HAL. Therefore, it is not possible to newly define the processing between the HAL and the kernel as shown in FIG. Since it is not realistic and the realization of FIG. 5 in which the HAL and the grid software are integrated is also not realistic, the hierarchical structure of FIG. 4 is the easiest to implement. Therefore, in the following description, the configuration shown in FIG. 4 will be described as an example.
次に、本実施形態としての計算機の構成について、図6を参照して説明する。
計算機のハードウェア120は、CPUコア(core)123,124、メモリ126、HBA(Host Bus Adapter)125、ディスク(Hard Disk)127、NIC(Network Interface Card)121、高速NIC122を備えて構成される。ディスク127はHBA125を経由してハードウェア本体(メイン基板)に接続される。
Next, the configuration of the computer as the present embodiment will be described with reference to FIG.
The
NICとしては、通常の計算機としての機能を発揮するための通信を行うものとしてのNIC121の他に、グリッド間の通信を行うことに特化した高速なものとして高速NIC122を備える。高速NIC122については、現状では例えば10Gigabit Ethernet(登録商標)、あるいは、Infini Bandなどによる実装が適当である。
The NIC includes a high-
本実施形態の機能を実現するためのソフトウェアとして、オペレーティングシステム提供者が提供するOS102、カーネル103、HAL104に加え、このHAL104よりも下の階層にグリッド用ソフトウェア110を設けている。
グリッド用ソフトウェア110は、特に本実施形態の特徴的構成として、グリッド間CPU調停機能111と、グリッド間メモリ調停機能112と、グリッド間ディスク調停機能113とを備えて構成される。
As software for realizing the functions of this embodiment, in addition to the OS 102,
The
本実施形態としての計算機では、上述した環境において、アプリケーション101がOS102上にて稼動する。本実施形態では、このアプリケーション101が、マルチスレッドあるいはマルチタスクにより複数のCPUコア123,124を平行して活用する機能を有することとする。
In the computer according to the present embodiment, the
次に、本実施形態としての計算機システムの動作について、図7を参照して説明する。
この図7に示す計算機システムの構成例では、説明をわかりやすくするために、PC301、PC302の2台の計算機が接続された環境での動作を例として説明する。
Next, the operation of the computer system as the present embodiment will be described with reference to FIG.
In the configuration example of the computer system shown in FIG. 7, for the sake of easy understanding, an operation in an environment in which two computers of PC 301 and PC 302 are connected will be described as an example.
PC301とPC302のグリッド間CPU調停機能111,211は、双方の高速NIC122,222を通じて互いに通信を行い、HALを経由してカーネルに対して双方のCPUコアの存在を認知させる。すなわち、本実施形態としての計算機システムに含まれる全CPUコアをカーネルに認知させる。
図7の例では、PC301とPC302それぞれのCPUコア計4個の存在をカーネル103,203に対して認知させることができる。
The inter-grid
In the example of FIG. 7, the
PC301とPC302のグリッド間メモリ調停機能112,212は、双方の高速NIC122,222を通じて互いに通信を行い、HALを経由してカーネルに対して双方のメモリの存在を認知させる。すなわち、本実施形態としての計算機システムに含まれる全メモリをカーネルに認知させる。
図7の例では、PC301とPC302のメモリ総量の存在をカーネル103,203に対して認知させることができる。
The inter-grid memory arbitration functions 112 and 212 of the PC 301 and the PC 302 communicate with each other through both high-
In the example of FIG. 7, the existence of the total memory amount of the
PC301とPC302のグリッド間ディスク調停機能113,213は、双方の高速NIC122,222を通じて互いに通信を行い、HALを経由してカーネルに対して双方のディスクの存在を認知させる。すなわち、本実施形態としての計算機システムに含まれる全ディスクをカーネルに認知させる。
ディスクは、物理的なディスクドライブをそのまま認識させることも、複数の物理ディスクドライブを連携させて動作させてRAID(Redundant Array of Inexpensive Disks)を構成することにより、可用性の確保をおこなったり巨大なファイルシステムを作成することも可能である。
The inter-grid disk arbitration functions 113 and 213 of the
Disks can be recognized as physical disk drives as they are, or multiple physical disk drives can be operated in tandem to configure RAID (Redundant Array of Inexpensive Disks) to ensure availability and large files It is also possible to create a system.
ここでPC301上で稼動する通常アプリ101がOSに対してサービスの提供を要求した場合について、図8のフローチャートを参照して説明する。
Here, the case where the
通常アプリ101がメモリの割り当てを要求した場合、OS102はメモリ確保要求の命令セットを受けカーネル103に対してメモリ確保の要求を行う(ステップS1)。カーネル103はHAL104に対してメモリ確保の要求を行い、HAL104はグリッド用ソフト110のグリッド内メモリ調停機能112に対してメモリ確保を要求する。
When the
グリッド間メモリ調停機能112は、PC301のハードウェア資源としての物理メモリの確保状況を管理し、PC301の物理メモリ126の使用状況に充分な余裕がある場合(ステップS2;Yes)、PC301のメモリ空間を確保の上(ステップS3)、上位階層のソフトウェアであるHAL104に対して実際に確保したメモリ空間に関する情報を通知する。
The inter-grid
グリッド間メモリ調停機能112がPC301の物理メモリ126に必要十分な余裕が確保できないと判断した場合(ステップS2;No)、それぞれの高速NIC122,222を経由してPC302のグリッド間メモリ調停機能212と通信を行い、PC302に対してメモリの確保の要求を行う(ステップS4)。
When the inter-grid
要求を受けたPC302のグリッド間メモリ調停機能212は、PC302のハードウェア資源としての物理メモリ226の確保状況を管理し、PC302の物理メモリの使用状況に余裕がある場合はPC302のメモリ空間を確保の上(ステップS5)、PC301のグリッド間メモリ調停機能112を経由してPC301のHAL104に対して実際に確保したメモリ空間に関する情報を通知する(ステップS6)。
Upon receiving the request, the inter-grid
上述した一連の動作フローにより、PC301とPC302の物理メモリ空間があたかも一体のメモリ空間であるかのようにPC301の通常アプリからは認識され、単独のハードウェアでは実現できなかった広大な物理メモリ空間の使用を可能とする。
With the above-described series of operation flows, the physical memory space of the
次に、PC301上で稼動する通常アプリ101がOSに対してCPU資源を要求した場合について、図9のフローチャートを参照して説明する。
Next, a case where the
カーネル103は起動時にHALを経由して使用可能なCPU資源の数についての定義を行う(ステップS11)。PC301でカーネル103が起動した際、グリッド間CPU調停機能111はPC302のグリッド間CPU調停機能211と通信を行い、PC301、PC302双方のCPUコア計4個を利用可能資源として認識し、OS102を起動する(ステップS12)。
The
通常アプリ101が稼働中に新規にスレッドやプロセスを定義した場合(ステップS13;Yes)、OS102に対して新規のCPU資源の定義の要求を行う。OS102は自らのSMP機能により利用可能な4個のCPUコアより1個を確保の上、アプリケーションソフトウェアのスレッドあるいはプロセスを稼動させる(ステップS14)。
When a new thread or process is defined while the
上述した一連の動作フローにより、PC301とPC302それぞれのCPUコアがあたかも一体の物理的な筐体の中に存在しているかのようにPC301のOS102および通常アプリ101からは認識され、単独のハードウェアでは実現できなかった複数処理の平行実施を実現可能とする。
According to the above-described series of operation flows, the OS core of the
次に、PC301上で稼動する通常アプリ101がOSに対してディスク資源へのI/O(Input-Output)を要求した場合について、図10のフローチャートを参照して説明する。
Next, the case where the
通常アプリ101がディスク資源へのI/Oを要求した場合(ステップS21)、OS102はカーネル103に対してディスク資源へのI/O要求をおこなう。カーネル103はHAL104に対してディスクI/O要求を行い、HAL104はグリッド用ソフト110のグリッド内ディスク調停機能113に対してディスクI/Oを要求する(ステップS22)。グリッド間ディスク調停機能113は、PC301のディスク127、PC302のディスク227へのアクセスをあらかじめ設定されたRAID方式で実施する(ステップS23)。
When the
まず、ディスクのRAID方式がRAID0(ミラーリング)の場合の例について説明する。
PC301のグリッド間ディスク調停機能はPC302のグリッド間調停機能を経由して双方のPCのディスクに対し同時に書き込みを行い、読み込みはPC301のディスクより実施する(ステップS24)。仮に、PC301のディスクに障害が発生した場合、読み込みをPC302のディスクより実施し、継続運用を可能とする。
First, an example in which the disk RAID system is RAID 0 (mirroring) will be described.
The inter-grid disk arbitration function of the
次に、ディスクのRAID方式がRAID5(分散パリティ)の場合の例について説明する。
書き込み要求が発生した場合は、PC301のグリッド間ディスク調停機能はデータを分割の上パリティデータを作成する。分割されたデータおよびパリティデータをPC301、PC302のディスクに対してデータの書き込みを行う。データの読み込みはPC301、PC302より分割されたデータを読み込んだ上でデータを結合しOS、アプリケーションへ引き渡す(ステップS25)。ディスクに障害が発生している場合は、パリティデータを活用してデータを復元する。
なお、RAID5の場合は、最低4台のディスクが必要となる。
Next, an example in which the disk RAID system is RAID 5 (distributed parity) will be described.
When a write request occurs, the inter-grid disk arbitration function of the
In the case of
上述した一連の動作フローにより、PC301とPC302の物理ディスク領域があたかも一体であるかのようにPC301の通常アプリからは認識され、単独のハードウェアでは実現できなかった広大な記憶領域の使用を可能とする。
Through the above-described series of operation flows, the physical disk areas of the
次に、上述した実施形態による効果について説明する。
従来、低価格で高性能な演算能力を持つ計算機システムを構築するための一つの手段としてグリッドコンピューティングがあったが、並行処理を効率よく実施するためには専用のアプリケーションソフトウェアを開発する必要があると共に、1プロセスで使用できるメモリ空間は1台のグリッドの物理メモリに制限されるという制約があった。
Next, the effect by embodiment mentioned above is demonstrated.
Conventionally, grid computing has been one of the means to build a low-priced and high-performance computing system, but it is necessary to develop dedicated application software in order to perform parallel processing efficiently. In addition, the memory space that can be used in one process is limited to the physical memory of one grid.
これに対し、上述した実施形態によれば、マルチスレッドに対応している一般的に使用されているアプリケーションを改変することなく大規模な並行処理を実現し、さらには大容量のメモリ空間、ディスク空間を確保することが可能となった。 On the other hand, according to the above-described embodiment, large-scale parallel processing is realized without modifying a commonly used application that supports multi-threading, and a large-capacity memory space, disk It became possible to secure space.
より詳述すると、従来、低価格で高性能な演算能力を持つ計算機システムを構築するための一つの手段としてグリッドコンピューティングがあったが、並行処理を効率よく実施するためには専用のアプリケーションソフトウェアを開発する必要があると共に、1プロセスで使用できるメモリ空間は1台のグリッドの物理メモリに制限されるという制約があった。 More specifically, grid computing has traditionally been one of the methods for constructing a low-priced and high-performance computing system, but dedicated application software is required for efficient parallel processing. In addition, the memory space that can be used in one process is limited to the physical memory of one grid.
従来のグリッド環境で大量の数値演算処理を高速に実施すためには各グリッド間の調停に関する制御をアプリケーション内に適切に実装することが必要であり、非常に高度なアプリケーションソフトウェア開発技術が要求された。また、広く市販されているアプリケーションソフトウェア(COTS(Commercial off-the-shelf)ソフトウェア)ではグリッドコンピューティングの恩恵を受けることができないという制約があった。 In order to perform a large amount of numerical computation processing at high speed in the conventional grid environment, it is necessary to properly implement control related to arbitration between grids in the application, and very advanced application software development technology is required. It was. In addition, there is a restriction that application software (COTS (Commercial off-the-shelf) software) that is commercially available cannot benefit from grid computing.
これに対し、上述した実施形態によれば、処理アプリケーションはごく一般的なマルチスレッド、マルチプロセスの処理を実装することにより、スケーラブルにグリッド処理を実施することが可能となる。 On the other hand, according to the above-described embodiment, the processing application can perform grid processing in a scalable manner by implementing very general multi-thread and multi-process processing.
また、グリッド間ディスク調停機能を活用することにより、大容量かつ高可用性のハードディスク環境を容易に実現することが可能になった。 Also, by utilizing the inter-grid disk arbitration function, it has become possible to easily realize a large-capacity and highly available hard disk environment.
なお、上述した各実施形態は本発明の好適な実施形態であり、本発明はこれに限定されることなく、本発明の技術的思想に基づいて種々変形して実施することが可能である。
例えば、上述した実施形態では、計算機システムの構成として2台のPCが接続されることとして説明したが、この構成に限定されず、接続されてグリッドコンピューティングによる処理を行うコンピュータは何台であってもよい。
Each of the above-described embodiments is a preferred embodiment of the present invention, and the present invention is not limited to this, and various modifications can be made based on the technical idea of the present invention.
For example, in the above-described embodiment, it has been described that two PCs are connected as a configuration of the computer system. However, the configuration is not limited to this configuration, and how many computers are connected and perform processing by grid computing. May be.
また、上述した実施形態では、図4に示した階層構造により構築されたものを例としているが、グリッド用ソフトがカーネルより下、かつハードウェアより上の階層に設けられていればこの階層構造に限定されず、使用するオペレーティングシステム、カーネルの制約や特性などに応じて、例えば図3、図5で示した構造であっても同様に適用することができる。 In the above-described embodiment, an example constructed by the hierarchical structure shown in FIG. 4 is taken as an example. However, if the grid software is provided in a hierarchy below the kernel and above the hardware, this hierarchical structure is used. For example, the structure shown in FIGS. 3 and 5 can be similarly applied according to the operating system to be used, the restrictions and characteristics of the kernel, and the like.
また、上述した各実施形態としての計算機システムを実現するための処理手順をプログラムとして記録媒体に記録することにより、本発明の各実施形態による上述した各機能を、その記録媒体から供給されるプログラムによって、システムを構成するコンピュータのCPUに処理を行わせて実現させることができる。
この場合、上記の記録媒体により、あるいはネットワークを介して外部の記録媒体から、プログラムを含む情報群を出力装置に供給される場合でも本発明は適用されるものである。
すなわち、記録媒体から読み出されたプログラムコード自体が本発明の新規な機能を実現することになり、そのプログラムコードを記憶した記録媒体および該記録媒体から読み出された信号は本発明を構成することになる。
この記録媒体としては、例えばフレキシブルディスク、ハードディスク、光ディスク、光磁気ディスク、CD−ROM、CD−R、CD−RW、DVD−ROM、DVD−RAM、DVD−RW、DVD+RW、磁気テープ、不揮発性のメモリーカード、ROM等を用いてよい。
Further, by recording a processing procedure for realizing the computer system as each of the above-described embodiments on a recording medium as a program, the above-described functions according to each embodiment of the present invention are supplied from the recording medium. Thus, the processing can be realized by causing the CPU of the computer constituting the system to perform processing.
In this case, the present invention can be applied even when an information group including a program is supplied to the output device from the above recording medium or from an external recording medium via a network.
That is, the program code itself read from the recording medium realizes the novel function of the present invention, and the recording medium storing the program code and the signal read from the recording medium constitute the present invention. It will be.
As this recording medium, for example, flexible disk, hard disk, optical disk, magneto-optical disk, CD-ROM, CD-R, CD-RW, DVD-ROM, DVD-RAM, DVD-RW, DVD + RW, magnetic tape, non-volatile A memory card, ROM or the like may be used.
この本発明に係るプログラムによれば、当該プログラムによって制御される計算機システムやそのシステムを構成する各コンピュータに、上述した実施形態における各機能を実現させることができる。 According to the program according to the present invention, each function in the above-described embodiment can be realized in a computer system controlled by the program and each computer constituting the system.
上述のように、本発明は、大容量画像データ処理における多量のCPU資源、メモリ資源、ディスク資源を要求される計算機システムに好適に適用することができる。
また、ディスク資源の確保にのみ着目し、低価格で大容量ディスク資源を確保する必要性があるシステムに適用しても有益である。
As described above, the present invention can be suitably applied to a computer system that requires a large amount of CPU resources, memory resources, and disk resources in large-capacity image data processing.
It is also beneficial to apply it to a system that focuses on securing disk resources and needs to secure large-capacity disk resources at a low price.
101 通常アプリ(アプリケーション)
102 OS
103 カーネル
104 HAL
110 グリッド用ソフト
111 グリッド間CPU調停機能
112 グリッド間メモリ調停機能
113 グリッド間ディスク調停機能
120 ハードウェア
121 NIC
122 高速NIC
123、124 CPUコア
126 メモリ(物理メモリ)
127 ディスク(ハードディスク)
101 Normal application (application)
102 OS
103
110
122 High speed NIC
123, 124
127 disk (hard disk)
Claims (16)
ソフトウェアの階層におけるカーネルより下、かつハードウェアより上に、前記グリッドコンピューティングによる処理を実現させるグリッド用ソフトを備えたことを特徴とする計算機。 A computer that is connected to other computers and can be processed by grid computing,
A computer comprising grid software for realizing the processing by the grid computing below a kernel in a software hierarchy and above hardware.
前記グリッド間メモリ調停機能は、メモリ確保要求に応じて、前記計算機の物理メモリに充分な余裕がある場合には該計算機にメモリ空間を確保し、前記計算機の物理メモリに充分な余裕がない場合には前記他の計算機にメモリ確保要求を行うことを特徴とする請求項1記載の計算機。 The grid software includes at least an inter-grid memory arbitration function that allows a kernel to recognize a memory included in the computer and the other connected computer.
The inter-grid memory arbitration function secures a memory space in the computer when the physical memory of the computer has a sufficient margin in response to a memory allocation request, and does not have a sufficient margin in the physical memory of the computer 2. The computer according to claim 1, wherein a memory securing request is made to said other computer.
前記グリッド間ディスク調停機能は、ハードディスクへのアクセス要求に応じて、予め定められたRAID方式により、前記計算機および、接続された前記他の計算機に含まれる各ハードディスクにアクセスすることを特徴とする請求項1から4の何れか1項に記載の計算機。 The grid software includes at least an inter-grid disk arbitration function that allows a kernel to recognize a hard disk included in the computer and the other connected computer.
The inter-grid disk arbitration function accesses each of the hard disks included in the computer and the other connected computers by a predetermined RAID method in response to a request for access to the hard disk. Item 5. The computer according to any one of Items 1 to 4.
アプリケーションによる処理を前記グリッドコンピューティングにより行う際、ソフトウェアの階層におけるカーネルより下、かつハードウェアより上に設けられたグリッド用ソフトを用いて行うことを特徴とする分散処理方法。 A distributed processing method in a computer system capable of processing by grid computing by connecting a plurality of computers,
A distributed processing method characterized in that when processing by an application is performed by the grid computing, grid software provided below a kernel and above hardware in a software hierarchy is used.
ソフトウェアの階層におけるカーネルより下、かつハードウェアより上に設けられたグリッド用ソフトにより、前記グリッドコンピューティングでのアプリケーションによる処理を前記計算機に実行させることを特徴とするプログラム。 A computer program connected to other computers and capable of processing by grid computing,
A program for causing a computer to execute processing by an application in the grid computing by using grid software provided below a kernel and above hardware in a software hierarchy.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2008078178A JP2009230673A (en) | 2008-03-25 | 2008-03-25 | Computer, computer system, distributed processing method, and program |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2008078178A JP2009230673A (en) | 2008-03-25 | 2008-03-25 | Computer, computer system, distributed processing method, and program |
Publications (1)
Publication Number | Publication Date |
---|---|
JP2009230673A true JP2009230673A (en) | 2009-10-08 |
Family
ID=41245937
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2008078178A Withdrawn JP2009230673A (en) | 2008-03-25 | 2008-03-25 | Computer, computer system, distributed processing method, and program |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP2009230673A (en) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2021149285A (en) * | 2020-03-17 | 2021-09-27 | 本田技研工業株式会社 | Information processing device |
-
2008
- 2008-03-25 JP JP2008078178A patent/JP2009230673A/en not_active Withdrawn
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2021149285A (en) * | 2020-03-17 | 2021-09-27 | 本田技研工業株式会社 | Information processing device |
JP7412235B2 (en) | 2020-03-17 | 2024-01-12 | 本田技研工業株式会社 | information processing equipment |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US10339047B2 (en) | Allocating and configuring persistent memory | |
US9286173B2 (en) | Dynamic use of RAID levels responsive to predicted failure of a data storage device | |
US9122515B2 (en) | Completion notification for a storage device | |
CN102047237B (en) | Providing object-level input/output requests between virtual machines to access a storage subsystem | |
WO2017162176A1 (en) | Storage system, access method for storage system, and access device for storage system | |
US20150121134A1 (en) | Storage device failover | |
WO2017162177A1 (en) | Redundant storage system, redundant storage method and redundant storage device | |
WO2017133483A1 (en) | Storage system | |
JP2011154697A (en) | Method and system for execution of applications in conjunction with raid | |
EP3803663B1 (en) | Watchdog timer hierarchy | |
TW201140442A (en) | Accelerating a wake-up time of a system | |
CN104102460A (en) | Cloud computing-based memory management method and device | |
JP6241178B2 (en) | Storage control device, storage control method, and storage control program | |
JP5027939B1 (en) | Host server with virtual storage for virtual machines | |
JP2009230673A (en) | Computer, computer system, distributed processing method, and program | |
JP6207342B2 (en) | Information processing system and control method of information processing system | |
CN103853599B (en) | A kind of extended method of node computing capability | |
JP2008071189A (en) | Disk array device, raid controller, and disk array construction method of disk array device | |
JP5807942B2 (en) | Disk array device and control method thereof | |
TWI501588B (en) | Accessing a local storage device using an auxiliary processor | |
US20140316539A1 (en) | Drivers and controllers | |
US20200233586A1 (en) | System for speculative block io aggregation to reduce uneven wearing of scms in virtualized compute node by offloading intensive block ios | |
Fan et al. | Cdbb: an nvram-based burst buffer coordination system for parallel file systems | |
JP6035993B2 (en) | Information processing apparatus, apparatus management method, and apparatus management program | |
JP5636703B2 (en) | Blade server |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A300 | Application deemed to be withdrawn because no request for examination was validly filed |
Free format text: JAPANESE INTERMEDIATE CODE: A300 Effective date: 20110607 |