Deprecated: The each() function is deprecated. This message will be suppressed on further calls in /home/zhenxiangba/zhenxiangba.com/public_html/phproxy-improved-master/index.php on line 456
JP5958111B2 - Job management program, job management method, and job management apparatus - Google Patents
[go: Go Back, main page]

JP5958111B2 - Job management program, job management method, and job management apparatus - Google Patents

Job management program, job management method, and job management apparatus Download PDF

Info

Publication number
JP5958111B2
JP5958111B2 JP2012141175A JP2012141175A JP5958111B2 JP 5958111 B2 JP5958111 B2 JP 5958111B2 JP 2012141175 A JP2012141175 A JP 2012141175A JP 2012141175 A JP2012141175 A JP 2012141175A JP 5958111 B2 JP5958111 B2 JP 5958111B2
Authority
JP
Japan
Prior art keywords
job
execution
assigned
common data
node
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
Application number
JP2012141175A
Other languages
Japanese (ja)
Other versions
JP2014006657A (en
Inventor
泰介 小西
泰介 小西
輝彦 池田
輝彦 池田
敏郎 佐伯
敏郎 佐伯
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Fujitsu Ltd
Original Assignee
Fujitsu Ltd
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Fujitsu Ltd filed Critical Fujitsu Ltd
Priority to JP2012141175A priority Critical patent/JP5958111B2/en
Publication of JP2014006657A publication Critical patent/JP2014006657A/en
Application granted granted Critical
Publication of JP5958111B2 publication Critical patent/JP5958111B2/en
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Description

本件は、ジョブ管理プログラム、ジョブ管理方法及びジョブ管理装置に関する。   This case relates to a job management program, a job management method, and a job management apparatus.

従来より、複数のコンピュータ(計算ノード)を並列に実行させるためのジョブ管理装置がある。ジョブ管理装置は、ユーザによってジョブが入力されると、当該ジョブを計算ノードのいずれかに割り当てる(スケジューリング)。そして、ジョブ管理装置が、ジョブ処理を実行する計算ノードの記憶領域に対してジョブ及び当該ジョブで利用するデータを転送することで、計算ノードにおいてジョブが実行され、ジョブの結果がユーザ(端末)に対して出力される。   Conventionally, there is a job management apparatus for executing a plurality of computers (calculation nodes) in parallel. When a job is input by a user, the job management apparatus assigns the job to one of the computation nodes (scheduling). Then, the job management apparatus transfers the job and data used in the job to the storage area of the calculation node that executes the job processing, so that the job is executed in the calculation node, and the job result is the user (terminal). Is output for.

特開平10−40170号公報Japanese Patent Laid-Open No. 10-40170

ジョブの中には、大規模DBに対する処理を行うジョブも存在する。現状においては、ジョブ管理装置はジョブをジョブ単位で管理しているため、ジョブ毎に計算ノードの記憶領域に大規模DBを転送する必要がある。すなわち、同一計算ノードで一のジョブと他のジョブとを実行する場合、ジョブ管理装置は、一のジョブが終了した段階で大規模DBを計算ノードの記憶領域から一旦削除し、他のジョブを実行する際に当該他のジョブで利用する大規模DBを計算ノードの記憶領域に再度格納することとしている。この場合、大規模DBは数百GBに及ぶこともあるため、大規模DBを計算ノードの記憶領域に格納するために多大な時間を要していた。   Among jobs, there are jobs that perform processing on large-scale DBs. At present, since the job management apparatus manages jobs on a job basis, it is necessary to transfer a large-scale DB to the storage area of the computation node for each job. That is, when one job and another job are executed on the same calculation node, the job management apparatus once deletes the large-scale DB from the storage area of the calculation node when one job is completed, When executing, the large-scale DB used for the other job is stored again in the storage area of the computation node. In this case, since the large-scale DB may reach several hundred GB, it takes a lot of time to store the large-scale DB in the storage area of the computation node.

なお、特許文献1には、あるプログラムが過去に使用したデータがキャッシュに残っている場合に、当該データを別のプログラムが使用できるのであれば、当該データを使用する点について開示されている。しかしながら、上記ジョブ管理装置では、計算ノードの記憶領域のデータをジョブ終了ごとに削除してしまうため、当該ジョブ管理装置に特許文献1の技術を適用することは困難である。   Note that Patent Document 1 discloses that when data used in the past by a program remains in the cache, the data can be used if another program can use the data. However, since the job management apparatus deletes the data in the storage area of the computation node every time the job ends, it is difficult to apply the technique of Patent Document 1 to the job management apparatus.

1つの側面では、本発明は、効率的なジョブ処理を行うことが可能なジョブ管理プログラム、ジョブ管理方法及びジョブ管理装置を提供することを目的とする。   In one aspect, an object of the present invention is to provide a job management program, a job management method, and a job management apparatus capable of performing efficient job processing.

本明細書に記載のジョブ管理プログラムは、ジョブの内容と、前記ジョブで利用する複数のジョブに対応した共通データの情報及び共通データと異なる個別データの情報と、が含まれる前記ジョブの実行命令を取得し、取得した前記ジョブの実行命令に基づいて、前記ジョブを複数の計算ノードのいずれかに割り当て、前記ジョブを割り当てた計算ノードに対して複数のジョブの実行に用いる共通データと個別データとを転送して、前記ジョブの実行指示前記ジョブを割り当てた計算ノードに対して、前記ジョブを割り当てた計算ノードにおいて実行が完了した前記ジョブの個別データの削除を指示するとともに、前記ジョブを割り当てた計算ノードにおいて実行が完了した前記ジョブの共通データと次に前記ジョブを割り当てた計算ノードで実行されるジョブの共通データとが一致する場合、および前記ジョブを割り当てた計算ノードにおいて実行が完了した前記ジョブの共通データを前記ジョブを割り当てた計算ノードで実行されている他のジョブの実行に用いている場合の少なくともいずれかの場合でなければ、前記ジョブを割り当てた計算ノードに対して前記ジョブの共通データの削除指示する、処理をコンピュータに実行させるジョブ管理プログラムである。
Job management programs described herein, the content of the job, execution of the said job information of the common data and said common data different from the individual data information corresponding to a plurality of jobs to be utilized in the job, it is included get the instruction, based on the execution command of the job acquired, allocating the job to one of the plurality of computing nodes, individual and common data used in the execution of a plurality of jobs to compute node assigned the job transfers the data to instruct the execution of the job, with respect to computing node assigned the job, instructs the deletion of the individual data of the job execution is completed in the calculation node assigned the job, common data and the next meter assigned the job of the job execution is completed in the calculation node assigned the job If the common data of the job that will be executed by the node matches, and other jobs that are running a common data of the job execution is completed in the calculation node assigned the job compute nodes assigned the job If not at least for one of the case of using the run, indicating the deletion of the common data of the job for the computing nodes assigned the job, a job management program for executing the processing to the computer.

本明細書に記載のジョブ管理方法は、ジョブの内容と、前記ジョブで利用する複数のジョブに対応した共通データの情報及び共通データと異なる個別データの情報と、が含まれる前記ジョブの実行命令を取得する取得工程と、取得した前記ジョブの実行命令に基づいて、前記ジョブを複数の計算ノードのいずれかに割り当て、前記ジョブを割り当てた計算ノードに対して複数のジョブの実行に用いる共通データと個別データとを転送して、前記ジョブの実行指示する実行指示工程と、前記ジョブを割り当てた計算ノードに対して、前記ジョブを割り当てた計算ノードにおいて実行が完了した前記ジョブの個別データの削除を指示するとともに、前記ジョブを割り当てた計算ノードにおいて実行が完了した前記ジョブの共通データと次に前記ジョブを割り当てた計算ノードで実行されるジョブの共通データとが一致する場合、および前記ジョブを割り当てた計算ノードにおいて実行が完了した前記ジョブの共通データを前記ジョブを割り当てた計算ノードで実行されている他のジョブの実行に用いている場合の少なくともいずれかの場合でなければ、前記ジョブを割り当てた計算ノードに対して前記ジョブの共通データの削除指示する削除指示工程と、をコンピュータが実行するジョブ管理方法である。
Job management methods described herein, the content of the job, execution of the said job information of the common data and said common data different from the individual data information corresponding to a plurality of jobs to be utilized in the job, are included an acquisition step of acquiring an instruction, based on the execution command of the job acquired, allocating the job to one of the plurality of computing nodes, used in executing a plurality of jobs to compute node assigned the job common It transfers the data and individual data, and the execution instruction step for instructing the execution of the job, with respect to computing node assigned the job, the individual data of the job execution is completed in the calculation node assigned the job It instructs the deletion of the common data and then prior to said job execution is completed in the calculation node assigned the job If the common data of the job that will be executed by the computing node that assigned the job matches, and is running the common data of the job execution is completed in the calculation node assigned the job compute nodes assigned the job If not at least for one of the case of using are for execution of other jobs, computer and delete instruction step, the instructing deletion of the common data of the job for the computing nodes assigned the job execution This is a job management method.

本明細書に記載のジョブ管理装置は、ジョブの内容と、前記ジョブで利用する複数のジョブに対応した共通データの情報及び共通データと異なる個別データの情報と、が含まれる前記ジョブの実行命令を取得する取得部と、前記取得部が取得した前記ジョブの実行命令に基づいて、前記ジョブを複数の計算ノードのいずれかに割り当て、前記ジョブを割り当てた計算ノードに対して複数のジョブの実行に用いる共通データと個別データとを転送して、前記ジョブの実行指示する実行指示部と、前記ジョブを割り当てた計算ノードに対して、前記ジョブを割り当てた計算ノードにおいて実行が完了した前記ジョブの個別データの削除を指示するとともに、前記ジョブを割り当てた計算ノードにおいて実行が完了した前記ジョブの共通データと次に前記ジョブを割り当てた計算ノードで実行されるジョブの共通データとが一致する場合、および前記ジョブを割り当てた計算ノードにおいて実行が完了した前記ジョブの共通データを前記ジョブを割り当てた計算ノードで実行されている他のジョブの実行に用いている場合の少なくともいずれかの場合でなければ、前記ジョブを割り当てた計算ノードに対して前記ジョブの共通データの削除指示する削除指示部と、を備えている。
Job management apparatus described herein, the content of the job, execution of the said job information of the common data and said common data different from the individual data information corresponding to a plurality of jobs to be utilized in the job, it is included an acquisition unit for acquiring instruction, based on the execution command of the job acquired by the acquiring unit, allocating the job to one of the plurality of computing nodes, a plurality of jobs to compute node assigned the job transfer the common data and individual data used in the execution, and the execution instruction unit for instructing the execution of the job, with respect to computing node assigned the job execution is completed in the calculation node assigned the job the instructs the deletion of the job of the individual data, the common data of the job execution is completed in the calculation node assigned the job If then the common data of the job that will be run on the compute nodes assigned the job matches, and the common data of the job execution is completed in the calculation node assigned the job compute nodes assigned the job If not at least for one of the case of using the execution of other jobs that are running, and a deletion instruction unit for instructing the deletion of the common data of the job for the computing nodes assigned the job, the I have.

本実施例に記載のジョブ管理プログラム、ジョブ管理方法及びジョブ管理装置は、効率的なジョブ処理を行うことができるという効果を奏する。   The job management program, the job management method, and the job management apparatus described in the present embodiment have an effect that efficient job processing can be performed.

一実施形態に係る情報処理システムの構成を概略的に示す図である。It is a figure showing roughly the composition of the information processing system concerning one embodiment. 図2(a)は、ログインノードのハードウェア構成図であり、図2(b)は、ジョブ管理ノードのハードウェア構成図である。FIG. 2A is a hardware configuration diagram of the login node, and FIG. 2B is a hardware configuration diagram of the job management node. ジョブ管理ノードの機能ブロック図である。It is a functional block diagram of a job management node. 図4(a)は、一実施形態において用いられるジョブスクリプトの一例を示す図であり、図4(b)は、従来のジョブスクリプトの一例を示す図である。FIG. 4A is a diagram illustrating an example of a job script used in an embodiment, and FIG. 4B is a diagram illustrating an example of a conventional job script. 図5(a)は、スケジューリングテーブルを示す図であり、図5(b)は、図5(a)のスケジューリングテーブルに基づいた各計算ノードにおけるジョブの処理状態の一例を示す図である。FIG. 5A is a diagram illustrating a scheduling table, and FIG. 5B is a diagram illustrating an example of a job processing state in each computation node based on the scheduling table in FIG. 5A. ジョブ管理ノードの処理を示すフローチャート(その1)である。It is a flowchart (the 1) which shows a process of a job management node. ジョブ管理ノードの処理を示すフローチャート(その2)である。10 is a flowchart (part 2) illustrating processing of a job management node. 図8(a)〜図8(c)は、計算ノードの処理を示すフローチャート(その1〜その3)である。FIG. 8A to FIG. 8C are flowcharts (part 1 to part 3) showing processing of the computation node. 図9(a),図9(b)は、計算ノードの処理を示すフローチャート(その4、その5)である。FIGS. 9A and 9B are flowcharts (No. 4 and No. 5) showing the processing of the calculation node. 一実施形態における共通ステージインファイルの転送の要否、削除の要否を纏めた表である。It is the table | surface which put together the necessity of transfer of the common stage in file in one Embodiment, and the necessity of deletion.

以下、一実施形態に係る情報処理システムについて、図1〜図10に基づいて詳細に説明する。   Hereinafter, an information processing system according to an embodiment will be described in detail with reference to FIGS.

図1には、一実施形態に係る情報処理システム100の構成が概略的に示されている。情報処理システム100は、一例として大規模なスーパーコンピュータシステムであり、複数のユーザ端末10と、大規模共有ファイルシステム80と、情報処理装置20と、を備える。ユーザ端末10、大規模共有ファイルシステム80、情報処理装置20は、ネットワーク70に接続されている。   FIG. 1 schematically shows a configuration of an information processing system 100 according to an embodiment. The information processing system 100 is a large-scale supercomputer system as an example, and includes a plurality of user terminals 10, a large-scale shared file system 80, and an information processing apparatus 20. The user terminal 10, the large-scale shared file system 80, and the information processing apparatus 20 are connected to the network 70.

ユーザ端末10は、ユーザが各種操作を行う端末であり、情報処理装置20(ログインノード22)へのログインを行ったり、ユーザが記述したジョブ実行命令(ジョブスクリプト)を情報処理装置20に送信したりする。   The user terminal 10 is a terminal on which a user performs various operations. The user terminal 10 logs into the information processing apparatus 20 (login node 22) or transmits a job execution command (job script) described by the user to the information processing apparatus 20. Or

大規模共有ファイルシステム80は、情報処理装置20(後述するログインノード22やジョブ管理ノード24)が利用するファイルシステムである。   The large-scale shared file system 80 is a file system used by the information processing apparatus 20 (a login node 22 and a job management node 24 described later).

情報処理装置20は、ログインノード22と、ジョブ管理装置としてのジョブ管理ノード24と、計算ノード261〜26N(Nは2以上の自然数)と、ローカルディスク281〜28Nと、を有する。各ノード22、24、261〜26Nは、内部ネットワーク30に接続されている。 The information processing apparatus 20 includes a login node 22, a job management node 24 as a job management apparatus, calculation nodes 26 1 to 26 N (N is a natural number of 2 or more), and local disks 28 1 to 28 N. . Each of the nodes 22, 24, 26 1 to 26 N is connected to the internal network 30.

ログインノード22は、ユーザのログイン処理や、プログラム開発(ソース編集/コンパイルなど)、ジョブ操作(投入/削除など)を実行するノードである。ログインノード22は、図2(a)に示すように、CPU90、ROM92、RAM94、ネットワークインタフェース96等を含み、各部は、バス98に接続されている。   The login node 22 is a node for executing user login processing, program development (source editing / compilation, etc.), and job operation (submission / deletion, etc.). As shown in FIG. 2A, the login node 22 includes a CPU 90, a ROM 92, a RAM 94, a network interface 96, and the like, and each unit is connected to a bus 98.

ジョブ管理ノード24は、ジョブ管理(受け付け等)、ジョブスケジューリング(ジョブを割り当てる計算ノードの決定)、ジョブ監視(計算ノード及びジョブの状態監視)を実行するノードである。ジョブ管理ノード24は、図2(b)に示すように、CPU190、ROM192、RAM194、ネットワークインタフェース196、可搬型記憶媒体用ドライブ199等を含み、各部は、バス198に接続されている。ジョブ管理ノード24では、CPU190が、ROM192等に格納されているプログラム(ジョブ管理プログラム)、或いは可搬型記憶媒体用ドライブ199が可搬型記憶媒体191から読み取ったプログラム(ジョブ管理プログラム)を実行することにより、図3の各部の機能が実現される。   The job management node 24 is a node that executes job management (acceptance, etc.), job scheduling (determination of a calculation node to which a job is allocated), and job monitoring (monitoring of the status of the calculation node and job). As shown in FIG. 2B, the job management node 24 includes a CPU 190, a ROM 192, a RAM 194, a network interface 196, a portable storage medium drive 199, and the like, and each unit is connected to a bus 198. In the job management node 24, the CPU 190 executes a program (job management program) stored in the ROM 192 or the like, or a program (job management program) read from the portable storage medium 191 by the portable storage medium drive 199. Thus, the function of each unit in FIG. 3 is realized.

図3には、ジョブ管理ノード24の機能ブロック図が示されている。図3に示すように、ジョブ管理ノード24は、CPU190がプログラムを実行することで、取得部40、スケジューリング部42、ステージイン処理部44、ジョブ処理指示部45、ステージアウト処理部46、及び削除指示部48、としての機能を実現する。   FIG. 3 shows a functional block diagram of the job management node 24. As illustrated in FIG. 3, the job management node 24 executes an acquisition program 40, a scheduling unit 42, a stage-in processing unit 44, a job processing instruction unit 45, a stage-out processing unit 46, and a deletion when the CPU 190 executes a program. The function as the instruction unit 48 is realized.

取得部40は、ユーザ端末10からログインノード22に対して入力されるジョブ(ジョブスクリプト)をログインノード22から取得する。図4(a)には、ジョブスクリプトの一例が示されている。図4(a)に示すように、ジョブスクリプトでは、「STDIN」において個別ステージインファイル(各ジョブ単独で利用するファイル)が指定されている。また、「STDIN_COMMON」において共通ステージインファイル(他のジョブと共通利用するファイル)が指定されている。また、図4(a)では、必要なCPU数として「6」が指定されている。なお、図4(b)には、従来のジョブスクリプトが示されているが、当該従来のジョブスクリプトでは、共通ステージインファイル(STDIN_COMMON)は指定されていない。   The acquisition unit 40 acquires a job (job script) input from the user terminal 10 to the login node 22 from the login node 22. FIG. 4A shows an example of a job script. As shown in FIG. 4A, in the job script, an individual stage-in file (a file used by each job alone) is specified in “STDIN”. In addition, a common stage-in file (a file shared with other jobs) is specified in “STDIN_COMMON”. In FIG. 4A, “6” is designated as the required number of CPUs. FIG. 4B shows a conventional job script, but the common stage-in file (STDIN_COMMON) is not specified in the conventional job script.

図3に戻り、スケジューリング部42は、計算ノード261〜26Nの処理能力(CPU数等)や負荷分散の観点等に基づいて、取得部40が取得したジョブを処理させる計算ノード26を決定する処理(スケジューリング)を行う。ここで、スケジューリング部42がスケジューリングした結果の一例が、図5(a)のスケジューリングテーブルに示されている。図5(a)のスケジューリングテーブルは、「ケース番号」と、「ジョブキュー」と、「共通ステージインファイル」と、「割当先計算ノード」の各フィールドを有する。「ケース番号」のフィールドには、通し番号が入力される。「ジョブキュー」のフィールドには、ジョブの識別子(ID)が入力される。「共通ステージインファイル」のフィールドには、各ジョブで用いる共通ステージインファイルの識別子が入力される。「割当先計算ノード」のフィールドには、スケジューリングの結果、各ジョブが割り当てられた計算ノードの情報が入力される。なお、このスケジューリングの結果、本実施形態では、図5(b)に示すように、計算ノード(compute-1)では、Job1とJob2が並行処理され、計算ノード(compute-2)では、Job3とJob5が連続して処理され、計算ノード(compute-5)では、Job4が単独で処理されるものとする。 Returning to FIG. 3, the scheduling unit 42 determines the calculation node 26 that processes the job acquired by the acquisition unit 40 based on the processing capability (number of CPUs) of the calculation nodes 26 1 to 26 N and the viewpoint of load distribution. Process (scheduling). Here, an example of the result of scheduling by the scheduling unit 42 is shown in the scheduling table of FIG. The scheduling table of FIG. 5A includes fields of “case number”, “job queue”, “common stage in file”, and “allocation destination calculation node”. A serial number is entered in the “case number” field. In the “job queue” field, a job identifier (ID) is input. In the “common stage in file” field, an identifier of the common stage in file used in each job is input. In the “assignment destination calculation node” field, information on a calculation node to which each job is assigned as a result of scheduling is input. As a result of this scheduling, in this embodiment, as shown in FIG. 5B, Job1 and Job2 are processed in parallel in the calculation node (compute-1), and Job3 and Job3 are calculated in the calculation node (compute-2). It is assumed that Job5 is processed continuously and Job4 is processed alone in the compute node (compute-5).

ステージイン処理部44は、図5(a)のスケジューリングテーブルと図4(a)のジョブスクリプトとに基づいて、ステージイン処理を実行する。すなわち、ステージイン処理部44は、ジョブ及び当該ジョブで利用する個別ステージインファイルと共通ステージインファイル(大規模共有ファイルシステム80に格納されている)とを割り当てられた計算ノードのローカルディスクに対して転送する(ファイルステージングと呼ばれる)。なお、ステージイン処理部44は、計算ノードのローカルディスクにジョブで用いる共通ステージインファイルと同一の共通ステージインファイルが格納されている場合には、当該共通ステージインファイルの転送は行わないものとする。   The stage-in processing unit 44 executes stage-in processing based on the scheduling table in FIG. 5A and the job script in FIG. That is, the stage-in processing unit 44 applies to the local disk of the computation node to which the job and the individual stage-in file used in the job and the common stage-in file (stored in the large-scale shared file system 80) are assigned. And transfer (called file staging). The stage-in processing unit 44 does not transfer the common stage-in file when the same common stage-in file as the common stage-in file used in the job is stored in the local disk of the computation node. To do.

ジョブ処理指示部45は、ステージイン処理を行った計算ノードに対してジョブ処理の指示を出す。   The job processing instruction unit 45 issues a job processing instruction to the computation node that has performed the stage-in processing.

ステージアウト処理部46は、ジョブ処理を実行した計算ノードに対してステージアウト処理を実行するよう指示を出す。ここで、ステージアウト処理とは、ジョブ処理の結果(出力ファイル)をローカルディスクからユーザ端末10に対して転送する処理を意味する。   The stage-out processing unit 46 instructs the computation node that has executed the job process to execute the stage-out process. Here, the stage-out process means a process of transferring a job process result (output file) from the local disk to the user terminal 10.

削除指示部48は、ステージアウト処理が完了したジョブの個別ステージインファイルをローカルディスクから削除する。また、削除指示部48は、スケジューリングテーブル(図5(a))を参照して、ステージアウト処理が完了したジョブの共通ステージインファイルをローカルディスクから削除すべきかを判断し、判断結果に基づいた処理を実行する。なお、共通ステージインファイルを削除するかしないかの判断の詳細については、後述する。   The deletion instruction unit 48 deletes the individual stage-in file of the job for which the stage-out processing has been completed from the local disk. The deletion instruction unit 48 also refers to the scheduling table (FIG. 5A) to determine whether the common stage-in file of the job for which stage-out processing has been completed should be deleted from the local disk, and based on the determination result Execute the process. The details of whether or not to delete the common stage-in file will be described later.

図1に戻り、計算ノード261〜26Nは、ジョブ管理ノード24の指示の下、ジョブ(ジョブスクリプト)を実行するノードである。計算ノード261〜26Nは、複数のCPUを有しており、各CPUが、ジョブ管理ノード24の指示に従った処理を実行する。 Returning to FIG. 1, the calculation nodes 26 1 to 26 N are nodes that execute jobs (job scripts) under the instruction of the job management node 24. The computation nodes 26 1 to 26 N have a plurality of CPUs, and each CPU executes processing in accordance with an instruction from the job management node 24.

ローカルディスク281〜28Nは、計算ノード261〜26Nがジョブ実行に使用するデータを格納するファイルストア領域として機能する。なお、ローカルディスク281〜28Nには、ジョブ管理ノード24によって大規模共有ファイルシステム80からデータ(個別ステージインファイル、共通ステージインファイル)が転送される。なお、以下においては、計算ノード261〜26N及びローカルディスク281〜28Nのいずれかを指す場合には、「計算ノード26」、「ローカルディスク28」と表記するものとする。 The local disks 28 1 to 28 N function as a file store area for storing data used by the computation nodes 26 1 to 26 N for job execution. Note that data (individual stage-in file, common stage-in file) is transferred from the large-scale shared file system 80 to the local disks 28 1 to 28 N by the job management node 24. In the following, when any one of the calculation nodes 26 1 to 26 N and the local disks 28 1 to 28 N is indicated, they are expressed as “calculation node 26” and “local disk 28”.

次に、本実施形態におけるジョブ管理ノード24と計算ノード26の処理について、図6〜図9のフローチャートに沿って詳細に説明する。   Next, processing of the job management node 24 and the calculation node 26 in the present embodiment will be described in detail with reference to the flowcharts of FIGS.

図6の処理では、まず、ステップS10において、取得部40が、ジョブ(ジョブスクリプト)を受け付けるまで待機する。そして、取得部40がジョブ(ジョブスクリプト)を受け付ける(取得する)と、ステップS12に移行し、スケジューリング部42は、スケジューリング処理を実行する。このスケジューリング処理により、ジョブが割り当てられる計算ノード26が決定する。なお、ここでは、ジョブスクリプトを投入したユーザが「A」であり、投入されたジョブのジョブIDが「12345」である場合について説明する。   In the process of FIG. 6, first, in step S10, the acquisition unit 40 stands by until a job (job script) is received. Then, when the acquisition unit 40 receives (acquires) a job (job script), the process proceeds to step S12, and the scheduling unit 42 executes a scheduling process. By this scheduling process, the computation node 26 to which the job is assigned is determined. Here, a case where the user who has input the job script is “A” and the job ID of the input job is “12345” will be described.

次いで、ステップS14では、ステージイン処理部44が、ジョブ実行を開始する。次いで、ステップS16では、ステージイン処理部44が、共通ステージイン転送処理を開始する。共通ステージイン処理では、まず、ステップS18において、ステージイン処理部44が、ジョブスクリプトにおいて共通ステージインファイルの指定(STDIN_COMMON)があるか否かを判断する。ここでの判断が否定された場合には、ステップS32に移行する(共通ステージイン処理を行わない)が、判断が肯定された場合には、ステップS20に移行する。   Next, in step S14, the stage-in processing unit 44 starts job execution. Next, in step S16, the stage-in processing unit 44 starts common stage-in transfer processing. In the common stage-in process, first, in step S18, the stage-in processing unit 44 determines whether there is a common stage-in file designation (STDIN_COMMON) in the job script. If the determination is negative, the process proceeds to step S32 (the common stage-in process is not performed). If the determination is affirmative, the process proceeds to step S20.

ステップS20に移行した場合、ステージイン処理部44は、ジョブスクリプトにおいて指定されている共通ステージインファイルが、他のジョブにおいて同一の計算ノードに対して転送中であるか否かを判断する。ここでの判断が肯定された場合には、ステップS22に移行する。ステップS22に移行した場合、ステージイン処理部44は、当該他のジョブに関する共通ステージインファイル転送処理完了通知(ステップS30参照)があったか否かを判断する。ここでの判断が否定された場合には、ステップS20に戻るが、判断が肯定された場合には、ステップS32に移行する(共通ステージイン処理を行わない)。   When the process proceeds to step S20, the stage-in processing unit 44 determines whether the common stage-in file specified in the job script is being transferred to the same calculation node in another job. When judgment here is affirmed, it transfers to step S22. When the process proceeds to step S22, the stage-in processing unit 44 determines whether there is a common stage-in file transfer process completion notification (see step S30) regarding the other job. If the determination is negative, the process returns to step S20. If the determination is positive, the process proceeds to step S32 (the common stage-in process is not performed).

一方、ステップS20の判断が否定された場合には、ステップS24に移行し、ステージイン処理部44は、共通ステージインファイルを計算ノード261〜26Nのいずれかに対して転送する。なお、共通ステージインファイルの実体は、例えば、/scratch/common/$User/$JOBID(本実施形態では、例えば、/scratch/common/A/12345/commondata.dat)下に配置されるものとする。 On the other hand, if the determination in step S20 is negative, the process proceeds to step S24, and the stage-in processing unit 44 transfers the common stage-in file to any of the computation nodes 26 1 to 26 N. The entity of the common stage-in file is, for example, arranged under / scratch / common / $ User / $ JOBID (in this embodiment, for example, /scratch/common/A/12345/commondata.dat). To do.

次いで、ステップS26では、ステージイン処理部44は、共通ステージインファイルへのシンボリックリンクを作成する。この場合、前述のように、共通ステージインファイルの実体は/scratch/common/$User/$JOBID下に配置されるので、ジョブが共通ステージインファイルを参照できるようにユーザ指定のパス(/scratch/)にシンボリックリンクを作成する(例えば、/scratch/12345/commondata.dat)。このようにして、ステージイン処理部44は、共通ステージインファイル転送処理を終了する(ステップS28)。   Next, in step S26, the stage-in processing unit 44 creates a symbolic link to the common stage-in file. In this case, as described above, since the entity of the common stage in file is placed under / scratch / common / $ User / $ JOBID, a user-specified path (/ scratch) can be used so that the job can refer to the common stage in file. Create a symbolic link to (/) (eg /scratch/12345/commondata.dat). In this way, the stage-in processing unit 44 ends the common stage-in file transfer process (step S28).

次いで、ステップS30では、ステージイン処理部44は、共通ステージイン転送処理完了通知を行う。その後は、ステップS32に移行する。   Next, in step S30, the stage-in processing unit 44 issues a common stage-in transfer process completion notification. Thereafter, the process proceeds to step S32.

ステップS32に移行した場合(ステップS18が否定された場合、ステップS22が肯定された場合、又はステップS30を経た場合)、ステージイン処理部44は、個別ステージイン処理を実行する。この場合、ステージイン処理部44は、ジョブが割り当てられている計算ノード26のローカルディスクに対して、個別ステージインファイルを転送する(例えば、/scratch/12345/input.dat)。   When the process proceeds to step S32 (when step S18 is denied, when step S22 is affirmed, or after step S30), the stage-in processing unit 44 executes the individual stage-in process. In this case, the stage-in processing unit 44 transfers the individual stage-in file to the local disk of the computation node 26 to which the job is assigned (for example, /scratch/12345/input.dat).

次いで、図7のステップS34に移行すると、ジョブ処理指示部45が、ジョブ処理指示を、スケジューリングテーブル(図5(a))で定められている割当先計算ノードに対して出力する。   Next, when the process proceeds to step S34 in FIG. 7, the job processing instruction unit 45 outputs a job processing instruction to the assignment destination calculation node defined in the scheduling table (FIG. 5A).

次いで、ステップS36では、ステージアウト処理部46が、ステージアウト処理の指示を計算ノード26に対して出力する。   Next, in step S <b> 36, the stage-out processing unit 46 outputs an instruction for stage-out processing to the calculation node 26.

次いで、ステップS38では、削除指示部48が、個別ステージインファイルの削除指示を計算ノード26に対して出力する。次いで、ステップS40では、削除指示部48が、共通ステージインファイル削除処理を開始する。この場合、削除指示部48は、ステップS42において、同一の共通ステージインファイルを使用するジョブが、同一の計算ノード26で実行されているか否かを判断する。ここでの判断が肯定された場合には、図6,図7の全処理を終了する(すなわち、共通ステージインファイルを計算ノード26のローカルディスクから削除しないようにする)。なお、ステップS42の判断が肯定される場合とは、図5(b)のcompute-1のような場合であり、Job1とJob2が同一の共通ステージインファイル(Data1)を利用しており、かつJob1が完了したときにJob2が実行中である場合である。   Next, in step S <b> 38, the deletion instruction unit 48 outputs an individual stage in file deletion instruction to the calculation node 26. Next, in step S40, the deletion instruction unit 48 starts the common stage-in file deletion process. In this case, the deletion instruction unit 48 determines whether or not jobs using the same common stage-in file are being executed in the same calculation node 26 in step S42. If the determination here is affirmed, all the processes in FIGS. 6 and 7 are terminated (that is, the common stage-in file is not deleted from the local disk of the computation node 26). The case where the determination in step S42 is affirmative is a case like compute-1 in FIG. 5B, where Job1 and Job2 use the same common stage-in file (Data1), and This is the case when Job2 is running when Job1 is completed.

一方、ステップS42の判断が否定された場合には、ステップS44に移行し、スケジューリング処理を実行する。この場合、削除指示部48は、後続ジョブの割当先計算ノードを特定する。   On the other hand, if the determination in step S42 is negative, the process proceeds to step S44, and scheduling processing is executed. In this case, the deletion instruction unit 48 specifies the assignment destination calculation node of the subsequent job.

次いで、ステップS46では、削除指示部48が、後続ジョブが同一計算ノードに割り当てられているか否かを判断する。ここでの判断が否定された場合、すなわち同一計算ノードに後続ジョブが割り当てられていない場合(共通ステージインファイルが直後に使用されない場合)には、ステップS50に移行する。ステップS50では、削除指示部48は、共通ステージインファイルの削除指示を計算ノード26に対して出力し、図6,図7の全処理を終了する。   Next, in step S46, the deletion instruction unit 48 determines whether the subsequent job is assigned to the same calculation node. If the determination here is negative, that is, if a subsequent job is not assigned to the same computation node (when the common stage-in file is not used immediately after), the process proceeds to step S50. In step S50, the deletion instruction unit 48 outputs an instruction to delete the common stage-in file to the calculation node 26, and ends all the processes in FIGS.

一方、ステップS46の判断が肯定された場合、すなわち、後続ジョブが同一の計算ノードに割り当てられている場合には、ステップS48に移行する。ステップS48では、後続ジョブが同一共通ステージインファイルを使用するか否かを判断する。ここでの判断が肯定された場合には、図6,図7の全処理を終了する(すなわち、共通ステージインファイルを計算ノードのローカルディスクから削除しないようにする)。なお、ステップS48の判断が肯定される場合とは、図5(b)のcompute-2のような場合であり、Job3の処理が完了した直後に同一の共通ステージインファイル(Data2)を使用するJOb5の処理が実行される場合である。   On the other hand, if the determination in step S46 is affirmative, that is, if the subsequent job is assigned to the same calculation node, the process proceeds to step S48. In step S48, it is determined whether or not subsequent jobs use the same common stage-in file. If the determination here is affirmed, all the processes in FIGS. 6 and 7 are terminated (that is, the common stage-in file is not deleted from the local disk of the computation node). The case where the determination in step S48 is affirmative is a case like compute-2 in FIG. 5B, and the same common stage-in file (Data2) is used immediately after the processing of Job3 is completed. This is a case where JOb5 processing is executed.

一方、ステップS48の判断が肯定された場合には、ステップS50に移行し、削除指示部48は、共通ステージインファイルの削除指示を計算ノード26に対して出力し、図6,図7の全処理を終了する。   On the other hand, if the determination in step S48 is affirmative, the process proceeds to step S50, and the deletion instruction unit 48 outputs a deletion instruction for the common stage-in file to the calculation node 26, and all of FIG. 6 and FIG. The process ends.

以上のように、図6,図7の処理では、ジョブ処理が完了した際に、同一の計算ノードで同一の共通ステージインファイルを使用する他のジョブが実行されている場合、及びジョブ処理が完了した直後に同一の計算ノードで同一の共通ステージインファイルを使用する他のジョブが実行されるような場合に、削除指示部48は、共通ステージインファイルをローカルディスクから削除しない(ローカルディスク上に残す)ようにしている。このようにすることで、ジョブごとに共通ステージインファイルを転送しなくてもよくなり、ステージイン処理の効率化を図ることができる。なお、共通ステージインファイルの転送の要否、削除の要否を表に纏めたもの(図5(a)のスケジューリングテーブルにフィールドを追加したもの)が、図10に示されている。本実施形態では、図10に示すように、共通ステージインファイルの転送のフィールド、及び共通ステージインファイルの削除のフィールドが「不要」になっている分だけ処理が効率化されているといえる。   As described above, in the processing of FIGS. 6 and 7, when job processing is completed, when another job using the same common stage-in file is executed on the same calculation node, and job processing is performed. When another job using the same common stage-in file is executed on the same computation node immediately after completion, the deletion instruction unit 48 does not delete the common stage-in file from the local disk (on the local disk). To leave). In this way, it is not necessary to transfer a common stage-in file for each job, and the efficiency of stage-in processing can be improved. FIG. 10 shows a summary of whether or not common stage-in files need to be transferred and whether or not they need to be deleted (added fields to the scheduling table of FIG. 5A). In this embodiment, as shown in FIG. 10, it can be said that the processing is made more efficient as much as the common stage-in file transfer field and the common stage-in file deletion field are “unnecessary”.

次に、計算ノード26の処理について、図8(a)〜図9(b)に基づいて説明する。なお、図8(a)〜図9(b)の各処理は、並行して行われる処理である。また、各処理は一旦終了した場合であっても随時繰り返し実行されるものとする。   Next, the processing of the calculation node 26 will be described with reference to FIGS. 8 (a) to 9 (b). 8A to 9B are processes performed in parallel. Each process is repeatedly executed as needed even if it is once completed.

(図8(a)の処理)
図8(a)の処理では、計算ノード26は、ステップS100において、共通ステージインファイルの転送処理を受け付けるまで(図6のフローチャートにおいてステップS24が行われるまで)待機する。この場合、計算ノード26は、転送処理を受け付けた段階で、ステップS102に移行し、共通ステージインファイルの転送処理を実行する。次いで、ステップS104では、計算ノード26は、共通ステージインファイル転送処理完了通知をジョブ管理ノード24及びユーザ端末10に対して送信し、図8(a)の全処理を終了する。
(Processing in FIG. 8A)
In the process of FIG. 8A, the computation node 26 stands by until a common stage-in file transfer process is accepted in step S100 (until step S24 is performed in the flowchart of FIG. 6). In this case, the computation node 26 proceeds to step S102 when the transfer process is accepted, and executes the transfer process of the common stage-in file. Next, in step S104, the computation node 26 transmits a common stage in-file transfer process completion notification to the job management node 24 and the user terminal 10, and ends all the processes in FIG.

(図8(b)の処理)
図8(b)の処理では、計算ノード26は、ステップS110において、ジョブ処理の指示を受け付けるまで(図7のフローチャートにおいてステップS34が行われるまで)待機する。この場合、計算ノード26は、ジョブ処理の指示を受け付けた段階で、ステップS112に移行し、ジョブ処理を実行する。次いで、ステップS114では、計算ノード26は、ジョブ処理完了通知をジョブ管理ノード24及びユーザ端末10に対して送信し、図8(b)の全処理を終了する。
(Processing in FIG. 8B)
In the process of FIG. 8B, the calculation node 26 stands by until an instruction for job processing is received in step S110 (until step S34 is performed in the flowchart of FIG. 7). In this case, the computation node 26 proceeds to step S112 when executing the job processing instruction and executes the job processing. Next, in step S114, the computing node 26 transmits a job processing completion notification to the job management node 24 and the user terminal 10, and ends all the processing in FIG.

(図8(c)の処理)
図8(c)の処理では、計算ノード26は、ステップS120において、ステージアウト処理の指示を受け付けるまで(図7のフローチャートにおいてステップS36が行われるまで)待機する。この場合、計算ノード26は、ステージアウト処理の指示を受け付けた段階で、ステップS122に移行し、ステージアウト処理を実行する。次いで、ステップS124では、計算ノード26は、ステージアウト処理完了通知をジョブ管理ノード24及びユーザ端末10に対して送信し、図8(c)の全処理を終了する。
(Processing in FIG. 8C)
In the process of FIG. 8C, the computation node 26 stands by until an instruction for the stage-out process is received in step S120 (until step S36 is performed in the flowchart of FIG. 7). In this case, when the calculation node 26 receives an instruction for the stage-out process, the calculation node 26 proceeds to step S122 and executes the stage-out process. Next, in step S124, the computation node 26 transmits a stage-out process completion notification to the job management node 24 and the user terminal 10, and ends all the processes in FIG.

(図9(a)の処理)
図9(a)の処理では、計算ノード26は、ステップS130において、個別ステージインファイル削除処理の指示を受け付けるまで(図7のフローチャートにおいてステップS38が行われるまで)待機する。この場合、計算ノード26は、個別ステージインファイル削除処理の指示を受け付けた段階で、ステップS132に移行し、個別ステージインファイル削除処理を実行する。次いで、ステップS134では、計算ノード26は、個別ステージインファイル削除処理完了通知をジョブ管理ノード24及びユーザ端末10に対して送信し、図9(a)の全処理を終了する。
(Processing in FIG. 9A)
In the process of FIG. 9A, the computation node 26 stands by until an individual stage in-file deletion process instruction is accepted in step S130 (until step S38 is performed in the flowchart of FIG. 7). In this case, when the calculation node 26 receives an instruction for the individual stage in file deletion process, the calculation node 26 proceeds to step S132 and executes the individual stage in file deletion process. Next, in step S134, the computation node 26 transmits an individual stage in file deletion process completion notification to the job management node 24 and the user terminal 10, and ends all the processes in FIG.

(図9(b)の処理)
図9(b)の処理では、計算ノード26は、ステップS140において、共通ステージインファイル削除処理の指示を受け付けるまで(図7のフローチャートにおいてステップS50が行われるまで)待機する。この場合、計算ノード26は、共通ステージインファイル削除処理の指示を受け付けた段階で、ステップS142に移行し、共通ステージインファイル削除処理を実行する。次いで、ステップS144では、計算ノード26は、共通ステージインファイル削除処理完了通知をジョブ管理ノード24及びユーザ端末10に対して送信し、図9(b)の全処理を終了する。
(Processing in FIG. 9B)
In the process of FIG. 9B, the computation node 26 stands by until an instruction for the common stage-in file deletion process is received in step S140 (until step S50 is performed in the flowchart of FIG. 7). In this case, when the calculation node 26 receives an instruction for the common stage in file deletion process, the calculation node 26 proceeds to step S142 and executes the common stage in file deletion process. Next, in step S144, the computation node 26 transmits a common stage in-file deletion process completion notification to the job management node 24 and the user terminal 10, and ends all the processes in FIG. 9B.

なお、これまでの説明から明らかなように、スケジューリング部42、ステージイン処理部44、及びジョブ処理指示部45を含んで、実行指示部としての機能が実現されている。   As is apparent from the above description, the function as the execution instruction unit is realized including the scheduling unit 42, the stage-in processing unit 44, and the job processing instruction unit 45.

以上、詳細に説明したように、本実施形態によると、取得部40が取得したジョブの実行命令に基づいて、スケジューリング部42がジョブを複数の計算ノードのいずれかに割り当て、ステージイン処理部44が割り当てた計算ノードに対して各ジョブの実行に用いる共通ステージインファイルと個別ステージインファイルを転送し、ジョブ処理指示部45がジョブの実行指示を出す。そして、削除指示部48は、実行が完了したジョブの共通ステージインファイルと次に同一の計算ノードで実行するジョブの共通ステージインファイルとが一致している場合(S46:肯定、S48:肯定)、及び実行が完了したジョブの共通ステージインファイルを同一の計算ノードで実行されている他のジョブの実行に用いている場合(S42:肯定)、のいずれにも該当しなければ、計算ノード26に対して共通ステージインファイルの削除指示を出す。このようにすることで、従来のようにジョブごとにステージイン処理を行い、ジョブが完了するごとにステージインファイルの全てを計算ノードのローカルディスクから削除するような場合と比較して、共通ステージイン処理の回数を減らすことができるため、処理の効率化を図ることができる。また、本実施形態によれば、ジョブのターンアラウンド時間の遅延や、キャッシュ溢れ、I/Oの競合によるシステム自体の性能悪化の発生を抑制することができる。   As described above in detail, according to the present embodiment, based on the job execution instruction acquired by the acquisition unit 40, the scheduling unit 42 assigns the job to one of a plurality of calculation nodes, and the stage-in processing unit 44. The common stage-in file and the individual stage-in file used for execution of each job are transferred to the computation node assigned by, and the job processing instruction unit 45 issues a job execution instruction. Then, when the common stage-in file of the job that has been executed and the common stage-in file of the job that is executed next on the same calculation node match (S46: affirmative, S48: affirmative) If the common stage-in file of the completed job is used for execution of another job being executed on the same calculation node (S42: Yes), the calculation node 26 To delete the common stage-in file. In this way, compared to the case where stage-in processing is performed for each job as in the past, and all of the stage-in files are deleted from the local disk of the computation node every time the job is completed, the common stage Since the number of in processes can be reduced, the process can be made more efficient. In addition, according to the present embodiment, it is possible to suppress the occurrence of performance degradation of the system itself due to delay in job turnaround time, cache overflow, and I / O contention.

また、本実施形態によると、削除指示部48は、ジョブの実行が完了したときにスケジューリングテーブル(図5(a))を確認して、後続ジョブの割当先計算ノードを特定するので、共通ステージインファイルの削除指示を適切に行うことが可能である。   Further, according to the present embodiment, the deletion instruction unit 48 checks the scheduling table (FIG. 5A) when the job execution is completed, and identifies the assignment destination calculation node of the subsequent job. It is possible to appropriately issue an in-file deletion instruction.

また、本実施形態によると、ステージイン処理部44は、ジョブの共通ステージインファイルが、ジョブに割り当てられた計算ノードで直前に実行されていたジョブの共通ステージインファイル又は現在実行されているジョブの共通ステージインファイルと同一である場合には、共通ステージインファイルを新たに計算ノードに対して転送しないこととしている。これにより、同一の共通ステージイン処理が重複して行われるのを防止することができるので、この点からも、処理の効率化を図ることが可能である。   Further, according to the present embodiment, the stage-in processing unit 44 determines that the common stage-in file of the job is the common stage-in file of the job that was executed immediately before in the calculation node assigned to the job or the job that is currently being executed. If the common stage-in file is the same, the common stage-in file is not newly transferred to the computation node. As a result, it is possible to prevent the same common stage-in process from being performed repeatedly, so that the efficiency of the process can also be improved.

なお、上記実施形態においては、ジョブのスケジューリングを、ジョブ受付後(S12)と、ステージアウト完了後の共通ステージインファイル削除前(S44)に行う場合について説明したが、これに限られるものではない。例えば、ジョブ終了後や、ジョブ状態変更後、スケジューリング部42の設定変更後に、ジョブのスケジューリングを行ってもよいし、定期的にジョブのスケジューリングを行ってもよい。   In the above embodiment, the case where job scheduling is performed after job reception (S12) and before common stage-in file deletion (S44) after completion of stage out has been described. However, the present invention is not limited to this. . For example, the job may be scheduled after the job is completed, after the job status is changed, or after the setting of the scheduling unit 42 is changed, or the job may be scheduled periodically.

なお、上記実施形態においては、削除指示部48は、実行が完了したジョブの共通ステージインファイルと次に同一の計算ノードで実行するジョブの共通ステージインファイルとが一致している場合(S46:肯定、S48:肯定)、及び実行が完了したジョブの共通ステージインファイルを同一の計算ノードで実行されている他のジョブの実行に用いている場合(S42:肯定)、のいずれにも該当しない場合に、共通ステージインファイルを削除する場合について説明したが、これに限られるものではない。例えば、上記2つの場合のうちの一方に該当する場合にのみ、共通ステージインファイルを削除するようにしてもよい。   In the above embodiment, the deletion instruction unit 48 matches the common stage-in file of the job that has been executed and the common stage-in file of the job that is executed next on the same calculation node (S46: Yes, S48: Yes), and the case where the common stage-in file of a job that has been executed is used to execute another job executed on the same computation node (S42: Yes) In this case, the case of deleting the common stage-in file has been described, but the present invention is not limited to this. For example, the common stage-in file may be deleted only when it corresponds to one of the above two cases.

なお、上記実施形態では、計算ノードが使用するステージインファイルを計算ノードのローカルディスクに転送する場合について説明したが、これに限られるものではない。例えば、計算ノード間で共有されているファイルシステムがある場合には、当該ファイルシステムに対してステージインファイルを転送するようにしてもよい。   In the above embodiment, the case where the stage-in file used by the calculation node is transferred to the local disk of the calculation node has been described. However, the present invention is not limited to this. For example, when there is a file system shared between the computation nodes, the stage-in file may be transferred to the file system.

なお、上記の処理機能は、コンピュータによって実現することができる。その場合、処理装置が有すべき機能の処理内容を記述したプログラムが提供される。そのプログラムをコンピュータで実行することにより、上記処理機能がコンピュータ上で実現される。処理内容を記述したプログラムは、コンピュータで読み取り可能な記録媒体(ただし搬送波は除く)に記録しておくことができる。   The above processing functions can be realized by a computer. In that case, a program describing the processing contents of the functions that the processing apparatus should have is provided. By executing the program on a computer, the above processing functions are realized on the computer. The program describing the processing contents can be recorded on a computer-readable recording medium (except for a carrier wave).

プログラムを流通させる場合には、例えば、そのプログラムが記録されたDVD(Digital Versatile Disc)、CD−ROM(Compact Disc Read Only Memory)などの可搬型記録媒体の形態で販売される。また、プログラムをサーバコンピュータの記憶装置に格納しておき、ネットワークを介して、サーバコンピュータから他のコンピュータにそのプログラムを転送することもできる。   When the program is distributed, for example, it is sold in the form of a portable recording medium such as a DVD (Digital Versatile Disc) or a CD-ROM (Compact Disc Read Only Memory) on which the program is recorded. It is also possible to store the program in a storage device of a server computer and transfer the program from the server computer to another computer via a network.

プログラムを実行するコンピュータは、例えば、可搬型記録媒体に記録されたプログラムもしくはサーバコンピュータから転送されたプログラムを、自己の記憶装置に格納する。そして、コンピュータは、自己の記憶装置からプログラムを読み取り、プログラムに従った処理を実行する。なお、コンピュータは、可搬型記録媒体から直接プログラムを読み取り、そのプログラムに従った処理を実行することもできる。また、コンピュータは、サーバコンピュータからプログラムが転送されるごとに、逐次、受け取ったプログラムに従った処理を実行することもできる。   The computer that executes the program stores, for example, the program recorded on the portable recording medium or the program transferred from the server computer in its own storage device. Then, the computer reads the program from its own storage device and executes processing according to the program. The computer can also read the program directly from the portable recording medium and execute processing according to the program. Further, each time the program is transferred from the server computer, the computer can sequentially execute processing according to the received program.

上述した実施形態は本発明の好適な実施の例である。但し、これに限定されるものではなく、本発明の要旨を逸脱しない範囲内において種々変形実施可能である。   The above-described embodiment is an example of a preferred embodiment of the present invention. However, the present invention is not limited to this, and various modifications can be made without departing from the scope of the present invention.

なお、以上の説明に関して更に以下の付記を開示する。
(付記1) ジョブの内容と、当該ジョブで利用する複数のジョブに対応した共通データの情報及び当該共通データと異なる個別データの情報と、が記述されたジョブの実行命令を取得し、
前記取得したジョブの実行命令に基づいて、ジョブを複数の計算ノードのいずれかに割り当て、当該割り当てた計算ノードに対して各ジョブの実行に用いる共通データと個別データとを転送して、ジョブの実行指示を出し、
所定の計算ノードにおいて実行が完了したジョブの共通データと次に前記所定の計算ノードで実行するジョブの共通データとが一致する場合、および前記所定の計算ノードにおいて実行が完了したジョブの共通データを前記所定の計算ノードで実行されている他のジョブの実行に用いている場合の少なくともいずれかの場合でなければ、前記所定の計算ノードに前記共通データの削除指示を出す、処理をコンピュータに実行させるジョブ管理プログラム。
(付記2) 前記削除する処理では、前記所定の計算ノードにおいて実行されているジョブの実行が完了したときに、各計算ノードに割り当てられた各ジョブを確認することを特徴とする付記1に記載のジョブ管理プログラム。
(付記3) 前記指示を出す処理では、所定の計算ノードに対してジョブの実行指示を出す場合に、当該ジョブの共通データが、前記所定の計算ノードで直前に実行されていたジョブの共通データ又は現在実行されているジョブの共通データと同一である場合には、前記実行指示を出すジョブの共通データを前記所定の計算ノードに転送しないことを特徴とする付記1又は2に記載のジョブ管理プログラム。
(付記4) ジョブの内容と、当該ジョブで利用する複数のジョブに対応した共通データの情報及び当該共通データと異なる個別データの情報と、が記述されたジョブの実行命令を取得する取得工程と、
前記取得工程で取得されたジョブの実行命令に基づいて、ジョブを複数の計算ノードのいずれかに割り当て、当該割り当てた計算ノードに対して各ジョブの実行に用いる共通データと個別データとを転送して、ジョブの実行指示を出す実行指示工程と、
所定の計算ノードにおいて実行が完了したジョブの共通データと次に前記所定の計算ノードで実行するジョブの共通データとが一致する場合、および前記所定の計算ノードにおいて実行が完了したジョブの共通データを前記所定の計算ノードで実行されている他のジョブの実行に用いている場合の少なくともいずれかの場合でなければ、前記所定の計算ノードに前記共通データの削除指示を出す削除指示工程と、をコンピュータが実行するジョブ管理方法。
(付記5) 前記削除指示工程では、前記所定の計算ノードにおいて実行されているジョブの実行が完了したときに、各計算ノードに割り当てられた各ジョブを確認することを特徴とする付記4に記載のジョブ管理方法。
(付記6) 前記実行指示工程では、所定の計算ノードに対してジョブの実行指示を出す場合に、当該ジョブの共通データが、前記所定の計算ノードで直前に実行されていたジョブの共通データ又は現在実行されているジョブの共通データと同一である場合には、前記実行指示を出すジョブの共通データを前記所定の計算ノードに転送しないことを特徴とする付記4又は5に記載のジョブ管理方法。
(付記7) ジョブの内容と、当該ジョブで利用する複数のジョブに対応した共通データの情報及び当該共通データと異なる個別データの情報と、が記述されたジョブの実行命令を取得する取得部と、
前記取得部が取得したジョブの実行命令に基づいて、ジョブを複数の計算ノードのいずれかに割り当て、当該割り当てた計算ノードに対して各ジョブの実行に用いる共通データと個別データとを転送して、ジョブの実行指示を出す実行指示部と、
所定の計算ノードにおいて実行が完了したジョブの共通データと次に前記所定の計算ノードで実行するジョブの共通データとが一致する場合、および前記所定の計算ノードにおいて実行が完了したジョブの共通データを前記所定の計算ノードで実行されている他のジョブの実行に用いている場合の少なくともいずれかの場合でなければ、前記所定の計算ノードに前記共通データの削除指示を出す削除指示部と、を備えるジョブ管理装置。
(付記8)
前記削除指示部は、前記所定の計算ノードにおいて実行されているジョブの実行が完了したときに、各計算ノードに割り当てられた各ジョブを確認することを特徴とする付記7に記載のジョブ管理装置。
(付記9)
前記実行指示部は、所定の計算ノードに対してジョブの実行指示を出す場合に、当該ジョブの共通データが、前記所定の計算ノードで直前に実行されていたジョブの共通データ又は現在実行されているジョブの共通データと同一である場合には、前記実行指示を出すジョブの共通データを前記所定の計算ノードに転送しないことを特徴とする付記7又は8に記載のジョブ管理装置。
In addition, the following additional notes are disclosed regarding the above description.
(Supplementary Note 1) Obtain a job execution instruction in which job details, common data information corresponding to a plurality of jobs used in the job, and individual data information different from the common data are described,
Based on the acquired job execution instruction, the job is assigned to one of a plurality of calculation nodes, and common data and individual data used for execution of each job are transferred to the assigned calculation node. I give an execution instruction,
When the common data of the job that has been executed in the predetermined calculation node matches the common data of the job that is executed next in the predetermined calculation node, and the common data of the job that has been executed in the predetermined calculation node If it is not at least one of the cases where it is used for execution of another job executed in the predetermined calculation node, an instruction to delete the common data is issued to the predetermined calculation node, and a process is executed on the computer Job management program
(Supplementary note 2) The supplementary note 1 is characterized in that, in the deletion process, each job assigned to each computation node is confirmed when execution of the job being executed in the predetermined computation node is completed. Job management program.
(Supplementary Note 3) In the process of issuing the instruction, when a job execution instruction is issued to a predetermined calculation node, the common data of the job is the common data of the job executed immediately before at the predetermined calculation node. The job management according to appendix 1 or 2, wherein the common data of the job for which the execution instruction is issued is not transferred to the predetermined calculation node when the common data of the job currently being executed is the same. program.
(Additional remark 4) The acquisition process which acquires the job execution instruction which described the content of the job, the information of the common data corresponding to the some job used by the said job, and the information of the separate data different from the said common data, ,
Based on the job execution instruction acquired in the acquisition step, the job is assigned to one of a plurality of calculation nodes, and common data and individual data used for execution of each job are transferred to the assigned calculation node. An execution instruction process for issuing a job execution instruction,
When the common data of the job that has been executed in the predetermined calculation node matches the common data of the job that is executed next in the predetermined calculation node, and the common data of the job that has been executed in the predetermined calculation node A deletion instruction step of issuing an instruction to delete the common data to the predetermined calculation node, unless it is at least one of the cases where it is used for execution of another job executed by the predetermined calculation node; A job management method executed by a computer.
(Additional remark 5) The said deletion instruction | indication process WHEREIN: When execution of the job currently performed in the said predetermined calculation node is completed, each job allocated to each calculation node is confirmed, The additional description 4 characterized by the above-mentioned. Job management method.
(Supplementary Note 6) In the execution instruction step, when a job execution instruction is issued to a predetermined calculation node, the common data of the job is the common data of the job executed immediately before in the predetermined calculation node or 6. The job management method according to appendix 4 or 5, wherein the common data of the job that issues the execution instruction is not transferred to the predetermined calculation node if the common data of the job that is currently being executed is the same .
(Additional remark 7) The acquisition part which acquires the execution instruction of the job in which the content of the job, the information of the common data corresponding to the some job used by the said job, and the information of the individual data different from the said common data are described ,
Based on the job execution instruction acquired by the acquisition unit, the job is assigned to one of a plurality of calculation nodes, and common data and individual data used for execution of each job are transferred to the assigned calculation node. An execution instruction unit for issuing a job execution instruction;
When the common data of the job that has been executed in the predetermined calculation node matches the common data of the job that is executed next in the predetermined calculation node, and the common data of the job that has been executed in the predetermined calculation node A deletion instructing unit that issues an instruction to delete the common data to the predetermined calculation node, unless it is at least one of the cases where it is used for execution of another job executed by the predetermined calculation node; A job management apparatus provided.
(Appendix 8)
The job management apparatus according to appendix 7, wherein the deletion instruction unit confirms each job assigned to each calculation node when execution of the job being executed in the predetermined calculation node is completed. .
(Appendix 9)
When the execution instruction unit issues a job execution instruction to a predetermined calculation node, the common data of the job is the common data of the job that was executed immediately before in the predetermined calculation node or is currently being executed. 9. The job management apparatus according to appendix 7 or 8, wherein the common data of the job for which the execution instruction is issued is not transferred to the predetermined calculation node if the common data of the job is the same.

40 取得部
261〜26N 計算ノード
42 スケジューリング部(実行指示部の一部)
44 ステージイン処理部(実行指示部の一部)
45 ジョブ処理指示部(実行指示部の一部)
48 削除指示部
24 ジョブ管理ノード(ジョブ管理装置)
40 acquisition unit 26 1 ~ 26 N compute nodes 42 scheduling unit (a part of the execution instruction unit)
44 Stage-in processing unit (part of execution instruction unit)
45 Job processing instruction section (part of execution instruction section)
48 Deletion Instructing Section 24 Job Management Node (Job Management Device)

Claims (5)

ジョブの内容と、前記ジョブで利用する複数のジョブに対応した共通データの情報及び共通データと異なる個別データの情報と、が含まれる前記ジョブの実行命令を取得し、
取得した前記ジョブの実行命令に基づいて、前記ジョブを複数の計算ノードのいずれかに割り当て、前記ジョブを割り当てた計算ノードに対して複数のジョブの実行に用いる共通データと個別データとを転送して、前記ジョブの実行指示
前記ジョブを割り当てた計算ノードに対して、前記ジョブを割り当てた計算ノードにおいて実行が完了した前記ジョブの個別データの削除を指示するとともに、前記ジョブを割り当てた計算ノードにおいて実行が完了した前記ジョブの共通データと次に前記ジョブを割り当てた計算ノードで実行されるジョブの共通データとが一致する場合、および前記ジョブを割り当てた計算ノードにおいて実行が完了した前記ジョブの共通データを前記ジョブを割り当てた計算ノードで実行されている他のジョブの実行に用いている場合の少なくともいずれかの場合でなければ、前記ジョブを割り当てた計算ノードに対して前記ジョブの共通データの削除指示する、処理をコンピュータに実行させるジョブ管理プログラム。
It acquires the contents of the job, and information of the common data and said common data different from the individual data information corresponding to a plurality of jobs to be utilized in the job execution command of the job include,
Based on the acquired execution command of the job, assign the job to one of the plurality of computing nodes, common data and transfers the individual data used in the execution of a plurality of jobs to compute node assigned the job Te, and instructs execution of the job,
Against compute node assigned the job, instructs the deletion of the individual data of the job executed in the computing node assigned the job is completed, the job execution is completed in the calculation node assigned the job If the common data of the job that will be executed by the common data and then compute nodes assigned the job matches, and the common data of the job execution is completed in the calculation node assigned the job assigned the job If not at least for one of the case of using the execution of other jobs running on the compute nodes, and instructs deletion of the common data of the job for the computing nodes assigned the job, processes the A job management program to be executed by a computer.
前記削除を指示する処理では、前記ジョブを割り当てた計算ノードにおいて実行されているジョブの実行が完了したときに、各計算ノードに割り当てられた各ジョブを確認することを特徴とする請求項1に記載のジョブ管理プログラム。 The process for instructing the deletion includes confirming each job assigned to each computation node when execution of the job being executed in the computation node to which the job is assigned is completed. The job management program described. 前記ジョブの実行を指示する処理では、前記ジョブを割り当てた計算ノードに対してジョブの実行指示する場合に、前記ジョブの共通データが、前記ジョブを割り当てた計算ノードで直前に実行されていたジョブの共通データ又は現在実行されているジョブの共通データと同一である場合には、前記実行指示するジョブの共通データを前記ジョブを割り当てた計算ノードに転送しないことを特徴とする請求項1又は2に記載のジョブ管理プログラム。 In the process for instructing the execution of the job, when instructing execution of job to compute node assigned the job, common data of the job had been executed immediately before the calculation nodes assigned the job The common data of the job instructing the execution is not transferred to the calculation node to which the job is assigned when the common data of the job or the common data of the currently executed job is the same. Or the job management program according to 2. ジョブの内容と、前記ジョブで利用する複数のジョブに対応した共通データの情報及び共通データと異なる個別データの情報と、が含まれる前記ジョブの実行命令を取得する取得工程と、
取得した前記ジョブの実行命令に基づいて、前記ジョブを複数の計算ノードのいずれかに割り当て、前記ジョブを割り当てた計算ノードに対して複数のジョブの実行に用いる共通データと個別データとを転送して、前記ジョブの実行指示する実行指示工程と、
前記ジョブを割り当てた計算ノードに対して、前記ジョブを割り当てた計算ノードにおいて実行が完了した前記ジョブの個別データの削除を指示するとともに、前記ジョブを割り当てた計算ノードにおいて実行が完了した前記ジョブの共通データと次に前記ジョブを割り当てた計算ノードで実行されるジョブの共通データとが一致する場合、および前記ジョブを割り当てた計算ノードにおいて実行が完了した前記ジョブの共通データを前記ジョブを割り当てた計算ノードで実行されている他のジョブの実行に用いている場合の少なくともいずれかの場合でなければ、前記ジョブを割り当てた計算ノードに対して前記ジョブの共通データの削除指示する削除指示工程と、をコンピュータが実行するジョブ管理方法。
And contents of the job, and information of the common data and said common data different from the individual data information corresponding to a plurality of jobs to be utilized in the job, an acquisition step of acquiring an execution command of the job include,
Based on the acquired execution command of the job, assign the job to one of the plurality of computing nodes, common data and transfers the individual data used in the execution of a plurality of jobs to compute node assigned the job Te, an execution instruction step of instructing the execution of the job,
Against compute node assigned the job, instructs the deletion of the individual data of the job executed in the computing node assigned the job is completed, the job execution is completed in the calculation node assigned the job If the common data of the job that will be executed by the common data and then compute nodes assigned the job matches, and the common data of the job execution is completed in the calculation node assigned the job assigned the job If not at least for one of the case of using the execution of other jobs running on the compute nodes, deletion instruction step of instructing the deletion of the common data of the job for the computing nodes assigned the job And a job management method executed by the computer.
ジョブの内容と、前記ジョブで利用する複数のジョブに対応した共通データの情報及び共通データと異なる個別データの情報と、が含まれる前記ジョブの実行命令を取得する取得部と、
前記取得部が取得した前記ジョブの実行命令に基づいて、前記ジョブを複数の計算ノードのいずれかに割り当て、前記ジョブを割り当てた計算ノードに対して複数のジョブの実行に用いる共通データと個別データとを転送して、前記ジョブの実行指示する実行指示部と、
前記ジョブを割り当てた計算ノードに対して、前記ジョブを割り当てた計算ノードにおいて実行が完了した前記ジョブの個別データの削除を指示するとともに、前記ジョブを割り当てた計算ノードにおいて実行が完了した前記ジョブの共通データと次に前記ジョブを割り当てた計算ノードで実行されるジョブの共通データとが一致する場合、および前記ジョブを割り当てた計算ノードにおいて実行が完了した前記ジョブの共通データを前記ジョブを割り当てた計算ノードで実行されている他のジョブの実行に用いている場合の少なくともいずれかの場合でなければ、前記ジョブを割り当てた計算ノードに対して前記ジョブの共通データの削除指示する削除指示部と、を備えるジョブ管理装置。

And contents of the job, and information and the common data different from the individual data information of the common data corresponding to a plurality of jobs to be utilized in the job, an acquisition unit that acquires an execution command of the job include,
Based on the execution command of the job acquired by the acquiring unit, allocating the job to one of the plurality of computing nodes, common data and individual data used in the execution of a plurality of jobs to compute node assigned the job DOO transfer the, and execution instruction unit for instructing the execution of the job,
Against compute node assigned the job, instructs the deletion of the individual data of the job executed in the computing node assigned the job is completed, the job execution is completed in the calculation node assigned the job If the common data of the job that will be executed by the common data and then compute nodes assigned the job matches, and the common data of the job execution is completed in the calculation node assigned the job assigned the job If not at least for one of the case of using the execution of other jobs running on the compute nodes, deletion instruction unit that instructs the deletion of the common data of the job for the computing nodes assigned the job A job management apparatus.

JP2012141175A 2012-06-22 2012-06-22 Job management program, job management method, and job management apparatus Expired - Fee Related JP5958111B2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2012141175A JP5958111B2 (en) 2012-06-22 2012-06-22 Job management program, job management method, and job management apparatus

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2012141175A JP5958111B2 (en) 2012-06-22 2012-06-22 Job management program, job management method, and job management apparatus

Publications (2)

Publication Number Publication Date
JP2014006657A JP2014006657A (en) 2014-01-16
JP5958111B2 true JP5958111B2 (en) 2016-07-27

Family

ID=50104329

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2012141175A Expired - Fee Related JP5958111B2 (en) 2012-06-22 2012-06-22 Job management program, job management method, and job management apparatus

Country Status (1)

Country Link
JP (1) JP5958111B2 (en)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101748210B1 (en) * 2015-01-14 2017-06-27 서울대학교산학협력단 Distributed processing system and processing method for file in distributed processing system

Family Cites Families (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH0395661A (en) * 1989-09-08 1991-04-22 Fujitsu Ltd Process assignment device for parallel computer
JP3908760B2 (en) * 2004-10-26 2007-04-25 株式会社東芝 Information terminal device and program thereof

Also Published As

Publication number Publication date
JP2014006657A (en) 2014-01-16

Similar Documents

Publication Publication Date Title
CN101311911B (en) Staging memory system and data migration method thereof
JP2007041720A (en) Job step execution program and job step execution method
WO2024119763A1 (en) Computing power scheduling method for container cluster, and related apparatus
JP2019079334A (en) Information processing apparatus, information processing system, and information processing method
US9652294B2 (en) Cross-platform workload processing
JP5556498B2 (en) Management device, file server system, processing method and management program
JP2010191524A (en) Management computer and processing management method
US20200285510A1 (en) High precision load distribution among processors
US10013288B2 (en) Data staging management system
CN111143063A (en) Task resource reservation method and device
JP5181121B2 (en) Task number control device, task number control method, and computer program
US10057338B2 (en) Data distribution apparatus, data distribution method, and data distribution program for parallel computing processing system
US8775767B2 (en) Method and system for allocating memory to a pipeline
US20230409379A1 (en) Information processing device and job scheduling method
JP5377231B2 (en) Job net control program and job net control device
JP5958111B2 (en) Job management program, job management method, and job management apparatus
US20180129529A1 (en) Resource-dependent automated job suspension/resumption
JP2015176218A (en) Arithmetic processing unit, control method of the same, and control program of the same
JP6229733B2 (en) Information processing apparatus, method, program, and recording medium
US20150150012A1 (en) Cross-platform workload processing
JP2010152846A (en) File sharing method, computer system and job scheduler
CN117851386A (en) Data migration method, device, equipment and storage medium
JP6051733B2 (en) Control system, control method, and control program
JP2007179100A (en) Job queue system, job management method, control program, and readable recording medium
JP5390947B2 (en) Job management system, job management apparatus and program thereof

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20150319

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20151021

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20151104

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20151225

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: 20160524

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20160606

R150 Certificate of patent or registration of utility model

Ref document number: 5958111

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

LAPS Cancellation because of no payment of annual fees