説明

演算処理システム、演算処理方法及び演算処理プログラム

【課題】複数のCPU資源を用いて、連続して行なわれる複数の情報処理を効率的に実行するための演算処理システム、演算処理方法及び演算処理プログラムを提供する。
【解決手段】管理サーバ20の制御部21は、計量処理の終了を検知した場合、計量待機中のグループの有無を判定する。待機中のグループがある場合、制御部21は、ページングが発生しない最大CPU数を算出し、割当CPU数が使用可能CPU数に等しいグループを検索する。割当CPU数が使用可能CPU数に等しいグループがある場合、制御部21は、このグループの中で最初に待機状態となったグループの計量処理を開始する。一方、このようなグループがない場合、メモリ不足メッセージを出力し、ページングが発生しない最大CPU数が最大となるグループの中で最初に待機となったグループの計量処理を開始する。

【発明の詳細な説明】
【技術分野】
【0001】
本発明は、複数のCPU資源を用いて、連続して行なわれる複数の情報処理を効率的に実行するための演算処理システム、演算処理方法及び演算処理プログラムに関する。
【背景技術】
【0002】
従来、複数の演算処理を実行する際に、複数のCPU資源を用いた並列処理が利用される場合がある。この場合、演算処理の負荷や優先度に応じて、CPU資源の割当を行なうことが多い。そこで、CPU資源を効率的に活用するための技術が検討されている(例えば、特許文献1、2を参照。)。
【0003】
特許文献1に記載された技術では、メモリとCPUからなるプロセッサを複数結合した計算機システムを用いる。計算プロセッサは、自プロセッサの負荷状況を検知し、サーバプロセッサに、そのプロセスのスケジューリング優先度と負荷状況を通知する。サーバプロセッサにおいては、スケジューリング優先度及びプロセッサの負荷の状況に基づいて、実行の優先度を決定し、処理要求を実行する。
【0004】
また、特許文献2に記載された技術では、夜間バッチ処理を行ない、計算スロット管理サーバの制御部は、その処理所要時間を実行結果履歴データ記憶部に記録する。締めバッチ処理を行なう場合、制御部は、夜間バッチ処理を行なった計算スロットについて実行結果履歴を用いて重み付け値を算出する。
【先行技術文献】
【特許文献】
【0005】
【特許文献1】特開平8−77029号公報(第1頁、図3)
【特許文献2】特開2008−83975号公報(第1頁、図2)
【発明の概要】
【発明が解決しようとする課題】
【0006】
金融機関においても、金融商品のリスク評価等のシミュレーションを行なっている。この場合、取引データを利用して、モンテカルロシミュレーションやヒストリカルシミュレーションを行なう。特に、取引総量が多い場合には、取引データのロードや各シミュレーションにより、CPU資源に大きな負荷がかかるため、所定時間内に処理を完了させるためには、処理パフォーマンスを向上させることが望まれる。
【0007】
また、処理対象データを複数のグループに分けて処理を行なう場合、ロード時間が長いグループ程、計量時間も長くなる傾向がある。
計量処理のパフォーマンス向上の施策として、上記特許文献に記載された技術のように、処理対象データを所定のルール(定義)により分割して、CPU資源の分散割当による並列処理により対応することができる。
【0008】
しかし、定義によってパフォーマンスは異なるため、処理時間を最適化するための定義を見極めることは難しい。より良い定義を試行錯誤で探す場合には、テスト作業やリリース作業が必要となるため、対応までの期間やコストを要する点が問題であった。
【0009】
本発明は、上記課題を解決するためになされたものであり、その目的は、複数の演算処理装置を利用する分散環境において、大量の計算処理を効率的に行なうための演算処理システム、演算処理方法及び演算処理プログラムを提供することにある。
【課題を解決するための手段】
【0010】
上記問題点を解決するために、請求項1に記載の発明は、まとめて情報処理を行なうために生成されたグループのグループ識別子に対して、各グループを構成する処理対象データを記憶したグループ構成情報記憶手段と、各グループに対して、CPU資源の割当を行ない、グループ毎に順次、第1情報処理と第2情報処理とを実行させる制御手段とを備えた演算処理システムであって、前記制御手段が、各グループに対して均等にCPU資源の割当を行ない、第1情報処理の開始を指示する手段と、第1情報処理を終了したグループに対して、前記第1情報処理の終了時刻を記録するとともに、ページングを発生させないCPU数であって、割当可能な最大CPU数を割当CPU数として算出する手段と、第1情報処理の終了を検知したときに、まだ第2情報処理が実行されていない場合には前記割当CPU数の割当を行なって第2情報処理の開始を指示し、先に第1情報処理を終了した先行グループにおいて第2情報処理が実行されている場合には待機を指示する手段と、第2情報処理の終了を検知したときに、第1情報処理を終了して第2情報処理の開始を待機しているグループが複数ある場合、ページングを発生させないCPU数であって、割当可能な最大CPU数を割当CPU数として算出し、前記割当CPU数を使用できるグループの中で、最先に待機しているグループに対して第2情報処理の実行を指示する手段とを備えたことを要旨とする。
【0011】
請求項2に記載の発明は、請求項1に記載の演算処理システムにおいて、第1情報処理は処理対象データのロード処理であり、第2情報処理は、ロードされた処理対象データの計算処理であることを要旨とする。
【0012】
請求項3に記載の発明は、請求項1又は2に記載の演算処理システムにおいて、先行グループの第2情報処理の終了時に、第2情報処理について待機中のグループがない場合には、前記グループ構成情報記憶手段に記憶された処理対象データのグループ構成を変更するグループ構成変更処理を実行するための指示を出力することを要旨とする。
【0013】
請求項4に記載の発明は、請求項1〜3のいずれか一つに記載の演算処理システムにおいて、先行グループの第2情報処理の終了時に、第2情報処理について基準時間以上を待機しているグループがあった場合には、前記グループ構成情報記憶手段に記憶された処理対象データのグループ構成を変更するグループ構成変更処理を実行するための指示を出力することを要旨とする。
【0014】
請求項5に記載の発明は、請求項3又は4に記載の演算処理システムにおいて、前記グループ構成変更処理において、先行グループの第2情報処理の終了時に、後続グループの第1情報処理を終了し、このグループの第2情報処理を開始できるように、各グループを構成する処理対象データを再配分する手段を備えたことを要旨とする。
【0015】
請求項6に記載の発明は、請求項1〜5のいずれか一つに記載の演算処理システムにおいて、ページングの発生に基づいて、第2情報処理において使用可能なCPU数を割り当てられなかった場合には、メモリ不足についてのメッセージを出力することを要旨とする。
【0016】
請求項7に記載の発明は、まとめて情報処理を行なうために生成されたグループのグループ識別子に対して、各グループを構成する処理対象データを記憶したグループ構成情報記憶手段と、各グループに対して、CPU資源の割当を行ない、グループ毎に順次、第1情報処理と第2情報処理とを実行させる制御手段とを備えた演算処理システムを用いて、演算処理を行なうための方法であって、前記制御手段が、各グループに対して均等にCPU資源の割当を行ない、第1情報処理の開始を指示する段階と、第1情報処理を終了した
グループに対して、前記第1情報処理の終了時刻を記録するとともに、ページングを発生させないCPU数であって、CPU数であって、割当可能な最大CPU数を割当CPU数として算出する段階と、第1情報処理の終了を検知したときに、まだ第2情報処理が実行されていない場合には前記割当CPU数の割当を行なって第2情報処理の開始を指示し、先に第1情報処理を終了した先行グループにおいて第2情報処理が実行されている場合には待機を指示する段階と、第2情報処理の終了を検知したときに、第1情報処理を終了して第2情報処理の開始を待機しているグループが複数ある場合、ページングを発生させないCPU数であって、割当可能な最大CPU数を割当CPU数として算出し、前記割当CPU数を使用できるグループの中で、最先に待機しているグループに対して第2情報処理の実行を指示する段階とを実行することを要旨とする。
【0017】
請求項8に記載の発明は、まとめて情報処理を行なうために生成されたグループのグループ識別子に対して、各グループを構成する処理対象データを記憶したグループ構成情報記憶手段と、各グループに対して、CPU資源の割当を行ない、グループ毎に順次、第1情報処理と第2情報処理とを実行させる制御手段とを備えた演算処理システムを用いて、演算処理を行なうためのプログラムであって、前記制御手段を、各グループに対して均等にCPU資源の割当を行ない、第1情報処理の開始を指示する手段、第1情報処理を終了したグループに対して、前記第1情報処理の終了時刻を記録するとともに、ページングを発生させないCPU数であって、割当可能な最大CPU数を割当CPU数として算出する手段、第1情報処理の終了を検知したときに、まだ第2情報処理が実行されていない場合には前記割当CPU数の割当を行なって第2情報処理の開始を指示し、先に第1情報処理を終了した先行グループにおいて第2情報処理が実行されている場合には待機を指示する手段、第2情報処理の終了を検知したときに、第1情報処理を終了して第2情報処理の開始を待機しているグループが複数ある場合、ページングを発生させないCPU数であって、割当可能な最大CPU数を割当CPU数として算出し、前記割当CPU数を使用できるグループの中で、最先に待機しているグループに対して第2情報処理の実行を指示する手段として機能させることを要旨とする。
【0018】
(作用)
請求項1、7又は8に記載の発明によれば、制御手段が、各グループに対して均等にCPU資源の割当を行ない、第1情報処理の開始を指示する。そして、第1情報処理を終了したグループに対して、第1情報処理の終了時刻を記録するとともに、ページングを発生させないCPU数であって、割当可能な最大CPU数を割当CPU数として算出する。ここで、第1情報処理の終了を検知したときに、まだ第2情報処理が実行されていない場合には、割当CPU数の割当を行なって第2情報処理の開始を指示する。一方、先に第1情報処理を終了した先行グループにおいて第2情報処理が実行されている場合には待機を指示する。そして、第2情報処理の終了を検知したときに、第1情報処理を終了して第2情報処理の開始を待機しているグループが複数ある場合、ページングを発生させないCPU数であって、割当可能な最大CPU数を割当CPU数として算出し、割当CPU数を使用できるグループの中で、最先に待機しているグループに対して第2情報処理の実行を指示する。これにより、処理のパフォーマンスを劣化させるページングを発生させないで、第1情報処理を早く終えたグループ、すなわち負荷の小さいグループから、順次、CPU資源を集中的に投入することができる。また、負荷が大きいグループの第2情報処理は最後の方で行なうことにより、割当可能なCPU資源を最大化することができる。
【0019】
請求項2に記載の発明によれば、第1情報処理は処理対象データのロード処理であり、第2情報処理は、ロードされた処理対象データの計算処理である。これにより、ロード処理によりロードされたデータを用いて計量処理を行なう場合に、資源の有効活用を図ることができる。
【0020】
請求項3に記載の発明によれば、先行グループの第2情報処理の終了時に、第2情報処理について待機中のグループがない場合には、グループ構成情報記憶手段に記憶された処理対象データのグループ構成を変更するグループ構成変更処理を実行するための指示を出力する。これにより、先行グループの第1情報処理終了のタイミングが遅い場合に、各グループの負荷を変更して、タイミングの調整を行なうことができる。従って、第2情報処理におけるCPU割当を、CPUやメモリの使用状況から動的に判断し、パフォーマンスチューニングに関わる体力を大幅に削減することができる。
【0021】
請求項4に記載の発明によれば、先行グループの第2情報処理の終了時に、第2情報処理について基準時間以上を待機しているグループがあった場合には、グループ構成情報記憶手段に記憶された処理対象データのグループ構成を変更するグループ構成変更処理を実行するための指示を出力する。これにより、先行グループの第1情報処理終了のタイミングが早すぎる場合に、各グループの負荷を変更して、タイミングの調整を行なうことができる。
【0022】
請求項5に記載の発明によれば、グループ構成変更処理においては、先行グループの第2情報処理の終了時に、後続グループの第1情報処理を終了し、このグループの第2情報処理を開始できるように、各グループを構成する処理対象データを再配分する。これにより、先行グループの第2情報処理と後続グループの第1情報処理の終了のタイミングを考慮して、各グループのグループ構成を決定することができる。
【0023】
請求項6に記載の発明によれば、ページングの発生に基づいて、第2情報処理において使用可能なCPU数を割り当てられなかった場合には、メモリ不足についてのメッセージを出力する。これにより、ページングを抑制するためにメモリ増設を行なうことができる。
【発明の効果】
【0024】
本発明によれば、複数のプロセッサを用いて、連続して行なわれる複数の情報処理を効率的に実行するための演算処理システム、演算処理方法及び演算処理プログラムを提供することができる。
【図面の簡単な説明】
【0025】
【図1】本発明の一実施形態のシステムの概略図。
【図2】各データ記憶部に記憶されたデータの説明図であって、(a)は処理状況管理データ記憶部、(b)は処理実績管理データ記憶部に記録されたデータの説明図。
【図3】本発明の一実施形態の処理手順の説明図。
【図4】本発明の一実施形態の処理手順の説明図。
【図5】本発明の一実施形態の処理手順の説明図。
【図6】本発明の一実施形態のロード処理と計量処理の説明図。
【発明を実施するための形態】
【0026】
以下、本発明を具体化した一実施形態を、図1〜図6を用いて説明する。本実施形態では、取引実績データのロード処理(第1情報処理)を行ない、この取引実績データを用いて計量処理(第2情報処理)を行なうために用いる演算処理システム、演算処理方法及び演算処理プログラムとして説明する。本実施形態では、ロードしたデータを用いてシミュレーションを行なう。
【0027】
図1に示すように、本実施形態では、クライアント端末10、管理サーバ20、ファイルサーバ40からなるシステムを用いて演算処理を行なう。
クライアント端末10は、演算処理を管理する担当者が用いるコンピュータ端末である
。クライアント端末10は、ネットワークを介してデータを送信する機能や、受信したデータを表示する機能等を有する。このため、このクライアント端末10は、図示しないCPU、RAM、ROMの他、キーボード、マウス等の入力手段、ディスプレイ等の出力手段、通信手段等を有する。
【0028】
ファイルサーバ40は、演算処理に用いる各種データ(取引実績データ)を記憶している。そして、ファイルサーバ40は、管理サーバ20からの要求に応じて演算処理に用いる演算要素(処理対象データ)を提供する。この演算要素は、一つの処理を行なうデータがまとめられてグループ化される。そして、このグループを単位として、後述するロード処理や計量処理(ロードされた処理対象データの計算処理)が行なわれる。
【0029】
管理サーバ20は、演算処理の管理を行なうコンピュータシステムである。管理サーバ20は、CPU、RAM、ROM等から構成された制御手段としての制御部21、処理状況管理データ記憶部22、処理実績管理データ記憶部23、グループ定義データ記憶部24、演算処理部30を備える。
【0030】
この演算処理部30は、シミュレーションのための演算処理を実行する。この演算処理部30は、後述するデータや計量処理を実行するために複数のCPUやメモリを搭載している。ここで、演算処理部30が搭載しているCPUの数を「搭載CPU数」と呼び、メモリの搭載量を「搭載メモリ量」と呼ぶ。そして、一つのグループに対して、複数のCPUの割当を行なって演算処理を行なうことができる。各CPUは、制御部21からの要求受けた場合、各CPUにおいて実行しているプロセスの状況を制御部21に提供する。
【0031】
更に、演算処理部30は、演算処理に用いる演算要素を記憶するロードデータ記憶部32に接続されている。このロードデータ記憶部32には、ファイルサーバ40からロードされたデータが記憶される。
【0032】
管理サーバ20の制御部21は、演算処理を管理する処理(ロード指示段階、ロード監視段階、計量指示段階、計量監視段階、処理対象特定段階、グループ定義管理段階の処理等)を行なう。そのための演算処理プログラムを実行することにより、制御部21は、図1に示すようにロード指示手段211、ロード監視手段212、計量指示手段213、計量監視手段214、計量対象特定手段215、グループ定義管理手段216として機能する。
【0033】
ロード指示手段211は、演算処理部30に対して、演算処理に用いる演算要素のロード処理の実行を指示する処理を行なう。
ロード監視手段212は、演算処理部30におけるロード処理の実行状況を監視する処理を行なう。
【0034】
計量指示手段213は、演算処理部30に対して、計量処理の実行を指示する処理を行なう。
計量監視手段214は、演算処理部30における計量処理の実行状況を監視する処理を行なう。
【0035】
計量対象特定手段215は、計量処理の対象となるグループを特定する処理を行なう。
グループ定義管理手段216は、各グループを構成する処理対象データを再配分し、グループ構成を変更する手段として機能する。具体的には、グループ定義管理手段216は、各グループを構成する演算要素のグループ定義を見直す処理を行なう。グループ定義管理手段216は、後述するグループ定義見直し処理の実行時に用いる調整基準量に関するデータを保持している。この調整基準量は、ロード量を調整するために用いられる。
【0036】
処理状況管理データ記憶部22には、図2(a)に示すように、演算処理をまとめて行なうグループの処理状況に関する処理状況管理レコード220が記録されている。この処理状況管理レコード220は、グループを作成した場合に設定され、処理の進捗状況に応じて更新される。処理状況管理レコード220は、処理対象日、グループ識別子、ステータス、ステータス更新時刻に関するデータを含んで構成される。
【0037】
処理対象日データ領域には、演算処理(シミュレーション)の実行年月日に関するデータが記録される。
グループ識別子データ領域には、各グループを特定するための識別子に関するデータが記録される。
【0038】
ステータスデータ領域には、このグループの進捗状況を特定するためのフラグが記録される。本実施形態においては、「ロード待機」、「ロード中」、「計量待機」、「計量中」、「計量終了」を特定するための各フラグを記録する。このステータスデータ領域には、初期状態では「ロード待機」フラグが記録される。
ステータス更新時刻データ領域には、現状のステータスに更新されたときの時刻が記録される。
【0039】
処理実績管理データ記憶部23には、図2(b)に示すように、各グループの演算処理についての実績に関する処理実績管理レコード230及び処理中のアラームに関するアラーム管理レコード231が記録されている。
【0040】
この処理実績管理レコード230は、各グループの演算処理を終了した場合に記録される。処理実績管理レコード230は、処理対象日、グループ識別子、ロード処理使用CPU数、ロード処理使用メモリ量、ロード開始時刻、ロード終了時刻、計量処理使用CPU数、計量開始時刻、計量終了時刻、ロード所要時間、計量所要時間に関するデータを含んで構成される。
【0041】
処理対象日データ領域には、演算処理の実行年月日に関するデータが記録される。
グループ識別子データ領域には、各グループを特定するための識別子に関するデータが記録される。
【0042】
ロード処理使用CPU数データ領域、ロード処理使用メモリ量データ領域には、このグループのロード処理に用いたCPU数やメモリ量に関するデータが記録される。
ロード開始時刻、ロード終了時刻データ領域には、このグループのロード処理の開始時刻や終了時刻に関するデータが記録される。
【0043】
計量処理使用CPU数データ領域には、このグループの計量処理に用いたCPU数に関するデータが記録される。
計量開始時刻、計量終了時刻データ領域には、このグループの計量処理の開始時刻や終了時刻に関するデータが記録される。
【0044】
ロード所要時間データ領域には、このグループのロード処理に要した時間(ロード開始時刻とロード終了時刻との時間差)に関するデータが記録される。
計量所要時間データ領域には、このグループの計量処理に要した時間(計量開始時刻と計量終了時刻との時間差)に関するデータが記録される。
【0045】
アラーム管理レコード231は、計量処理においてアラームを発生した場合に記録される。アラーム管理レコード231は、処理対象日、アラームに関するデータを含んで構成
される。
【0046】
処理対象日データ領域には、演算処理の実行年月日に関するデータが記録される。
アラームデータ領域には、計量処理において発生したアラームを特定するための識別子に関するデータが記録される。本実施形態では、「メモリ不足」フラグ、「グループ定義見直し」フラグが記録される。
【0047】
グループ定義データ記憶部24はグループ構成情報記憶手段として機能し、演算処理をまとめて行なうグループの定義に関するグループ定義レコードが記録される。このグループ定義レコードは、ロード処理の開始前に設定され、グループ定義見直し処理を行なった場合に更新される。グループ定義レコードは、グループ識別子、演算要素識別子、サイズに関するデータを含んで構成される。
【0048】
グループ識別子データ領域には、各グループを特定するための識別子に関するデータが記録される。
演算要素識別子データ領域には、このグループを構成する演算要素を特定するための識別子に関するデータが記録される。本実施形態においては、一つのグループには複数の演算要素が含まれており、グループを構成する演算要素をまとめて演算処理が行なわれる。そして、グループ定義見直し処理において、各グループを構成する演算要素を他のグループに移し替えることができる。この場合には、移し替えられた演算要素の演算要素識別子は、他のグループ識別子に関連付けられて設定される。
【0049】
サイズデータ領域には、各演算要素のサイズに関するデータが記録される。本実施形態においては、このサイズに比例して、ロード処理や計量処理の所要時間が長くなる場合を想定する。そして、各グループを構成する演算要素のサイズの総和が、このグループにおける総データ量となる。
【0050】
以上のように構成されたシステムを用いて、演算処理の実行管理の処理手順を説明する。ここでは、ロード制御処理、計量制御処理、グループ定義見直し処理を、図3〜図6を用いて説明する。
【0051】
(ロード制御処理)
以下、ロード制御処理を説明する。この処理は、予め設定された時刻において定期的に開始される。
【0052】
まず、管理サーバ20の制御部21は、ロード処理の開始処理を実行する(ステップS1−1)。具体的には、制御部21のロード指示手段211が、演算処理部30に対してロード指示を行なう。このロード指示には、ロード処理に用いるCPU数及びロードするグループのグループ識別子を含める。本実施形態においては、各グループのロード処理には、均等に1個のCPUの割当を行なうものとする。
【0053】
ここで、ロード指示手段211は、処理状況管理データ記憶部22に、ロード処理を開始したグループのグループ識別子に対して、「ロード中」フラグを記録する。更に、ロード指示手段211は、処理実績管理データ記憶部23において、このグループ識別子が記録された処理実績管理レコード230にロード使用CPU数、ロード開始時刻を記録する。
【0054】
この場合、演算処理部30の各CPUは、指示されたグループ識別子のグループ定義レコードをグループ定義データ記憶部24から取得し、このグループの演算要素のデータをファイルサーバ40から取得する。そして、演算処理部30のCPUは、ファイルサーバ
40から取得したデータをロードデータ記憶部32に格納する。この場合、CPUはロードした各演算要素のサイズをグループ定義データ記憶部24に記録する。
【0055】
そして、管理サーバ20の制御部21は、ロード処理状態の監視処理を実行する(ステップS1−2)。具体的には、制御部21のロード監視手段212が、演算処理部30において、CPUにおいて実行されているロード処理プロセスの状況を監視する。
【0056】
そして、管理サーバ20の制御部21は、ロード処理の終了を検知したかどうかについての判定処理を実行する(ステップS1−3)。ロード処理の終了を検知しない場合(ステップS1−3において「NO」の場合)、ロード処理状態の監視処理(ステップS1−2)を継続する。
【0057】
一方、ロード処理の終了を検知した場合(ステップS1−3において「YES」の場合)、管理サーバ20の制御部21は、情報更新処理を実行する(ステップS1−4)。具体的には、制御部21のロード監視手段212が、ロード処理を終了したグループのグループ識別子を特定する。そして、ロード監視手段212は、処理状況管理データ記憶部22において、このグループ識別子が記録された処理状況管理レコード220のステータスとして「計量待機」フラグ、ステータス更新時刻として待機開始時刻(現在時刻)を記録する。更に、ロード監視手段212は、処理実績管理データ記憶部23において、このグループ識別子が記録された処理実績管理レコード230に、ロード使用メモリ量、ロード終了時刻を記録する。そして、ロード監視手段212は、ロード開始時刻とロード終了時刻との差分からロード所要時間を算出し、処理実績管理レコード230に記録する。
【0058】
次に、管理サーバ20の制御部21は、計量処理を実行中かどうかについての判定処理を実行する(ステップS1−5)。具体的には、制御部21のロード監視手段212が、計量指示手段213に対して、ロード処理を終了したグループがあることを通知する。この場合、計量指示手段213は、処理状況管理データ記憶部22を用いて、「計量中」フラグが記録されたグループがあるかどうかを確認する。
【0059】
「計量中」フラグが記録されたグループがなく、計量処理の実行中でないと判定した場合(ステップS1−5において「NO」の場合)、管理サーバ20の制御部21は、計量処理の開始処理を実行する(ステップS1−6)。具体的には、制御部21の計量指示手段213が、演算処理部30に対して計量処理の開始を指示する。この場合、計量指示手段213は、演算処理部30において使用されていないCPUにおいて、ページングを発生させない最大CPU数を、ロード処理を終了したグループの計量処理に対して割り当てる。このページングを発生させない最大CPU数の算出方法については、後述する計量制御処理において説明する。
【0060】
そして、制御部21の計量指示手段213は、計量処理開始時の情報更新処理を実行する。具体的には、計量指示手段213は、処理状況管理データ記憶部22において、このグループ識別子が記録された処理状況管理レコード220のステータスとして「計量中」フラグ、ステータス更新時刻として計量開始時刻(現在時刻)を記録する。更に、計量指示手段213は、処理実績管理データ記憶部23において、このグループ識別子が記録された処理実績管理レコード230に、計量使用CPU数、計量開始時刻を記録する。
【0061】
一方、「計量中」フラグが記録されたグループがあり、計量処理の実行中と判定した場合(ステップS1−5において「YES」の場合)、管理サーバ20の制御部21は、待機処理を実行する(ステップS1−7)。具体的には、制御部21の計量指示手段213が、処理状況管理データ記憶部22において、ロード処理を終了したグループのグループ識別子が記録された処理状況管理レコード220のステータス(「計量待機」フラグ)を
そのまま維持する。
【0062】
次に、管理サーバ20の制御部21は、全グループについてロードを終了したかどうかについての判定処理を実行する(ステップS1−8)。具体的には、制御部21のロード指示手段211が、処理状況管理データ記憶部22に「ロード待機」フラグが記録された処理状況管理レコード220があるかどうかを検索する。
【0063】
「ロード待機」フラグが記録された処理状況管理レコード220が残っており、全グループのロードを終了していないと判定した場合(ステップS1−8において「NO」の場合)、管理サーバ20の制御部21は、ステップS1−2のロード処理状態の監視処理を継続する。
【0064】
一方、「ロード待機」フラグが記録された処理状況管理レコード220が残っておらず、全グループについてロード処理を終了したと判定した場合(ステップS1−8において「YES」の場合)、ロード制御処理を終了する。
【0065】
(計量制御処理)
次に、計量制御処理を説明する。この処理は、ロード制御処理に引き続き実行される。
ここでは、管理サーバ20の制御部21は、計量処理状態の監視処理を実行する(ステップS2−1)。具体的には、制御部21の計量監視手段214が、演算処理部30において、CPUにおいて実行されている計量処理プロセスの状況の状況を監視する。
【0066】
そして、管理サーバ20の制御部21は、計量処理の終了を検知したかどうかについての判定処理を実行する(ステップS2−2)。具体的には、制御部21の計量監視手段214が、演算処理部30において、計量処理を行なっているCPUのプロセス状況により判定する。
【0067】
計量処理の終了を検知しない場合(ステップS2−2において「NO」の場合)、管理サーバ20の制御部21は、計量処理状態の監視処理(ステップS2−1)を継続する。
一方、計量処理の終了を検知した場合(ステップS2−2において「YES」の場合)、管理サーバ20の制御部21は、情報更新処理を実行する(ステップS2−3)。具体的には、制御部21の計量監視手段214が、計量処理を終了したグループのグループ識別子を特定する。そして、計量監視手段214は、処理状況管理データ記憶部22において、このグループ識別子が記録された処理状況管理レコード220のステータスとして「計量終了」フラグ、ステータス更新時刻として終了時刻(現在時刻)を記録する。更に、計量監視手段214は、処理実績管理データ記憶部23において、このグループ識別子が記録された処理実績管理レコード230に計量終了時刻を記録する。そして、ロード監視手段212は、計量開始時刻と計量終了時刻との差分から計量所要時間を算出し、処理実績管理レコード230に記録する。
【0068】
次に、管理サーバ20の制御部21は、計量待機中のグループがあるかどうかについての判定処理を実行する(ステップS2−4)。具体的には、制御部21の計量対象特定手段215が、処理状況管理データ記憶部22において、ステータスとして「計量待機」フラグが記録された処理状況管理レコード220を検索する。
【0069】
「計量待機」フラグが記録された処理状況管理レコード220を抽出できたことにより、待機中のグループがあると判定した場合(ステップS2−4において「YES」の場合)、管理サーバ20の制御部21は、ページングが発生しない最大CPU数の算出処理を実行する(ステップS2−5)。具体的には、制御部21の計量対象特定手段215が、待機中のグループについて、以下の算出式を用いて、ページングが発生しない最大CPU
数を算出する。
〔ページングが発生しない最大CPU数〕=〔搭載メモリ量−使用中メモリ量〕/〔当該グループ使用メモリ量〕
ここで、「搭載メモリ量」は、演算処理部30において備えられているメモリ量である。「使用中メモリ量」は、この基本式を用いる時点において、演算処理部30から取得した使用中のメモリ量を用いる。「当該グループ使用メモリ」は、このグループのロード処理終了時点において、処理実績管理レコード230に記録されたロード使用メモリ量を用いる。なお、上記算出式は各グループのロード処理に1個のCPUの割当を行なった場合に適用される。各グループのロード処理にn個のCPUの割当を行なった場合には、n倍することにより、ページングが発生しない最大CPU数を算出することができる。
【0070】
次に、管理サーバ20の制御部21は、割当CPU数が使用可能CPU数に等しいグループがあるかどうかについての判定処理を実行する(ステップS2−6)。具体的には、制御部21の計量対象特定手段215が、以下の算出式を用いて、使用可能CPU数を算出する。
〔使用可能CPU数〕=〔搭載CPU数〕−〔使用中CPU数〕
ここで、「搭載CPU数」は、演算処理部30において備えられているCPU数である。「使用中CPU数」は、この基本式を用いる時点において、演算処理部30から取得した使用中のCPU数を用いる。
【0071】
更に、計量対象特定手段215は、待機中のグループ毎の割当CPU数を以下の算出式を用いて算出する。
〔割当CPU数〕=min(使用可能CPU数,ページングが発生しない最大CPU数)
そして、計量対象特定手段215は、「割当CPU数」=「使用可能CPU数」となるグループを検索する。
【0072】
割当CPU数が使用可能CPU数に等しいグループがある場合(ステップS2−6において「YES」の場合)、管理サーバ20の制御部21は、このグループの中で最初に待機状態となったグループの計量処理の開始処理を実行する(ステップS2−7)。具体的には、制御部21の計量対象特定手段215が、処理状況管理レコード220において、計量待機フラグが記録されており、ステータス更新時刻が最も早いグループのグループ識別子を特定する。更に、計量対象特定手段215は、ステップS1−6と同様に、計量処理開始時の情報更新処理を実行する。
【0073】
そして、計量対象特定手段215は、特定したグループ識別子を計量指示手段213に供給する。この場合、計量指示手段213は、取得したグループ識別子が付与されたグループの計量指示を、演算処理部30に供給する。この場合も、計量指示手段213は、演算処理部30において使用されていないすべてのCPUを、このグループの計量処理に対して割り当てる。そして、演算処理部30はロードデータ記憶部32に記録されたデータを用いて計量処理を実行する。
【0074】
一方、割当CPU数が使用可能CPU数に等しいグループがない場合(ステップS2−6において「NO」の場合)、管理サーバ20の制御部21は、メモリ不足メッセージの出力処理を実行する(ステップS2−8)。具体的には、制御部21の計量対象特定手段215が、クライアント端末10のディスプレイに、メモリ不足であることを示したメッセージを出力する。更に、計量対象特定手段215は、アラーム管理レコード231に「メモリ不足」フラグを記録する。
【0075】
そして、管理サーバ20の制御部21は、ページングが発生しない最大CPU数が最大となるグループの中で最初に待機となったグループの計量処理の開始処理を実行する(ス
テップS2−9)。具体的には、制御部21の計量対象特定手段215が、「ページングが発生しない最大CPU数」が最大となるグループであって、処理状況管理レコード220において、計量待機フラグが記録されており、ステータス更新時刻が最も早いグループのグループ識別子を特定する。そして、制御部21の計量指示手段213は、ステップS1−6と同様に、計量処理開始時の情報更新処理を実行し、このグループのグループ識別子を計量指示手段213に供給する。この場合、計量指示手段213は、演算処理部30に対して、このグループの計量処理の実行を指示する。
【0076】
また、「計量待機」フラグが記録された処理状況管理レコード220が抽出できず、待機中のグループがないと判定した場合(ステップS2−4において「NO」の場合)、管理サーバ20の制御部21は、ロード処理を完了していないグループがあるかどうかについての判定処理を実行する(ステップS2−10)。具体的には、制御部21の計量対象特定手段215が、処理状況管理データ記憶部22において、「ロード待機」フラグ又は「ロード中」フラグが記録された処理状況管理レコード220があるかどうかを検索する。
【0077】
「ロード待機」フラグ又は「ロード中」フラグが記録された処理状況管理レコード220を検出することにより、ロード処理を完了していないグループがあると判定した場合(ステップS2−10において「YES」の場合)、管理サーバ20の制御部21は、グループ定義見直しメッセージの出力処理を実行する(ステップS2−11)。具体的には、制御部21の計量対象特定手段215が、クライアント端末10のディスプレイに、グループ定義を見直す必要があることを示すメッセージを出力する。更に、計量対象特定手段215は、アラーム管理レコード231に「グループ定義見直し」フラグを記録する。
【0078】
一方、「ロード待機」フラグ又は「ロード中」フラグが記録された処理状況管理レコード220を検出せず、ロード処理を完了していないグループがないと判定した場合(ステップS2−10において「NO」の場合)、管理サーバ20の制御部21は、グループ定義見直し処理を実行する(ステップS2−12)。具体的には、制御部21の計量対象特定手段215が、処理実績管理データ記憶部23のアラーム管理レコード231を用いて、グループ定義見直しフラグが記録されているかどうかを確認する。グループ定義見直しフラグが記録されている場合には、計量対象特定手段215は、グループ定義管理手段216に対してグループ定義の見直しを指示する。この場合、グループ定義管理手段216は、後述するグループ定義見直し処理を実行する。
【0079】
(グループ定義見直し処理)
次に、グループ定義見直し処理を説明する。ここでは、先行グループの処理所要時間(ロード所要時間と計量所要時間との総和)に応じて、後続グループの構成を変更する。すなわち、各グループの計量処理において、待機時間が少なく、CPUを効率的に使用できるように、各グループを構成する演算要素の変更を行なう。なお、本実施形態のグループ定義見直し処理においては、ページングが生じない場合を想定する。
【0080】
まず、管理サーバ20の制御部21は、最先行グループの特定処理を実行する(ステップS3−1)。具体的には、制御部21のグループ定義管理手段216が、処理実績管理データ記憶部23に記録された処理実績管理レコード230のロード終了時刻を用いて、最も早くロード処理を終了したグループを特定する。
【0081】
次に、管理サーバ20の制御部21は、後続グループの特定処理を実行する(ステップS3−2)。具体的には、制御部21のグループ定義管理手段216が、処理実績管理データ記憶部23に記録された処理実績管理レコード230を用いて、次にロード処理を終了したグループを特定する。
【0082】
次に、管理サーバ20の制御部21は、先行グループの処理所要時間の算出処理を実行する(ステップS3−3)。具体的には、制御部21のグループ定義管理手段216が、先行グループの計量終了時刻とロード開始時刻との差分から処理所要時間を取得する。
【0083】
次に、管理サーバ20の制御部21は、先行グループの処理所要時間にロードできるロード可能量の算出処理を実行する(ステップS3−4)。具体的には、制御部21のグループ定義管理手段216が、後続グループの演算要素のサイズ総量を算出し、この総量を後続グループのロード所要時間で除算することにより、単位時間当たりのロード可能量(単位ロード可能量)を算出する。そして、グループ定義管理手段216は、単位ロード可能量に、先行グループの処理所要時間を乗算することによりロード可能量を算出する。これにより、先行グループの計量処理の終了時に、後続グループのロード処理が終了し、速やかに後続グループの計量処理に移行することができる。
【0084】
次に、管理サーバ20の制御部21は、後続グループに対してロード可能量を設定可能かどうかについての判定処理を実行する(ステップS3−5)。具体的には、制御部21のグループ定義管理手段216が、後続グループの演算要素の総サイズがロード可能量より大きい場合に、ロード可能量を超えた演算要素を後々続グループ(後続グループに後続するグループ)に引き渡すことができるかどうかを判定する。一方、後続グループの演算要素の総サイズがロード可能量より小さい場合に、ロード可能量に対して不足している量の演算要素を後々続グループから引き受けることができるかどうかを判定する。
【0085】
後続グループのサイズとしてロード可能量を設定できない場合(ステップS3−5において「NO」の場合)、管理サーバ20の制御部21は、最先行グループのグループ構成の変更処理を実行する(ステップS3−6)。具体的には、ロード可能量を超えた演算要素を後々続グループに引き渡すことができない場合には、制御部21のグループ定義管理手段216が、グループ定義データ記憶部24に記録された最先行グループに、調整基準量に相当する演算要素を後続グループから移し替える。一方、ロード可能量に対して不足している場合には、制御部21のグループ定義管理手段216が、グループ定義データ記憶部24に記録された最先行グループの演算要素の中で、調整基準量に相当する演算要素を後続グループに移し替える。そして、先行グループの計量終了時間の算出処理(ステップS3−3)からの処理を繰り返す。
【0086】
一方、後続グループのサイズとしてロード可能量を設定できる場合(ステップS3−5において「YES」の場合)、管理サーバ20の制御部21は、後続グループのグループ構成の設定処理を実行する(ステップS3−7)。具体的には、制御部21のグループ定義管理手段216が、グループ定義データ記憶部24において、先行グループの処理所要時間にロードできるロード可能量に対応する総サイズ量の演算要素を、後続グループのグループ識別子に関連付けて記録する。この場合、後続グループの演算要素の総サイズがロード可能量より大きい場合に、ロード可能量を超えた演算要素を後々続グループ(後続グループに後続するグループ)のグループ定義レコードに移し替える。また、後続グループの演算要素の総サイズがロード可能量より小さい場合に、ロード可能量に不足する演算要素を後々続グループのグループ定義レコードから、後続のグループ定義レコードに移し替える。
【0087】
そして、全グループの設定を終了したかどうかについての判定処理を実行する(ステップS3−8)。具体的には、制御部21のグループ定義管理手段216が、処理実績管理データ記憶部23に記録された処理実績管理レコード230のロード終了時刻を用いて、最後にロード処理を終了したグループのグループ定義の見直しを行なったかどうかにより判定する。
【0088】
まだ、全グループの設定を終了していないと判定した場合(ステップS3−8において「NO」の場合)、管理サーバ20の制御部21は、そして、この後続グループを新たな先行グループとして、後続グループの特定処理(ステップS3−2)からの処理を繰り返す。
【0089】
一方、全グループの設定を終了と判定した場合(ステップS3−8において「YES」の場合)、管理サーバ20の制御部21は、グループ定義見直し処理を終了する。
【0090】
以上、本実施形態によれば、以下に示す効果を得ることができる。
・ 上記実施形態では、「計量中」フラグが記録されたグループがなく、計量処理の実行中でないと判定した場合(ステップS1−5において「NO」の場合)、管理サーバ20の制御部21は、計量処理の開始処理を実行する(ステップS1−6)。この場合、計量指示手段213は、演算処理部30において使用されていないすべてのCPUを、このグループの計量処理に対して割り当てる。また、計量処理の終了を検知した場合、当CPU数が使用可能CPU数に等しいグループがある場合(ステップS2−6において「YES」の場合)、管理サーバ20の制御部21は、このグループの中で最初に待機状態となったグループの計量処理の開始処理を実行する(ステップS2−7)。この場合も、計量指示手段213は、演算処理部30において使用されていないCPUにおいて、できるだけ多くのCPU数を、このグループの計量処理に対して割り当てる。これにより、計量処理において、利用可能な資源を分散配布するのではなく、特定のグループに集中的に割り当てることができる。
【0091】
・ 上記実施形態では、割当CPU数が使用可能CPU数に等しいグループがある場合(ステップS2−6において「YES」の場合)、管理サーバ20の制御部21は、このグループの中で最初に待機状態となったグループの計量処理の開始処理を実行する(ステップS2−7)。また、このようなグループがない場合(ステップS2−6において「NO」の場合)、管理サーバ20の制御部21は、メモリ不足メッセージの出力処理(ステップS2−8)の後で、ページングが発生しない最大CPU数が最大となるグループの中で最初に待機となったグループの計量処理の開始処理を実行する(ステップS2−9)。ロード処理に時間がかかったグループは負荷が大きいため、負荷が大きいグループの計量処理を後の方で行なうようにすることができる。後の方では、多くのグループがロード処理や計量処理を終了しているので、より多くのCPU資源を投入し、負荷が大きいグループの計量処理を効率的に行なうことができる。
【0092】
・ 上記実施形態では、割当CPU数が使用可能CPU数に等しいグループがない場合(ステップS2−6において「NO」の場合)、管理サーバ20の制御部21は、メモリ不足メッセージの出力処理を実行する(ステップS2−8)。これにより、担当者は、メモリ増設を検討して、パフォーマンス向上を図ることができる。
【0093】
そして、管理サーバ20の制御部21は、ページングが発生しない最大CPU数が最大となるグループの中で最初に待機となったグループの計量処理の開始処理を実行する(ステップS2−9)。これにより、計量処理においてボトルネックとなるページングを発生させないで、最大のCPU資源を使用することができる。
【0094】
・ 上記実施形態では、「計量待機」フラグが記録された処理状況管理レコード220が抽出できず、待機中のグループがないと判定した場合(ステップS2−4において「NO」の場合)、管理サーバ20の制御部21は、ロード処理を完了していないグループがあるかどうかについての判定処理を実行する(ステップS2−10)。「ロード待機」フラグ又は「ロード中」フラグが記録された処理状況管理レコード220を検出することに
より、ロード処理を完了していないグループがあると判定した場合(ステップS2−10において「YES」の場合)、管理サーバ20の制御部21は、グループ定義見直しメッセージの出力処理を実行する(ステップS2−11)。これにより、担当者は、固定的なグループ定義の見直しのタイミングを把握することができる。
【0095】
・ 上記実施形態では、「ロード待機」フラグ又は「ロード中」フラグが記録された処理状況管理レコード220を検出せず、ロード処理を完了していないグループがないと判定した場合(ステップS2−10において「NO」の場合)、管理サーバ20の制御部21は、グループ定義見直し処理を実行する(ステップS2−12)。これにより、効率的にグループ定義の見直しを行なうことができる。特に、各グループのデータ量が変化する場合、計量処理におけるCPU割当の定義を、CPUやメモリの使用状況から動的に判断し、パフォーマンスチューニングに関わる体力を削減することができる。
【0096】
・ 上記実施形態では、グループ定義見直し処理においては、各グループの計量処理において、待機時間が少なく、CPUを効率的に使用できるように、各グループを構成する演算要素の変更を行なう。この具体例を、図6を用いて説明する。ここで、「G1」〜「G5」は、各グループの演算要素の総サイズ、「TL」はロード処理に要する時間を算出する関数、「TS」は計量処理に要する時間を算出する関数である。「A」を搭載CPU数とした場合、図6に示すように、データ量(負荷)が小さい先行グループの計量処理を終了したときに、データ量が大きい後続グループの計量処理を開始するように設定することができる。従って、高負荷グループの計量処理は最後の方で実施することにより、割当可能な資源を最大化することができる。
【0097】
なお、上記実施形態は、以下の態様に変更してもよい。
○ 上記実施形態では、計算処理としてシミュレーションを行なう場合に適用した。この演算処理の適用は、これに限定されるものではなく、第1情報処理、第2情報処理を行なう場合に、先行グループの第2情報処理を終了した時点で、後続グループの第2情報処理を行なう場合に適用することができる。
【0098】
○ 上記実施形態では、グループ定義見直し処理により、グループ定義を変更する。これに代えて、方程式を用いて、各グループにおける演算要素の配分を決定するようにしてもよい。この場合、図6に示した例において、以下の連立方程式を解く。
TL(G2)=TL(G1)+TS(G1/(A−4))
TL(G3)=TL(G2)+TS(G2/(A−3))
TL(G4)=TL(G3)+TS(G3/(A−2))
TL(G5)=TL(G4)+TS(G4/(A−1))
トータル量=G1+G2+G3+G4+G5
すなわち、n番目にデータ量が大きいグループのロード所要時間が、(n−1)番目のグループのロード所要時間と、(n−1)番目のグループの計量所要時間との合計になるように方程式を作成する。この場合、(n−1)番目のグループの計量所要時間は、搭載CPU数から、n番目以降のグループのロード処理に割り当てられたCPU数を減算したCPU資源を用いて計量処理を行なった場合の時間を用いる。そして、各グループの負荷の総計と、全体の処理量とを一致させる。これにより、先行グループの第2情報処理の終了時に、後続グループの第1情報処理を終了し、このグループの第2情報処理を開始できるグループ構成を決定することができる。
【0099】
○ 上記実施形態では、ロード処理を完了していないグループがあると判定した場合(ステップS2−10において「YES」の場合)、管理サーバ20の制御部21は、グループ定義見直しメッセージの出力処理を実行する(ステップS2−11)。これに代えて、処理実績管理レコード230に記録されたロード終了時刻と計量開始時刻との時間差に
基づいて、定義見直しの判定を行なってもよい。これにより、先行グループの第2の情報処理の終了時に、第2の情報処理について基準時間以上を待機しているグループがあった場合には、グループ構成を変更することができる。
【0100】
○ 上記実施形態では、管理サーバ20内に演算処理部30を設けた。ハードウェア構成はこれに限定されるものではない。例えば、演算処理部30を、管理サーバ20とは別のハードウェア構成とすることも可能である。
【符号の説明】
【0101】
10…クライアント端末、20…管理サーバ、21…制御部、211…ロード指示手段、212…ロード監視手段、213…計量指示手段、214…計量監視手段、215…計量対象特定手段、216…グループ定義管理手段、22…処理状況管理データ記憶部、23…処理実績管理データ記憶部、24…グループ定義データ記憶部、30…演算処理部、40…ファイルサーバ。

【特許請求の範囲】
【請求項1】
まとめて情報処理を行なうために生成されたグループのグループ識別子に対して、各グループを構成する処理対象データを記憶したグループ構成情報記憶手段と、
各グループに対して、CPU資源の割当を行ない、グループ毎に順次、第1情報処理と第2情報処理とを実行させる制御手段とを備えた演算処理システムであって、
前記制御手段が、
各グループに対して均等にCPU資源の割当を行ない、第1情報処理の開始を指示する手段と、
第1情報処理を終了したグループに対して、前記第1情報処理の終了時刻を記録するとともに、ページングを発生させないCPU数であって、割当可能な最大CPU数を割当CPU数として算出する手段と、
第1情報処理の終了を検知したときに、まだ第2情報処理が実行されていない場合には前記割当CPU数の割当を行なって第2情報処理の開始を指示し、先に第1情報処理を終了した先行グループにおいて第2情報処理が実行されている場合には待機を指示する手段と、
第2情報処理の終了を検知したときに、第1情報処理を終了して第2情報処理の開始を待機しているグループが複数ある場合、ページングを発生させないCPU数であって、割当可能な最大CPU数を割当CPU数として算出し、前記割当CPU数を使用できるグループの中で、最先に待機しているグループに対して第2情報処理の実行を指示する手段とを備えたことを特徴とする演算処理システム。
【請求項2】
第1情報処理は処理対象データのロード処理であり、
第2情報処理は、ロードされた処理対象データの計算処理であることを特徴とする請求項1に記載の演算処理システム。
【請求項3】
先行グループの第2情報処理の終了時に、第2情報処理について待機中のグループがない場合には、前記グループ構成情報記憶手段に記憶された処理対象データのグループ構成を変更するグループ構成変更処理を実行するための指示を出力することを特徴とする請求項1又は2に記載の演算処理システム。
【請求項4】
先行グループの第2情報処理の終了時に、第2情報処理について基準時間以上を待機しているグループがあった場合には、前記グループ構成情報記憶手段に記憶された処理対象データのグループ構成を変更するグループ構成変更処理を実行するための指示を出力することを特徴とする請求項1〜3のいずれか一つに記載の演算処理システム。
【請求項5】
前記グループ構成変更処理において、先行グループの第2情報処理の終了時に、後続グループの第1情報処理を終了し、このグループの第2情報処理を開始できるように、各グループを構成する処理対象データを再配分する手段を備えたことを特徴とする請求項3又は4に記載の演算処理システム。
【請求項6】
ページングの発生に基づいて、第2情報処理において使用可能なCPU数を割り当てられなかった場合には、メモリ不足についてのメッセージを出力することを特徴とする請求項1〜5のいずれか一つに記載の演算処理システム。
【請求項7】
まとめて情報処理を行なうために生成されたグループのグループ識別子に対して、各グループを構成する処理対象データを記憶したグループ構成情報記憶手段と、
各グループに対して、CPU資源の割当を行ない、グループ毎に順次、第1情報処理と第2情報処理とを実行させる制御手段とを備えた演算処理システムを用いて、演算処理を行なうための方法であって、
前記制御手段が、
各グループに対して均等にCPU資源の割当を行ない、第1情報処理の開始を指示する段階と、
第1情報処理を終了したグループに対して、前記第1情報処理の終了時刻を記録するとともに、ページングを発生させないCPU数であって、割当可能な最大CPU数を割当CPU数として算出する段階と、
第1情報処理の終了を検知したときに、まだ第2情報処理が実行されていない場合には前記割当CPU数の割当を行なって第2情報処理の開始を指示し、先に第1情報処理を終了した先行グループにおいて第2情報処理が実行されている場合には待機を指示する段階と、
第2情報処理の終了を検知したときに、第1情報処理を終了して第2情報処理の開始を待機しているグループが複数ある場合、ページングを発生させないCPU数であって、割当可能な最大CPU数を割当CPU数として算出し、前記割当CPU数を使用できるグループの中で、最先に待機しているグループに対して第2情報処理の実行を指示する段階とを実行することを特徴とする演算処理方法。
【請求項8】
まとめて情報処理を行なうために生成されたグループのグループ識別子に対して、各グループを構成する処理対象データを記憶したグループ構成情報記憶手段と、
各グループに対して、CPU資源の割当を行ない、グループ毎に順次、第1情報処理と第2情報処理とを実行させる制御手段とを備えた演算処理システムを用いて、演算処理を行なうためのプログラムであって、
前記制御手段を、
各グループに対して均等にCPU資源の割当を行ない、第1情報処理の開始を指示する手段、
第1情報処理を終了したグループに対して、前記第1情報処理の終了時刻を記録するとともに、ページングを発生させないCPU数であって、割当可能な最大CPU数を割当CPU数として算出する手段、
第1情報処理の終了を検知したときに、まだ第2情報処理が実行されていない場合には前記割当CPU数の割当を行なって第2情報処理の開始を指示し、先に第1情報処理を終了した先行グループにおいて第2情報処理が実行されている場合には待機を指示する手段、
第2情報処理の終了を検知したときに、第1情報処理を終了して第2情報処理の開始を待機しているグループが複数ある場合、ページングを発生させないCPU数であって、割当可能な最大CPU数を割当CPU数として算出し、前記割当CPU数を使用できるグループの中で、最先に待機しているグループに対して第2情報処理の実行を指示する手段
として機能させることを特徴とする演算処理プログラム。

【図1】
image rotate

【図2】
image rotate

【図3】
image rotate

【図4】
image rotate

【図5】
image rotate

【図6】
image rotate


【公開番号】特開2010−237994(P2010−237994A)
【公開日】平成22年10月21日(2010.10.21)
【国際特許分類】
【出願番号】特願2009−85862(P2009−85862)
【出願日】平成21年3月31日(2009.3.31)
【出願人】(592131906)みずほ情報総研株式会社 (187)