JP3755165B2 - 並列処理手続き選定装置及び方法 - Google Patents
並列処理手続き選定装置及び方法 Download PDFInfo
- Publication number
- JP3755165B2 JP3755165B2 JP15657095A JP15657095A JP3755165B2 JP 3755165 B2 JP3755165 B2 JP 3755165B2 JP 15657095 A JP15657095 A JP 15657095A JP 15657095 A JP15657095 A JP 15657095A JP 3755165 B2 JP3755165 B2 JP 3755165B2
- Authority
- JP
- Japan
- Prior art keywords
- parallel
- data set
- processing procedure
- job
- processing
- 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.)
- Expired - Fee Related
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F8/00—Arrangements for software engineering
- G06F8/40—Transformation of program code
- G06F8/41—Compilation
- G06F8/45—Exploiting coarse grain parallelism in compilation, i.e. parallelism between groups of instructions
Landscapes
- Engineering & Computer Science (AREA)
- General Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Software Systems (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Devices For Executing Special Programs (AREA)
- Multi Processors (AREA)
Description
【産業上の利用分野】
本発明は,排他利用したデータセットやパイプデータセットに基付く一連のパラレルな処理手続き群(本願ではこの一連の処理手続きを以下単に「複数ジョブステップJCL」と呼ぶ)を考慮せずに作成した処理手続き群を対象として、以上のデータセットと処理手続きとの関係を検査し、並列に実行可能な処理手続き(以下単に「ジョブステップ」と呼ぶ)を選定する装置及び方法に関する。
【0002】
【従来の技術の問題点】
従来から手続きの命令を記述したJCL(ジョブ制御文)に記述されたジョブステップは記述された順に各ジョブステップが実行されるべき約束であった。複数の命令実行処理部を持つ計算機では、各ジョブのジョブステップが支障がなければ並列に実行されるとシステム効率が向上する。特に先行ジョブステップが出力したデータセットのデータを後続のジョブステップが入力して処理する場合、データセットを直接アクセス記憶装置または、磁気テープ装置を利用せずにシステム記憶に仮想的ファイルを確保しパイプデータセットとして確保する方式が採用される。この時、複数のジョブステップで指定した同一パイプデータセット間の関係や排他利用したデータセットの関係から、並列に実行可能なジョブステップを正確に並列実行させるJCLを生成することはたいへん困難であった。
【0003】
【発明が解決しようとする課題】
本願は複数ジョブステップのJCLを対象とし、パイプデータセット適用可能検査と排他利用したデータセットの検査結果から並列実行可能なパイプデータセットを選別すること、および、パイプデータセット適用可能データセットの使用区間を検査すること、並列に実行出来るジョブステップのパラレルグループを決定することを目的とする。
【0004】
また本願は、JCLを読み、読み込まれたJCLの構文およびデータセットの使用方法を検査し、ジョブステップ並列化を検査し、ジョブステップ並列化の結果を編集および出力してジョブステップを並列に実行させるJCL生成案を提示することを目的とする。
また本願は、JCLを読み、読み込まれたJCLの構文およびデータセットの使用方法を検査し、ジョブステップ並列化実行を検査し、複数ジョブステップ用JCLからジョブステップの並行実行を可能とする並列ジョブステップJCLを生成することを目的とする。
【0005】
また本願は、JCLを読み、読み込まれたJCLの構文およびデータセットの使用方法を検査し、この出力により並列にジョブステップの実行を可能とすることを目的とする。
【0006】
【課題を解決するための手段】
図1は本願実施の概略図であり、この図に沿って解決手段の概略を述べる。図1の100はジョブステップ並列化検査装置で、111は本願で新たに発明した並列化検査手段である。複数ジョブステップJCL120をJCL読込解析部101が読み込み、並列化検査手段111が、以下パラレルジョブステップの検査を実行する。
【0007】
並列化検査手段111の各構成要素は以下の様に動作する。データセット名一覧表作成部102では、検査するJCL中で使用されている全てのデータセットに関するデータセット名一覧表リストを作成する。
データセット適用可能検査部103では、データセット名一覧表リストを使い、排他利用したデータセットで区切られたパイプデータセットの並列実行適用可能な区間内で、ジョブステップが並列実行可能なデータセットを選びだす。適用不可能なデータセットのデータセット一覧表は削除される。
【0008】
並列実行可能検査部104では、データセット名一覧表リストにある並列実行の適用可能なパイプデータセットの使用区間内で、ジョブステップが並列実行可能かを検査する。並列実行不可能な区間を持つデータセットのデータセット一覧表は削除される。
パラレルグループ決定部105では、データセット名一覧表リストのパイプデータセット適用可能なデータセットの使用区間をもとに、並列に実行可能なジョブステップ群を同一のパラレルグループとして決定する。
【0009】
リスト編集部106は、並列実行可能なパラレルグループを印刷用に編集したり、JCL出力部の出力を印刷用に編集出力する。
JCL出力部107は、複数ジョブステップJCL、または、並列ジョブステップJCLを外部ファイル140に出力する。
並列ジョブステップ実行装置110はパラレルグループ決定部105の出力を直接または、並列ジョブステップJCL用のファイル140を入力として、並列ジョブステップを実行させる。
【0010】
【作用】
本願は、複数ジョブステップJCLからデータセット名の一覧表を作成し,データセットの使用方法の情報によりパイプデータセットの適用が不可能と判断されるデータセットのデータセット名一覧表が削除され、削除される際にジョブステップ間でのデータセットの排他的使用によりジョブステップの並列実行が不可能となるジョブステップグループ情報が更新されていく。データセット名の一覧表に残ったデータセットの使用開始から終了までの区間の情報と、ジョブステップの並列実行が不可能となるジョブステップグループの情報により、パイプデータセット適用可能なデータセットとパラレルグループの決定が行われる。
【0011】
更に本願は複数ジョブステップJCLが読み込まれると、JCLの構文とデータセットの使用方法について検査され、その情報をもとにジョブステップ並列化検査方法によってジョブステップ並列化検査が行われ,その結果から検査結果リストが編集され出力される。
さらに本願は、複数ジョブステップJCLを読込、JCLの構文とデータセットの使用方法について検査し、その情報をもとにジョブステップ並列化検査方法によってジョブステップ並列化検査を行い、その結果から、入力した複数ジョブステップJCLに修正が加えられパラレルジョブステップとパイプデータセットを適用した並列ジョブステップ指定のJCLに変換され,出力される。
【0012】
さらに本願は、複数ジョブステップJCLを読込、JCLの構文とデータセットの使用方法について検査し、並列ジョブステップの実行に必要な情報が作成され、並列化されたジョブを実行させる。
【0013】
【実施例】
図2はパイプデータセットによるパラレルジョブステップ間のデータの受け渡しを示す図である。
パイプデータセットとは、並列実行するジョブステップ間でのデータの受け渡しに使用するシステム記憶上のデータセットである。
【0014】
書込み側のジョブステップが作成・出力したデータは、直ちにパイプデータセットを経由して読込み側のジョブステップに渡される。読込み側のジョブステップにデータが渡された後、パイプデータセット内のデータは削除されるため、引継ぎするデータ量がどんなに大量でもシステム記憶上のわずかな領域(64Kバイト〜数100Kバイト)で処理が可能であり、システム記憶の有効利用が図れる。
【0015】
ジョブステップ1から3の中での最初のパイプデータセットのオープン時(ジョブステップ2が最初にオープンしたとするとその時)に、システム記憶上にパイプデータセット用のシステム記憶ファイルを獲得する、最初のオープン時以外の場合には、パイプデータセット用のシステムファイルへのアクセス環境を整える。
【0016】
読込み側(例えばジョブステップ2)が先にオープンし読込みを開始したが、書込み側(ジョブステップ1)がまだ動作していなかったり、書込みを開始していない場合には、その読込み処理で書込み側がデータを書き込むのを待つ。
書込み側ではB1,B2,B3,・・,Bn,Bn+1,・・(ブロック単位)の順に、データをパイプデータセットに書込む。データはシステム記憶ファイル上に一時的に蓄積される。
【0017】
読込み側(ジョブステップ2,ジョブステップ3)は、データが書き込まれると同時に読込み可能となり、B1,B2,B3,・・・の順にデータを読み込む。すべての読込み側ジョブステップには,同じデータが渡る。同一データがすべての読込み側ジョブステップで読み込まれると、そのデータを蓄積したシステム記憶ファイル上の領域が解放される。システム記憶ファイル上の領域はサイクリックに使用される。
【0018】
データの書き込み時に、パイプデータセットが蓄積データで一杯になっている場合には、読込み側がデータを読み込んでパイプデータセットに空きができるまで書込み側ジョブステップが待つ。また、データの読込み時に、パイプデータセット上にデータがない場合には、書込み側ジョブステップがデータを書き込むまで読込側ジョブステップが待つ。
【0019】
以上により,書込み側(ジョブステップ1),読込み側(ジョブステップ2,ジョブステップ3)ともに非同期に並列実行しながらデータの受け渡しが可能となる。
表1はデータセットの排他使用とみなすDISPパラメタの指定を示している。データセットの排他使用の判定については、JCL中のDD文に指定されたDISPパラメタによって決定される。データセットを排他使用しているとみなすDISPパラメタの指定を以下に示す。
【0020】
なお、DD文にDISPパラメタが指定されないときは、DISP=(NEW,DELETE,DELETE)が指定されたものとみなされる。この右辺の第1パラメータはデータセットを確保する時の最初の状態であり(NEWは新規生成,OLDは既存,SHRは共用読出)、第2パラメータは正常終了時のデータセットの処置(KEEPは保存,PASSは後続ジョブステップ利用、DELETEは削除)、第3パラメータは異常終了時のデータセットの処置(第2と同じ)である。
【0021】
【表1】
図1のデータセット名一覧表作成部102では検査するJCL中で使用されている全てのデータセットに関するデータセット名一覧表と、各データセット名一覧表をつないだデータセット名一覧表リストを作成する。
【0022】
データセット名一覧表は図3のようにデータセット名,データセットを使用しているジョブステップ番号,DD文番号を格納するエントリからなり、エントリ数は1つまたは複数である.
1つのデータセット名一覧表中のエントリはジョブステップ番号が昇順になるように並べる。また、データセット名一覧表どうしは先頭エントリのジョブステップ番号が昇順になるように、またジョブステップ番号が等しいときはDD文番号が昇順になるように並べるものとする。
【0023】
図1のデータセット適用可能検査部103ではデータセット名一覧表にあるデータセットについて、パイプデータセット適用不可能なデータセット名一覧表を削除し、そのデータセットを排他使用しているジョブステップ番号の組をジョブステップマトリクスに並列実行不可能なジョブステップのグループとして登録する。
【0024】
ジョブステップマトリクスは,図4のようにジョブステップ番号が行,列にとってあるマトリクスで、並列実行不可能なジョブステップの組をマトリクス上に印を付けていく。図4の例ではジョブステップ番号2とジョブステップ番号5のジョブステップの組み合わは並列実行不可能なことを示している。ジョブステップマトリクスは初期状態では全てのジョブステップが並列実行可能な状態となっている。
【0025】
図1の並列実行可能検査104ではデータセット名一覧表リストにある各データセットの使用区間でジョブステップが並列実行可能かをジョブステップマトリクスにより検査し、並列実行不可能ならデータセット名一覧表をデータセット名一覧表リストから削除される。
並列実行可能なら、図5に示すような先頭ジョブステップ番号と終了ジョブステップ番号からなる並列実行必須区間と使用区間をあわせた区間で、並列実行可能かを検査し、並列実行可能なら並列実行必須区間を更新し、並列実行不可能ならデータセット名一覧表を削除する。
【0026】
データセット名一覧表を削除する際には、データセットの排他使用の検査を行い、排他使用しているジョブステップの組をジョブステップマトリクスに登録する。
図1のパラレルグループ決定部105ではデータセット名一覧表のパイプデータセット適用可能なデータセットの使用区間と、どのパイプデータセット適用可能なデータセットの使用区間にも属さないジョブステップとを、並列実行可能かをジョブステップマトリクスにより検査してパラレルグループリストを作成し、同一のパラレルグループとして動作可能なジョブステップの組を決定する。
【0027】
パラレルグループリストは第6図の様にパラレルグループ先頭番号とパラレルグループ終了番号からなるエントリを複数持ち、1つのエントリで示される区間のジョブステップが同一のパラレルグループとして動作可能となっている。
図7〜10の4っの図は実際にどのような仕組みでデータを受け渡しているかの詳細なフローチャートであり、ジョブステップ並列化検査における手順を示している。以下図7〜10に従い、図11の検査対象となるJCLの一例図を例としその処理に沿って説明するが、同時に図12データセットの検査一覧表,図13データセットの検査一覧表リストの作成完了時の状態と並び,図14ジョブステップマトリックス,図15データセット名一覧表リスト,図16〜17並列実行必須区間,図18データセット名一覧,図19ジョブマトリックス,図20並列実行必須区間,図21〜28パラレルグループリスト,図29データセット名の一覧表リストを用いて説明する。また、以下単にステップと言うのは図7〜10の各フロー構成ステップであり、ジョブステップとは別である。
【0028】
図8の検査対象となるJCLの一例図であり、ジョブステップ番号1のDD文番号1と,ジョブステップ番号4のDD文番号2と,ジョブステップ番号7のDD文番号1でデータセットZを定義している。
(図7〜10)ステップ1はJCLの先頭から使用されているデータセットを調査し、図12に示すようなデータセット名一覧表を作成する。
【0029】
同様にしてデータセット&&A,&&B,&&C,&&Dについてもデータセット名一覧表を作成する。データセット名一覧表は先頭エントリのジョブステップ番号の小さい方から、ジョブステップ番号が同一ならDD文番号が小さい方から順に並べる。これでデータセット名一覧表の作成は終了となる。この時点でのデータセット名一覧表とその並びを図13データセット名一覧表作成終了時の状態と並びに示す。
【0030】
ステップ2は先頭のデータセット名一覧表のデータセットZについて,パイプデータセット適用可能検査を行う。ここでパイプデータセット適用不可能とされる条件には、データセットをジョブ内の1DD文のみで定義している場合、データセットを新規に作成しない場合、1つのジョブステップ中に同一名のデータセットを複数個DD文で定義している場合等がある。
【0031】
ここでデータセットZはジョブステップ番号1,4,7のDD文で,ともにDISP=OLDまたはSHRとしていてデータセットを新規に作成していないので、パイプデータセット適用不可能と判定される(ステップ3YES)。
ステップ4のデータセット排他使用検査では、データセット名一覧表の各エントリで示されるDD文で、データセットの排他使用を指定しているかを検査する。データセットZは先頭のエントリで示されるジョブステップ番号1のDD文でDISP=OLDとしているので、排他使用ありと判定される(ステップ5YES)。
【0032】
ステップ6のジョブステップマトリクス設定では、排他使用しているジョブステップ番号と同一データセット名一覧表中の他のジョブステップ番号の全ての組を、並列実行不可能なジョブステップの組としてジョブステップマトリクスに設定する。データセットZの場合、ジョブステップ番号1とそれ以外の番号の組、つまりジョブステップ番号1と4の組、1と7の組が並列実行不可能なジョブステップの組として設定される。ジョブステップマトリクスに設定する際に、例えば2と4の組と4と2の組は同じ意味を持つので、ジョブステップ番号の小さい方を行、大きい方を列の番号として設定する、よってドットで示した部分は未使用部分である。
【0033】
この時点でのジョブステップマトリクスの状態は図14に示すように、ジョブステップ1の行はジョブステップ4と7の位置に並列実行不可の表示を付加する。
ステップ7でデータセットZについてのデータセット名一覧表はパイプデータセット適用可能ではなく、又データセットのステップ間での排他使用の検査が終了したのでデータセット名一覧表リストから削除する。
【0034】
ステップ8の終了検査では、全てのデータセット名一覧表の検査が終了していないと(ステップ8NO)、続いてデータセット&&Aについてパイプデータセット適用可能検査を行う。データセット&&Aはパイプデータセット適用不可能となる条件に当てはまらない(ステップ3NO)。同様にして、データセット&&B,&&C,&&Dの順にパイプデータセット適用可能検査を行う。データセット&&B,&&C,&&Dともにパイプデータセット適用不可能になる条件に当てはまらないのでパイプデータセット適用可能となる。
【0035】
この時点でのデータセット名一覧表とその並びの状態を第15図データセット名一覧表リストに示す。ジョブステップマトリクスの状態は、パイプデータセット適用不可能となるデータセットがデータセットZ以外にはないので、第11図の状態は変化しない。
ステップ8で全てのデータセット名一覧表の検査が終了すると、ステップ9で並列実行必須区間を初期化する。初期化した時点での並列実行必須区間は図16並列実行必須区間で示す様に先頭ジョブステップも最終ジョブステップも共に第1ジョブステップの値となっている。
【0036】
ステップ10の並列実行可能検査では、データセット&&Aの使用区間で、区間内のジョブステップが並列実行可能か検査する。データセット&&Aの使用区間は、データセット名一覧表の先頭エントリと最終エントリのジョブステップ番号から、ジョブステップ番号1から3までとなるので(これを使用区間(1,3)とする)、ジョブステップマトリクスでジョブステップ番号1と2,1と3,2と3の組が全て並列実行可能となっていれば、データセット&&Aの使用区間(1,3)でジョブステップが並列実行可能となる。
【0037】
この場合、データセット&&Aの使用区間内では全てのジョブステップが並列実行可能と判定される(ステップ11YES)。
また、並列実行必須区間は(1,1)で、データセット&&Aの使用区間は(1,3)なので、区間は重複していると判定される(ステップ12YES)。
ステップ13は重複した区間を合わせて1つの区間としたときに、その区間内のジョブステップが全て並列実行可能かを検査する。並列実行必須区間(1,1)は使用区間(1,3)に含まれているため、2つの区間を合わせた区間内のジョブステップは明らかに並列実行可能となる(ステップ14YES)。
【0038】
ステップ15は並列実行必須区間の更新処理を行う。並列実行必須区間の終了ジョブステップ番号の1とデータセット使用区間の終了ジョブステップ番号の3と比較して大きい方の3を並列実行必須区間の終了ジョブステップ番号とする。
この時点での並列実行必須区間の状態を図17に示す。
ステップ20ではまだデータセット&&B,&&C,&&Dについての検査が終了していないので(NO)、ステップ10にもどり次のデータセット&&Bについて並列実行可能検査を行う。
【0039】
データセット&&Aと同様にしてジョブステップマトリクスを検査すると、ジョブステップ番号2と3,2と4,3と4が並列実行可能なので、データセット&&Bの使用区間(2,4)では、全てのジョブステップが並列実行可能となる(ステップ10,11)。また、ステップ13では、並列実行必須区間(1,3)と使用区間(2,4)はジョブステップが重複するので(ステップ12YES)、2つの区間を合わせた区間(1,4)で全てのジョブステップが並列実行可能か検査する。ところが、ジョブステップマトリクスではジョブステップ番号1と4が並列実行不可能となっているので(ステップ14NO)、データセット&&Bについてステップ16でデータセット排他使用検査を行う。
【0040】
ステップ17でデータセット&&Bは、ジョブステップ番号2,4で排他使用(DISP=NEWまたはOLD)なので(YES)、排他使用しているジョブステップ番号とデータセット名一覧表中の他の全てのジョブステップ番号の組(ジョブステップ番号2,4の組)を、並列実行不可能なジョブステップとしてジョブステップマトリクスにステップ18で登録し、データセット&&Bのデータセット名一覧表をデータセット名一覧表リストからステップ19で削除する。
【0041】
この時点でのデータセット名一覧表リストを図18に、ジョブステップマトリクスの状態を図19に示す。並列実行必須区間は図17のままで変化はない。
データセット&&C,&&Dについての検査は終了していないので(ステップ20NO)、次のデータセット&&Cについて、ステップ10以下の処理を行う。
【0042】
ジョブステップマトリクスからジョブステップ番号4と5は並列実行可能となるので、データセット&&Cの使用区間(4,5)では全てのジョブステップが並列実行可能となり(ステップ11YES)、並列実行必須区間(1,3)と使用区間(4,5)はジョブステップが重複しないので(ステップ12NO)、使用区間を新たな並列実行必須区間とする(ステップ15)。
【0043】
この時点での並列実行必須区間は,図20で示す状態になっている。
データセット&&Dについての検査が終了していないので(ステップ20NO)、データセット&&Dについてステップ10以下の処理を行う。
図19ジョブステップマトリクスからジョブステップ番号5と6は並列実行可能となるので、データセット&&Dの使用区間(5,6)では全てのジョブステップが並列実行可能となる(ステップ11YES)。
【0044】
並列実行必須区間(4,5)と使用区間(5,6)はジョブステップが重複するので(ステップ12YES)、2つを合わせた区間(4,6)で全てのジョブステップが並列実行できるかジョブステップマトリクスを検査する。ジョブステップ番号4と5,4と6,5と6は並列実行可能なので、区間(4,6)では全てのジョブステップが並列実行可能となり(ステップ14でYES)、並列実行必須区間の終了ジョブステップ番号を6に更新する(ステップ15)。
【0045】
全てのデータセット名一覧表を検査終了したので(ステップ20YES)、ステップ18のジョブステップマトリクス設定を行ったか検査する。データセット&&Bを検査した際にジョブステップマトリクスを更新したので(ステップ21YES)、ステップ9以下の処理を再び行う。
ステップ9の並列実行必須区間初期化処理後のデータセット名一覧表は図18に、ジョブステップマトリクスは図19、並列実行必須区間は図16の状態になっている。
【0046】
全てのデータセット名一覧表についてステップ10から20の処理を行うと、削除されるデータセット名一覧表や,ジョブステップマトリクスを更新することなくステップ20まで終了するので(ステップ21NO)、ステップ22以下の処理に進む。
ステップ22はパラレルグループリストを初期化し処理中エントリとする。この時点でのパラレルグループリストの状態を図21に示す。
【0047】
データセット&&Aのデータセット名一覧表を検査し、データセットの使用区間と処理中エントリが示すグループ区間が重複するか検査する(ステップ23)。
データセットの使用区間(1,3)とグループ区間(1,1)はジョブステップが重複するので(ステップ24YES)、処理中エントリのパラレルグループ終了番号をデータセットの使用区間の終了ジョブステップ番号で更新する。この時点でのパラレルグループリストの状態を図19に示す。
【0048】
検査していないデータセット名一覧表があるので(ステップ26NO)、残りのデータセット名一覧表について検査する。データセット&&Bは使用区間(4,5)がデータセット&&Cは使用区間(5,6)がグループ区間(1,3)とジョブステップが重複しないので(ステップ24NO)、処理中エントリの更新は行わない。 全てのデータセット名一覧表を検査したので(ステップ26YES)、処理中エントリのパラレルグループ終了番号が最終ジョブステップ番号と等しいか検査する。最終ジョブステップ番号は7で等しくないので(ステップ27NO)、次のエントリを処理中エントリのパラレルグループ終了番号+1の値で初期化し、次エントリを処理中エントリとする(ステップ28)。この時点でのパラレルグループリストの状態を図23に示す。
【0049】
再度、全てのデータセット名一覧表について、ステップ23から26の処理を行う。データセット&&Aの使用区間(1,3)は処理中エントリのグループ区間(4,4)とジョブステップが重複しないが、データセット&&Bの使用区間(4,5)のジョブステップが重複するので処理中エントリを更新する。更新後のパラレルグループリストの状態を図24に示す。
【0050】
データセット&&Cの使用区間(5,6)もグループ区間(4,5)と重複するので処理中エントリを更新する。更新後のパラレルグループリストを図25に示す。
全てのデータセット名一覧表を検査したが、処理中エントリのパラレルグループ終了番号が最終ジョブステップ番号の7に等しくないので、次のエントリを処理中エントリのパラレルグループ終了番号+1の値で初期化し、次エントリを処理中エントリとする。この時点でのパラレルグループリストの状態を図26に示す。
【0051】
再度、全てのデータセット名一覧表について、ステップ23から26の処理を行う。処理中エントリのグループ区間(7,7)と重複するデータセットの使用区間はないので、処理中エントリの更新はされない。処理中エントリのパラレルグループ終了番号が最終ジョブステップ番号と等しくなるので(ステップ27YES)、処理中エントリを先頭のエントリにして(ステップ29)、ステップ30以下の処理を行う。この時点でのパラレルグループリストの状態を図27に示す。
【0052】
処理中エントリのグループ区間(1,3)と次エントリのグループ区間(4,6)を合わせた区間で、並列実行可能かジョブステップマトリクスをステップ30で検査する。
ジョブステップ番号1と4,2と4の組が並列実行不可能となり、2つのグループ区間を合わせた区間では並列実行不可能と判定されるので(ステップ31NO)、ステップ32で処理中エントリを次エントリに設定する。
【0053】
全エントリの処理を終えていないので(ステップ35NO)、ステップ31に戻り処理を続ける。
処理中エントリのグループ区間(4,6)と次エントリのグループ区間(7,7)を合わせた区間で、並列実行可能かジョブステップマトリクスを検査する。
並列実行不可能となるジョブステップの組がないので、2つのグループ区間を合わせた区間で並列実行可能となる(ステップ31YES)。
【0054】
処理中エントリのグループ区間と次エントリのグループ区間を合わせた区間を、ステップ33で処理中エントリの新たなグループ区間とし、次エントリを削除する(ステップ34)。この時点でのパラレルグループリストの状態を図28に示す。
処理中エントリが最終エントリになり、全エントリの処理が終了したので(ステップ35YES)、ステップ36でパラレルグループリスト内でパラレルグループ先頭番号とパラレルグループ終了番号が等しくなっている単独ジョブステップのエントリを削除する。今回は単独ジョブステップのエントリが存在しないので。パラレルグループリストは変化しない。
【0055】
以上で,ジョブステップの並列化検査は終了となる.最終的なパラレルグループリストの状態は図28、データセット名一覧表は図29に示す。
この検査結果を用いれば、JCLのどの部分を変更すればパラレルジョブステップとパイプデータセットを適用可能かわかるので、検査結果リストやパラレルジョブステップの表示や出力、パイプデータセットを適用した複数ジョブステップ指定のJCLに変換等が行える。例として挙げたJCLでは、データセット名一覧表にあるデータセット&&A,&&C,&&Dがパイプデータセット適用可能データセットとなる。データセット&&Aにパイプデータセットを適用するならば、ジョブステップ番号1,DD文番号2とジョブステップ番号3,DD文番号1のDD文を変更すればよい。また、パラレルグループリストの各エントリで示されるジョブステップ番号1から3,4から7の区間がそれぞれ並列実行可能なパラレルグループとなるので、各ジョブステップ番号のEXEC文にパラレルグループの指定をすればよいと分かる。この検査結果を用いて出力した検査結果リストの例を図30に示す。図30はで、JCLを変更する場合に修正が必要になる行に対し「<=」の記号より右側に修正する内容を示している。PARAGRPの項はパラレルグループ名で、パラレルグループの指定をする必要があることを示している。パラレルグループ名が同一になっているジョブステップが同一のパラレルグループとなる。次のPIPEの項はパイプデータセット名で、パイプデータセットの指定をする必要があることを示している。パラレルグループ名はパラレルグループリストのエントリ番号の前にGを付した形式、パイプデータセット名はデータセット名一覧表に通番を付し、その通番の前にPを付した形式としている。
【0056】
図31は並列ジョブステップ指定用に変換出力されたJCLの例で、図1の並列ジョブステップJCL140に出力されたJCLの一例を示しており、各ジョブステップ制御文に新たにパラレルグループのパラメータとしてPARAGRP=G001,PARAGRP=G002が付加されている。また、データセット名をパイプデータセット名に変更し、UNITパラメータを付加する。
【0057】
以上本願では処理手続きとしてはジョブステップを対象とし、並列実行する一連の処理手続きの単位としてはジョブを想定して説明したが本願はこれに限られる物ではなく複数の連続したプロセスを複数の処理装置で実施する場合には応用可能である。
従って、処理手続きとして並列実行の検査対象となる処理手続きは必ずしも連続している必要はなく、飛び飛びに選択された手続きであってもかまわない。また、その手続きの選択はジョブの単位とは限らず、手続きの属性(種類、実行時間帯、利用資源、所有者、所属、等)を考えた手続き群を対象として、並列実行可能な手続きを選定することができる。
【0058】
【発明の効果】
ジョブステップ並列化検査装置及び方法により、複数ジョブステップ用のJCLを対象とし、排他使用のデータセットおよびパイプデータセットを検査し、並列実行可能なジョブステップのパラレルグループを決定すること、決定したパラレルジョブステップを使用したJCLの生成や、決定したパラレルジョブステップを直接実行させることができるようになった。特に排他使用のデータセットとパイプデータセットの複合的な解析により、複雑な並列実行ジョブステップの実施が簡易に実行可能となった。
【図面の簡単な説明】
【図1】本願発明の構成図である。
【図2】パイプデータセットとパラレルジョブステップ説明図である。
【図3】本願発明のデータセット名一覧表リストの図である。
【図4】本願発明のジョブステップマトリクスの図である。
【図5】本願発明の並列実行必須区間の図である。
【図6】本願発明のパラレルグループリストの図である。
【図7】本願発明の構成フローチャート(その1)である。
【図8】本願発明の構成フローチャート(その2)である。
【図9】本願発明の構成フローチャート(その3)である。
【図10】本願発明の構成フローチャート(その4)である。
【図11】複数ジョブステップのJCLの例を示す図である。
【図12】データセットZについてのデータセット名の一覧表を示す図である。
【図13】データセット名一覧表リストの図である。
【図14】ジョブステップマトリクスの図である。
【図15】データセット名一覧表リストの図である。
【図16】並列実行必須区間の図である。
【図17】並列実行必須区間の図である。
【図18】データセット名一覧リストの図である。
【図19】ジョブステップマトリクスの図である。
【図20】並列実行必須区間の図である。
【図21】パラレルグループリストの図である。
【図22】パラレルグループリストの図である。
【図23】パラレルグループリストの図である。
【図24】パラレルグループリストの図である。
【図25】パラレルグループリストの図である。
【図26】パラレルグループリストの図である。
【図27】パラレルグループリストの図である。
【図28】パラレルグループリストの図である。
【図29】データセット名一覧表リストの図である。
【図30】診断結果リストの例を示す図である。
【図31】並列ジョブステップ用JCLの例を示す図である。
Claims (16)
- 複数の一連の処理手続きの実行を遂行する処理装置において、
使用されているデータセットに関するデータセット一覧表リストを作成し、
連続する処理手続きが使用するデータセットについて、データセットを排他利用する処理手続きの組み合わせを調べてパイプデータセットの適用が可能であるか否かを判断して、適用不可能なデータセットのデータセット一覧表をデータセット一覧表リストから削除し、
データセット名一覧表にある各データセットの使用区間でジョブステップが並列実行可能かを検査して、並列実行不可能なデータセット名一覧表をデータセット名一覧表リストから削除し、
データセット名一覧表リストのパイプデータセット適用可能なデータセットの使用区間をもとに、並列に実行可能なジョブステップ群を同一のグループとして決定する並列化検査手段を備えたこと、
を特徴とする並列処理手続き選定装置。 - 上記並列化検査手段は処理手続き命令を解析する処理手続き命令解析手段を備えたこと、
を特徴とする請求項1に記載の並列処理手続き選定装置。 - 上記並列化検査手段は複数処理手続き指定の処理手続き命令を読み込む処理手続き読込手段を備えたこと、
を特徴とする請求項1乃至請求項2に記載の並列処理手続き選定装置。 - 上記並列化検査手段は検査の結果リストを編集して出力するリスト編集手段を備えたこと、
を特徴とする請求項1乃至請求項3に記載の並列処理手続き選定装置。 - 上記処理手続き並列化検査手段からの検査結果をもとに並列処理手続きの実行に必要な処理手続きの実行命令を出力する処理手続き出力手段を備えていること、
を特徴とする請求項1乃至請求項4に記載の並列処理手続き選定装置。 - 前記請求項1乃至請求項5に記載の並列化実行処理手段と、その出力により並列実行可能な処理手続きを並列に実行させる処理手続き並列実行手段を設けたことを特徴とする並列処理実行処理装置。
- 前記請求項1乃至請求項6に記載の並列化実行処理手段は、ジョブを対象とし、処理手続きとして各ジョブステップを検査することを特徴とする並列処理実行処理装置。
- 前記請求項1乃至請求項7に記載の複数処理手続きとして、各手続きの属性をもとに選出した手続き群を対象として並列列実行可能の検査をすること、
を特徴とする並列処理実行装置。 - 使用されているデータセットに関するデータセット一覧表リストを作成し、
連続する処理手続きが使用するデータセットについてデータセットを排他利用する処理手続きの組み合わせを調べてパイプデータセットの適用が可能であるか否かを判断して、適用不可能なデータセットのデータセット一覧表をデータセット一覧表リストから削除し、
データセット名一覧表にある各データセットの使用区間でジョブステップが並列実行可能かを検査して、並列実行不可能なデータセット名一覧表をデータセット名一覧表リスト から削除し、
データセット名一覧表リストのパイプデータセット適用可能なデータセットの使用区間をもとに、並列に実行可能なジョブステップ群を同一のグループとして決定する並列化検査ステップを備えたことを特徴とする並列処理手続き選定方法。 - 前記並列化検査ステップが処理手続き命令を解析する処理手続き命令解析ステップを備えたこと、
を特徴とする請求項9に記載の並列処理手続き選定方法。 - 前記並列化検査ステップが複数処理手続き指定の処理手続き命令を読み込む処理手続き読込ステップを備えたこと、
を特徴とする請求項9乃至請求項10に記載の並列処理手続き選定方法。 - 前記並列化検査ステップは検査の結果リストを編集して出力するリスト編集ステップを備えたこと、
を特徴とする請求項9乃至請求項11に記載の並列処理手続き選定方法。 - 前記処理手続き並列化検査ステップからの検査結果をもとに並列処理手続きの実行に必要な処理手続きの実行命令を出力する処理手続き出力ステップを備えること、
を特徴とする請求項9乃至請求項12に記載の並列処理手続き選定方法。 - 前記請求項9乃至請求項13に記載の並列化実行処理ステップと、その出力により並列実行可能な処理手続きを並列に実行させる処理手続き並列実行ステップを設けたことを特徴とする並列処理実行処理方法。
- 前記請求項9乃至請求項14に記載の上記特許請求の並列化実行処理ステップは、ジョブを対象とし、処理手続きとして各ジョブステップを検査することを特徴とする並列処理実行処理方法。
- 前記請求項9乃至請求項15に記載の複数処理手続きとして、各手続きの属性をもとに選出した手続き群を対象として並列列実行可能の検査をすることを特徴とする並列処理実行方法。
Priority Applications (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP15657095A JP3755165B2 (ja) | 1995-06-22 | 1995-06-22 | 並列処理手続き選定装置及び方法 |
US08/666,931 US6279025B1 (en) | 1995-06-22 | 1996-06-20 | Parallel processing procedure selecting apparatus and method selecting and implementing parallel-executable processing procedures |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP15657095A JP3755165B2 (ja) | 1995-06-22 | 1995-06-22 | 並列処理手続き選定装置及び方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
JPH096628A JPH096628A (ja) | 1997-01-10 |
JP3755165B2 true JP3755165B2 (ja) | 2006-03-15 |
Family
ID=15630665
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP15657095A Expired - Fee Related JP3755165B2 (ja) | 1995-06-22 | 1995-06-22 | 並列処理手続き選定装置及び方法 |
Country Status (2)
Country | Link |
---|---|
US (1) | US6279025B1 (ja) |
JP (1) | JP3755165B2 (ja) |
Families Citing this family (13)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH11120040A (ja) | 1997-10-20 | 1999-04-30 | Fujitsu Ltd | 並列処理手続きの効果予測方法とそのための記録媒体 |
US6651074B1 (en) * | 1999-12-20 | 2003-11-18 | Emc Corporation | Method and apparatus for storage and retrieval of very large databases using a direct pipe |
CA2343437A1 (en) * | 2001-04-06 | 2002-10-06 | Ibm Canada Limited-Ibm Canada Limitee | Method and system for cross platform, parallel processing |
JP5226189B2 (ja) * | 2006-03-30 | 2013-07-03 | 富士通株式会社 | 伝票処理プログラムおよび伝票処理装置 |
JP4776571B2 (ja) * | 2007-03-16 | 2011-09-21 | 富士通株式会社 | 実行制御プログラム,実行制御方法及び実行制御装置 |
JP2009217405A (ja) * | 2008-03-07 | 2009-09-24 | Nec Corp | ジョブネットワーク自動生成方式及びプログラム |
JP5181183B2 (ja) | 2008-03-14 | 2013-04-10 | インターナショナル・ビジネス・マシーンズ・コーポレーション | 変換装置、サーバシステム、変換方法およびプログラム |
JP5033745B2 (ja) * | 2008-09-19 | 2012-09-26 | 株式会社日立システムズ | ジョブ管理システム及びジョブ管理方法 |
US8832173B2 (en) * | 2009-01-20 | 2014-09-09 | Sap Ag | System and method of multithreaded processing across multiple servers |
WO2014006729A1 (ja) * | 2012-07-05 | 2014-01-09 | 富士通株式会社 | 情報処理装置、情報処理方法、情報処理プログラム、及び記録媒体 |
JP6152675B2 (ja) * | 2013-03-27 | 2017-06-28 | 富士通株式会社 | ワークフロー制御プログラム、装置および方法 |
JP6176380B2 (ja) * | 2016-09-28 | 2017-08-09 | 富士通株式会社 | 情報処理装置、方法、及びプログラム |
US11455191B2 (en) | 2020-10-13 | 2022-09-27 | International Business Machines Corporation | Parallel task initialization on dynamic compute resources |
Family Cites Families (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH01259446A (ja) | 1988-04-11 | 1989-10-17 | Fujitsu Ltd | 分散システムにおける並行処理方式 |
JPH0833799B2 (ja) * | 1988-10-31 | 1996-03-29 | 富士通株式会社 | データ入出力制御方式 |
JP2818016B2 (ja) * | 1990-08-09 | 1998-10-30 | 株式会社日立製作所 | プロセス並列実行方法および装置 |
JP2925818B2 (ja) | 1991-04-05 | 1999-07-28 | 株式会社東芝 | 並列処理制御装置 |
JP2551312B2 (ja) | 1992-12-28 | 1996-11-06 | 日本電気株式会社 | ジョブステップ並列実行方式 |
-
1995
- 1995-06-22 JP JP15657095A patent/JP3755165B2/ja not_active Expired - Fee Related
-
1996
- 1996-06-20 US US08/666,931 patent/US6279025B1/en not_active Expired - Lifetime
Also Published As
Publication number | Publication date |
---|---|
US6279025B1 (en) | 2001-08-21 |
JPH096628A (ja) | 1997-01-10 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP3755165B2 (ja) | 並列処理手続き選定装置及び方法 | |
JP3699154B2 (ja) | データを自己記述式に符号化するための方法および装置 | |
EP3021224A1 (en) | Method and apparatus for producing a benchmark application for performance testing | |
CN114139923A (zh) | 任务关联性分析方法、装置及计算机可读存储介质 | |
Dumas et al. | Robotic Process Mining. | |
US7996824B2 (en) | Benchmark synthesis using workload statistics | |
US7277920B2 (en) | Implementing applications requiring access to multiple files | |
JP2013257803A (ja) | ジョブ運用管理システム | |
JPH11120040A (ja) | 並列処理手続きの効果予測方法とそのための記録媒体 | |
WO2005015430A1 (en) | A method of processing data for a system model | |
US20230281216A1 (en) | Systems and methods for a graphical user interface for data analysis and visualisation | |
JPH02165353A (ja) | 対話型データ処理方式 | |
US20090276603A1 (en) | Techniques for efficient dataloads into partitioned tables | |
JP7183034B2 (ja) | 単価管理装置、単価管理方法、及び単価管理プログラム | |
JP6132325B1 (ja) | システム開発支援装置 | |
JP3559581B2 (ja) | ジョブ実行制御方法 | |
JP2001154864A (ja) | プログラム作成装置、プログラム作成データを記録した記録媒体、及び、プログラム作成方法 | |
JP3722854B2 (ja) | データ編集装置 | |
JPH113247A (ja) | テストシステム | |
JPH05265731A (ja) | グローバルジョブネットワーク図作成装置 | |
JPH05274190A (ja) | ワークステーション稼働情報分析システム | |
JP2019096131A (ja) | プログラム関連分析装置 | |
JP2001265917A (ja) | 見積評価支援システム | |
JP2004348667A (ja) | プログラム結合支援装置およびプログラム結合支援プログラム | |
JP2000082057A (ja) | タグ名を用いたデータアクセス装置 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
RD01 | Notification of change of attorney |
Free format text: JAPANESE INTERMEDIATE CODE: A7421 Effective date: 20010110 |
|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20010316 |
|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20040901 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20041116 |
|
A521 | Written amendment |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20041227 |
|
A521 | Written amendment |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20041227 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20050809 |
|
A521 | Written amendment |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20051007 |
|
A521 | Written amendment |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20051007 |
|
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: 20051129 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20051212 |
|
R150 | Certificate of patent or registration of utility model |
Free format text: JAPANESE INTERMEDIATE CODE: R150 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20100106 Year of fee payment: 4 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20110106 Year of fee payment: 5 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20110106 Year of fee payment: 5 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20120106 Year of fee payment: 6 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20130106 Year of fee payment: 7 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20130106 Year of fee payment: 7 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20140106 Year of fee payment: 8 |
|
LAPS | Cancellation because of no payment of annual fees |