JP3998686B2 - Cpu使用時間カウント方法及びこのcpu使用時間を用いるジョブ制御装置 - Google Patents

Cpu使用時間カウント方法及びこのcpu使用時間を用いるジョブ制御装置 Download PDF

Info

Publication number
JP3998686B2
JP3998686B2 JP2004570162A JP2004570162A JP3998686B2 JP 3998686 B2 JP3998686 B2 JP 3998686B2 JP 2004570162 A JP2004570162 A JP 2004570162A JP 2004570162 A JP2004570162 A JP 2004570162A JP 3998686 B2 JP3998686 B2 JP 3998686B2
Authority
JP
Japan
Prior art keywords
cpu
time
usage time
job
cpu usage
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
JP2004570162A
Other languages
English (en)
Other versions
JPWO2004088518A1 (ja
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
Publication of JPWO2004088518A1 publication Critical patent/JPWO2004088518A1/ja
Application granted granted Critical
Publication of JP3998686B2 publication Critical patent/JP3998686B2/ja
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/30Monitoring
    • G06F11/34Recording or statistical evaluation of computer activity, e.g. of down time, of input/output operation ; Recording or statistical evaluation of user activity, e.g. usability assessment
    • G06F11/3466Performance evaluation by tracing or monitoring
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/30Monitoring
    • G06F11/34Recording or statistical evaluation of computer activity, e.g. of down time, of input/output operation ; Recording or statistical evaluation of user activity, e.g. usability assessment
    • G06F11/3409Recording or statistical evaluation of computer activity, e.g. of down time, of input/output operation ; Recording or statistical evaluation of user activity, e.g. usability assessment for performance assessment
    • G06F11/3419Recording or statistical evaluation of computer activity, e.g. of down time, of input/output operation ; Recording or statistical evaluation of user activity, e.g. usability assessment for performance assessment by assessing time
    • G06F11/3423Recording or statistical evaluation of computer activity, e.g. of down time, of input/output operation ; Recording or statistical evaluation of user activity, e.g. usability assessment for performance assessment by assessing time where the assessed time is active or idle time
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2201/00Indexing scheme relating to error detection, to error correction, and to monitoring
    • G06F2201/88Monitoring involving counting

Landscapes

  • Engineering & Computer Science (AREA)
  • General Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Computer Hardware Design (AREA)
  • Quality & Reliability (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Debugging And Monitoring (AREA)
  • Multi Processors (AREA)
  • Computer And Data Communications (AREA)

Description

本発明はCPU使用時間カウント方法及びこのCPU使用時間を用いるジョブ制御装置に関し、特に、大規模アプリケーション処理を多数のプロセッサ(CPU)に分散して行わせる場合の、各CPUの実際の使用時間をカウントする方法及びこのCPU使用時間を用いるジョブ制御装置に関する。
一般に、コンピュータやプロセッサを使用し、数値流体力学等に使用される大規模アプリケーションにおいては、コンピュータやプロセッサに数百GFLOPSを超える性能が必要となり、このような高性能を実現する場合には並列処理が行われる。並列処理とは、多数のコンピュータやプロセッサに処理を分割して、処理全体の高速化を図ろうとするものである。
一方、大規模アプリケーションに対応したメモリ構成も必要であり、このメモリ構成は以下のような並列システムに分類される。
(a)集中メモリ型
この型は、図1Aに示されるように、同等の機能を持つ複数のプロセッサ(図にはCPUと記載)1と、このCPU1に統合ネットワーク2を介して接続された1つのメモリ空間(共有メモリのことで、以後単にメモリと言う)3から構成される。全てのCPU1は同じデータをアクセスすることができる。CPU1には通常キャッシュメモリ4が設けられている。
(b)分散共有メモリ型
この型は、図1Bに示されるように、各CPU1が統合ネットワーク2を介して、分散配置されたローカルメモリ3A〜3N(A〜Nは任意の自然数)に接続されたものである。ローカルメモリ3A〜3Nは、論理的には共有メモリとして参照できる。この例ではCPU1内のキャッシュメモリの図示は省略してある。
(c)分散メモリ型
この型は、図1Cに示されるように、CPU1とメモリ3から成る複数のシステム要素が結合ネットワーク2で結合された形態である。異なるシステム要素のメモリ3にあるデータへのアクセスは、統合ネットワーク2を介した通信によって実現される。この例でもCPU1内のキャッシュメモリの図示は省略してある。
上述のように、科学技術分野のハイエンドコンピュータ(分散並列コンピュータシステム)10は、多数CPU(数十〜数千個のCPU)および巨大メモリ(論理的/物理的)から構成されている。図2はこのようなハイエンドコンピュータにおけるジョブ実行環境の一例を示すものである。ハイエンドコンピュータでは、複数の並列コンピュータシステム5が統合ネットワークで並列に接続されており、各並列コンピュータシステム5には、CPU1とメモリ3がある。また、統合ネットワークにはハードディスク装置や磁気ディスク装置、光ディスク装置等のディスク装置7が接続される。実際のデータやプログラム等はこのディスク装置7に格納されている。
ハイエンドコンピュータ10のサーバー8にユーザーからジョブが与えられると、サーバー8はそのジョブを実行させる並列コンピュータシステム5を決定する。このジョブは、1つの並列コンピュータシステム5の中で行われることもあるが、複数の並列コンピュータシステム5に跨がって実行されることもある。このように、ハイエンドコンピュータ10は、大小様々なジョブが混在して実行される環境になっている。
このようなジョブ実行環境では、大規模システムの資源(CPU、メモリ)を効率的に有効活用(高いシステム稼働率)でき、かつエンドユーザ(ジョブ)への安定したサービス(ジョブ実行時間保証、ブレの少ない実行時間、木目細かいジョブ制御機能)を実現する運用技術が求められている。
コンピュータシステムにおいて複数のジョブが動作する従来の環境では、あるジョブを設定した時間に処理するために、あるジョブの現時点の処理量から終了時間を予測し、このジョブを他のジョブに優先して制御することで、このジョブの終了予想時刻を終了希望時刻に近づけることが行われている。そして、あるジョブの終了時間を予測する場合は、CPUの使用時間に加えて、データの入出力量等のコンピュータシステムの負荷の変動を考慮にいれて終了時間を予測する方式が取られてきた。(例えば、特許文献1を参照)。
また、CPUの使用時間は単体で理想的に実行された場合の性能を表すため、複数ジョブが実行される環境でのCPUの性能を予測する場合は、実際のジョブのCPU使用時間(課金時間)と、課金時間に加算されないジョブにCPUが使われる時間とを加算することで各ジョブの総CPU使用時間を求めて予測を行っていた(例えば、特許文献2を参照)。この予測方法は、例えば、システムデーモンがジョブ実行のために行うサービスに使うCPUの使用時間をジョブのCPU使用時間に加えた総CPU使用時間から、複数ジョブが実行される環境でのCPUの性能を予測する方式であった。
しかしながら、特許文献1や特許文献2に記載の技術では、いずれの場合も、ジョブ自身のCPU使用時間は、どのような環境下でも一定(理想的)としていたために、あるジョブの終了時間を予測する場合や、複数ジョブが実行される環境でのCPUの性能を予測する場合に、予測にズレが生じていた。この予測ズレの発生の原因について以下に説明する。
原理的には、同一のプログラムを複数回実行した場合、または、複数ジョブを同時に実行した場合は、処理の実行開始から終了までの時間は、「経過時間は毎回変動する。」「CPUの使用時間は毎回一定である。」と見なされる。ところが、CPU使用時間が毎回一定になることは、理想的なコンピュータにおいてのみ成立するものであり、実際のコンピュータにおいては、メモリアクセス性能が毎回一定ではないため、CPU使用時間は毎回変動することになる。
例えば、CPUにキャッシュメモリを持つ場合、次に読み出すデータがこのキャッシュメモリにある(キャッシュにヒットする)か、読み出すデータがキャッシュメモリに無く、共有メモリ等から新たに読み出す(キャッシュにミスヒットする)かにより、データの読み出し時間に差が生じてメモリアクセス性能が異なってしまう。また、複数のシステムボードを持つコンピュータシステムの場合、これから処理しようとするジョブが、CPUとそのアクセスするメモリが同一のシステムボードに配置される場合と、CPUとそのアクセスするメモリが異なるシステムボードに配置される場合とでは、CPUのメモリアクセス性能が異なってしまうことになる。更に、複数のジョブ、または並列のジョブがメモリを共有して実行されている場合、ジョブ毎のメモリアクセス負荷状況に依存して、あるジョブのメモリ競合によるメモリアクセス待ち時間が変動するので、CPU使用時間は毎回動的に変動することになる。
特開平5−265775号公報 特開平5−289891号公報
このように、従来の技術では、そのジョブ自身のCPU使用時間が理想的でない限り、CPU使用時間は毎回変動することになり、あるジョブの終了時間を予測する場合や、複数ジョブが実行される環境でのCPUの性能を予測する場合において、予測にズレが生じてしまうという課題や、CPU使用時間に対する課金が正確に行われないという課題があった。
従って、本発明の目的は、この課題を解決するために、前述のジョブの実行毎に異なるメモリアクセス性能によるCPU使用時間の違いを補正することにより、実質的なCPU使用時間を補正CPU時間として演算し、同一プログラムの処理であれば、毎回同じ補正CPU使用時間を演算によって求めることができ、あるジョブの終了時間を正確に予測できると共に、複数ジョブが実行される環境でのCPUの性能を予測することができ、更にはCPU使用時間に対する課金に対しても安定したサービスを提供することができるCPU使用時間カウント方法及びこのCPU使用時間を用いるジョブ制御装置を提供することである。
上記目的を達成する本発明のCPU使用時間カウント方法は、複数のCPUと少なくとも1つのメモリが統合ネットワークに接続され、CPUとメモリとを使用して、統合ネットワークに入力されたジョブの分散処理を行うコンピュータシステムに、CPU使用時間記憶領域と補正CPU使用時間記憶領域とCPU時間制限値記憶領域とを有するメモリであるCPU時間管理構造体及びソフトウエアであるCPU使用時間カウント手段と補正CPU使用時間カウント手段で構成されるジョブ管理機構とCPU動作監視手段とを設け、このジョブ管理機構とCPU動作監視手段とによって、各CPUがジョブを実行する際に使用された実際の使用時間をカウントする方法であって、各ジョブに使用されたCPU使用時間を、CPU動作監視手段とCPU使用時間カウント手段とでカウントしてCPU使用時間記憶領域に記憶し、各ジョブを実行する毎に、各CPUのメモリアクセスにおけるメモリアクセス待ち時間を補正CPU使用時間カウント手段がCPU動作監視手段の監視出力によりカウントし、各ジョブ毎に補正CPU使用時間カウント手段が、CPU使用時間から各CPUのメモリアクセス待ち時間を差し引いて算出した補正CPU使用時間を、実際のCPU使用時間として補正CPU使用時間記憶領域に設定することを特徴とするものである。
このCPU使用時間は、ジョブ管理機構にある、該当ジョブが使用した時間をカウントする機能を有するCPU使用時間カウント手段で取得された時間であり、CPUのメモリアクセス待ち時間は、メモリアクセス性能値をカウントするハードウエアモニタを使用して算出した該当ジョブのメモリアクセス時間から、当該コンピュータシステムのハードウエア設計上最も高速な該当ジョブのメモリアクセス時間を引いた時間である。
また、算出した補正CPU使用時間を、CPU時間制限値記憶領域に記憶されたCPU使用時間制限値と比較し、補正CPU使用時間がCPU使用時間制限値以上になった時には、ジョブ管理機構が該当ジョブを終了するようにしても良い。
更に、コンピュータシステムに表示装置と記録装置が設けられており、ジョブ管理機構に補正CPU時間表示/記録出力作成手段が接続されている場合に、該当ジョブからの要求により、ジョブ管理機構は、補正CPU時間表示/記録出力作成手段を使用して、表示装置と記録装置に対して、補正CPU使用時間の表示出力、及び記録出力を作成して出力しても良い。
一方、前記目的を達成する本発明のCPU使用時間を用いるジョブ制御装置は、複数のコンピュータを使用してジョブの分散処理を行うコンピュータシステムに、CPU時間制限値記憶領域を有するメモリであるCPU時間管理構造体及びソフトウエアであるCPU使用時間カウント手段と補正CPU使用時間カウント手段で構成されるジョブ管理機構とCPU動作監視手段とを設け、CPU動作監視手段とCPU使用時間カウント手段によって各CPUの実際の使用時間をカウントし、ジョブを実行する毎に、補正CPU使用時間カウント手段がCPU動作監視手段の監視出力によりCPUのメモリアクセス待ち時間をカウントし、各ジョブ毎に、補正CPU使用時間カウント手段によって各CPU使用時間から各CPUのメモリアクセス待ち時間を差し引くことにより、補正CPU使用時間を算出し、ジョブ管理機構は、算出した補正CPU使用時間を、CPU時間制限値記憶領域に記憶されたCPU使用時間制限値と比較し、補正CPU使用時間がCPU使用時間制限値以上になった時には、ジョブ管理機構が該当ジョブを終了する制御を行うようにしたことを特徴としている。
本発明のCPU使用時間カウント方法及びこのCPU使用時間を用いるジョブ制御装置によれば、実質的なCPU使用時間を演算し、同一プログラムの処理であれば、毎回同じCPU使用時間を演算によって求めることができ、あるジョブの終了時間を正確に予測できると共に、複数ジョブが実行される環境でのCPUの性能を予測することができ、更にはCPU使用時間に対する課金に対しても安定したサービスを提供することができる。
本発明のCPU使用時間カウント方法及びこのCPU使用時間を用いるジョブ制御装置によれば、ジョブの実行毎に異なるメモリアクセス性能によるCPU使用時間の違いを補正することにより、実質的なCPU使用時間を補正CPU時間として演算し、同一プログラムの処理であれば、毎回同じ補正CPU使用時間を演算によって求めることができ、あるジョブの終了時間を正確に予測できると共に、複数ジョブが実行される環境でのCPUの性能を予測することができ、更にはCPU使用時間に対する課金に対しても安定したサービスを提供することができる。
以下、添付図面に基づいて発明を実施するための最良の態様を説明するが、図1Aから図2で説明した部材と同じ構成の部材については、同じ符号を付して説明する。
図3Aは、本発明のCPU使用時間カウント方法が適用される分散並列コンピュータシステム10の構成の一例を示すブロック図である。分散並列コンピュータシステム10では、複数の並列コンピュータシステム5が、統合ネットワーク2を介して接続されている。この統合ネットワークには、一般に、電源をオフしてもデータやプログラムを保持できるハードディスク装置等のディスク装置7が接続されている。
各並列コンピュータシステム5の構成は同じであるので、図3Aにはそのうちの1つの並列コンピュータシステム5の内部構成のみが示してある。並列コンピュータシステム5には、キャッシュメモリ4を備えた複数のCPU1が並列に設けられている。これら複数のCPU1は、統合ネットワーク2に接続するメモリ(共有メモリ)3に接続されており、各CPU1はメモリ3に記憶されたデータをそれぞれのキャッシュメモリ4に取り込んで演算を行う。
各CPU1は、その動作がCPU動作監視手段(ハードウエアモニタ)11によって監視されている。また、並列コンピュータシステム5の中にはメモリ及びプログラムで構成されるジョブ管理機構20が設けられており、この中にはCPU使用時間カウント手段21、補正CPU使用時間カウント手段22、およびCPU時間管理構造体(メモリ)23がある。このCPU時間管理構造体23には、CPU使用時間を記憶するための領域24、補正CPU使用時間を記憶するための領域25、及び、CPUの使用時間の制限値(図にはCPU時間制限値と記載)を記憶するための領域26がある。CPUの使用時間の制限値は、各ユーザーが設定するものである。また、このCPU時間管理構造体23はメモリ3の一部を使用して設けることもできる。
CPU使用時間カウント手段21は、CPU動作監視手段11にアクセスすることにより各CPUの使用時間(メモリアクセスによるメモリアクセス待ち時間を含む)をカウントし、このカウント値をCPU時間管理構造体23のCPU使用時間記憶領域24に記憶する。補正CPU使用時間カウント手段22は、CPU動作監視手段11にアクセスすることにより各CPUのメモリアクセスにおけるメモリアクセス待ち時間をカウントし、CPU使用時間カウント手段21でカウントされた各CPUの使用時間から前述の各CPUのメモリアクセス待ち時間を減算し、実際に各CPU1が演算のために稼働した補正CPU使用時間を算出する。補正CPU使用時間カウント手段22は、算出した補正CPU使用時間をCPU時間管理構造体23の補正CPU使用時間記憶領域25に記憶する。
また、ジョブ管理機構20には、補正CPU時間表示/記録出力作成手段12が接続されている。補正CPU時間表示/記録出力作成手段12は、CPU時間管理構造体23の補正CPU使用時間記憶領域25に記憶されている補正CPU使用時間のデータを、図示しない表示装置や記録装置に出力するものである。
図3Bは図3Aのジョブ管理機構20の機能を説明するブロック図である。ジョブ管理機構20には、1つのジョブを受け付けてジョブを起動して実行する機能、CPU時間補正プログラムにより、入力されたCPU使用時間データを用いて実際のCPU使用時間を算出する機能、消費補正値のジョブインターフェースプログラムを用いて、ジョブからの要求があった時に、CPU使用時間、補正CPU使用時間、CPU時間制限値等の現在のデータをジョブに通知する機能、及び補正値を用いたジョブ制御プログラムにより、補正CPU使用時間の表示/記録データを出力する機能等がある。また、CPU使用時間、補正CPU使用時間、及びCPU時間制限値のデータは、CPU時間管理機能により、ソフトウエアによって管理することができる。
ここで、本発明のCPU使用時間カウント方法の原理について説明する。一般に、複数のコンピュータシステムを使用して分散処理を行うコンピュータシステムにおいては、メモリ競合等のコンピュータリソースの競合やジョブの配置により、ジョブ実行毎に各CPUに異なるメモリアクセス待ち時間(メモリアクセス時間)が発生する。従って、これまでの分散処理を行うコンピュータシステムでは、CPUのこのメモリアクセス待ち時間の長短によって、同一プログラムを実行しても毎回同じCPU使用時間とならなかった。
そこで、本発明のCPU使用時間カウント方法では、このCPUの待ち時間に応じてCPU使用時間に生じる偏差を補正し、同一プログラムの場合には、毎回同じCPU使用時間となる補正CPU使用時間を算出する。
この補正CPU使用時間は、以下の演算によって求めることができる。
補正CPU使用時間=CPU使用時間−実行毎に異なるCPUのメモリアクセス待ち時間
実行毎に異なるCPUのメモリアクセス待ち時間によるメモリアクセス時間の変動を補正する具体的な方法としては、一般的にコンピュータシステムのハードウェア及びオペレーティングシステム(OS)に実装されている、以下の機能を組み合わせることで実現することができる。
(1)メモリアクセス性能値をカウントするハードウエアモニタを用いた、該当ジョブのCPUのメモリアクセス待ち時間を含むメモリアクセス時間をカウントする機能
(2)当該コンピュータのハードウェア設計上で最高速の、CPUのメモリアクセス待ち時間を含まない該当ジョブのメモリアクセス時間をカウントする機能
(3)OSに備わっている該当ジョブが使用したCPU使用時間をカウントする機能で取得された、一般的に課金値として取得されるCPU使用時間
そして、これら(1)〜(3)の機能を組み合わせれば、以下の式で補正CPU使用時間を算出することができる。
補正CPU使用時間=(3)−((1)−(2))
そして、この計算によって求められた補正CPU使用時間は、CPUのメモリアクセス時間が変動した場合でも、メモリアクセスにおけるメモリアクセス待ち時間を補正したあるジョブに対する一定のCPU使用時間であり、同一のプログラムを色々な状況下で複数回実行した場合でも、毎回同一の補正CPU使用時間を算出することができる。
ここで、図3Aに示したジョブ管理機構20による、この補正CPU使用時間を算出するCPU使用時間カウント動作の第1の実施例を、図4に示すフローチャートを用いて説明する。このCPU使用時間カウント動作は、ジョブの実行時に起動される。
ステップ401ではCPU上で動作するプロセスの切り換わりがあったか否かを判定する。プロセスはジョブの最小実行単位である。切り換わりがあった場合はステップ403に進むが、切り換わりがなかった場合はステップ402に進んでこのプロセスに移行してから一定時間が経過したか否かを判定する。一定時間が経過した場合はステップ403に進むが、一定時間が経過していない場合はステップ401に戻る。ステップ402において一定時間が経過したと判定される場合は、プロセスが切り換わる前にそのジョブが制限値を越えた場合である。
このようにしてステップ403に進むと、ステップ403では現在動作中のプロセスが、ジョブのプロセスか否かを判定する。プロセスには、ジョブのプロセス以外にもシステムサービス等がある。そして、動作中のプロセスがジョブのプロセスでない場合はステップ401に戻るが、動作中のプロセスがジョブのプロセスの場合は、図3Aで説明したジョブ管理機構20の対象とするプロセスであるのでステップ404に進む。
ステップ404ではプロセスが動作していた時間αを算出する。このプロセスが動作していた時間αは、このプロセスがCPU上で動作を開始してから、このCPU上で動作する別のプロセスに切り換わるまでの時間のことである。従ってこの時間αはCPUのメモリアクセス待ち時間を含む。時間αが算出されると制御はステップ405に進み、該当ジョブのCPU時間管理構造体23の、CPU使用時間の記憶領域(図4には単にCPU使用時間と記載)24にこの算出した時間αを加算する。ここまでの動作が、従来のコンピュータシステムにおいて、CPUの使用時間を算出するプロセスである。
このようにして該当ジョブのCPU時間管理構造体23の、CPU使用時間の記憶領域24に、この算出した時間αを加算した後は、続くステップ406において、図3Bで説明したCPU時間補正プログラムにより、該当プロセスのメモリアクセス性能γ、即ち、該当ジョブのCPUのメモリアクセス待ち時間を含むメモリアクセス時間γと、当該コンピュータシステムにおける最高速のメモリアクセス時間βとを算出する。この最高速のメモリアクセス時間βは、CPUにメモリアクセス待ち時間がない時のメモリアクセス時間のことである。
続くステップ407では、補正CPU使用時間Aを式、A=α−(γ−β)で算出し、CPU時間管理構造体23の、補正CPU使用時間の記憶領域24に記憶されている時間M(図4には補正CPU使用時間Mと記載)に、この算出した時間Aを加算する(M=M+A)。そして、次のステップ408においてジョブが終了したか否かを判定し、ジョブが終了していない場合にはステップ401に戻り、ジョブが終了した場合にはこのルーチンを終了する。
以上のような処理により、図3Aに示したCPU時間管理構造体23には、そのCPU使用時間記憶領域24に従来のCPUの使用時間と同じ時間が記憶され、補正CPU使用時間記憶領域25に補正された真のCPU使用時間が補正CPU使用時間として記憶される。
図5は、図3Aに示したジョブ管理機構20による、この補正CPU使用時間を算出するCPU使用時間カウント動作の第2の実施例示すフローチャートであり、図4で説明したCPU使用時間カウント動作の変形例である。図5に示すCPU使用時間カウント動作が図4で説明したCPU使用時間カウント動作と異なる点は、ステップ407の後の処理のみである。よって、ステップ401からステップ407までの処理の説明は省略し、図4で説明したフローチャートと異なる部分のみを説明する。
前述のように、第1の実施例ではステップ407において、補正CPU使用時間Aを式、A=α−(γ−β)で算出し、CPU時間管理構造体23の補正CPU使用時間の記憶領域24に記憶されている時間M(図4には補正CPU使用時間Mと記載)に、この算出した時間Aを加算した(M=M+A)。第2の実施例では、この次のステップ501において、CPU時間管理構造体23の補正CPU使用時間の記憶領域24に記憶されている時間Mが、同じく、CPU時間管理構造体23のCPU使用時間の制限値の記憶領域(図にはCPU時間制限値と記載)26に記憶された制限値以上になったか否かを判定する。この制限値はユーザーによって設定されるものである。
そして、ステップ501の判定が(M≧CPU時間制限値)である場合にはステップ503に進み、ジョブを強制的に終了してこのルーチンを終了する。一方、ステップ501の判定が(M<CPU時間制限値)である場合にはステップ502に進み、ジョブが終了したか否かを判定する。そして、ジョブが終了していない場合にはステップ401に戻り、ジョブが終了した場合にはこのルーチンを終了する。
このように、第2の実施例は、補正CPU使用時間Aの加算値MがCPU使用時間の制限値以上になった場合には、ジョブを強制的に終了させようとするものである。このジョブを強制的に終了させる動作が、補正CPU使用時間を用いたジョブ制御装置の動作である。
図6は、図3Aに示したジョブ管理機構20による、この補正CPU使用時間を算出するCPU使用時間カウント動作の第3の実施例示すフローチャートであり、図5で説明したCPU使用時間カウント動作の変形例である。図6に示すCPU使用時間カウント動作が図5で説明したCPU使用時間カウント動作と異なる点は、ステップ407の後の処理のみである。よって、ステップ401からステップ407までの処理はステップ600としてまとめてその説明は省略し、図5で説明したフローチャートと異なる部分のみを説明する。
第3の実施例は、補正CPU使用時間のカウント動作中に、ジョブから補正CPU使用時間の途中経過の通知要求、或いは、以前のジョブにおける補正CPU使用時間の通知要求があった場合の動作を示すものである。第3の実施例では、この補正CPU使用時間のカウント動作中に、ジョブから補正CPU使用時間の途中経過の通知要求、或いは、以前のジョブにおける補正CPU使用時間の通知要求をライブラリ要求として記載し、ステップ407の後のステップ601で、このライブラリ要求があったか否かを判定している。
ライブラリ要求は、ユーザーやジョブからのコンピュータシステムにおける計算の途中経過の通知要求のことである。通常1つのジョブに対する計算処理は、コンピュータシステムの1回の計算処理で終了するものではないことが多く、このような場合には、何回かに分けて計算が行われる。このような場合、ライブラリ要求により、計算が終了する時間が予め分かったり、中間結果が分かるので、ユーザーにとって便利である。
ライブラリ要求がない場合はステップ604に進み、第2の実施例におけるステップ501からステップ503の処理に対応する処理である、ステップ604からステップ605の処理を実行し、ステップ607で、補正CPU使用時間(図には補正CPU時間と記載)を出力してこのルーチンを終了する。この補正CPU使用時間は、前述の第1と第2の実施例においても最後に出力しても良いものである。
一方、ステップ601でライブラリ要求があると判定した場合にはステップ602に進む。ステップ602では、ライブラリ実行プロセスが所属するジョブを検索し、続くステップ603において、CPU時間管理構造体23の対応するジョブのCPU時間制限値と補正CPU使用時間を読み出してジョブに通知し、ステップ604に進む。ステップ604以降の処理は前述の通りである。
図7は本発明のCPU使用時間カウント方法による補正CPU使用時間と、従来方法によるCPU使用時間との比較を示す線図である。従来方法では、時間Xの経過に対して、CPU使用時間Yが一点鎖線で示すように1対1に対応しており、破線で示すCPU使用時間の制限値に対しては、時刻X1で達していた。これに対して本発明のCPU使用時間カウント方法では、時間t1、t2,t3,t4,及びt5で示すCPUのメモリアクセス待ち時間は、補正CPU使用時間としてはカウントされない。よって、本発明の方法によれば、破線で示すCPU使用時間の制限値に対しては、時刻X1よりかも時刻の遅い時刻X2で達することになり、制限値に対してより多くの計算を実行することができる。
以上説明した実施例は、1つのジョブに対して、1つのCPUを用いて計算が行われた時の補正CPU使用時間の算出方法であった。図8は、1つのジョブをCPU1とCPU2の2つのCPUによって行った時の、CPU1のジョブ管理機構のCPU使用時間カウント動作を説明する、本発明の第4の実施例を説明するフローチャートである。
ステップ801ではCPU1上で動作するプロセスの切り換わりがあったか否かを判定する。切り換わりがあった場合はステップ803に進むが、切り換わりがなかった場合はステップ802に進んでこのプロセスに移行してから一定時間が経過したか否かを判定する。一定時間が経過した場合はステップ803に進むが、一定時間が経過していない場合はステップ801に戻る。ステップ802において一定時間が経過したと判定される場合は、プロセスが切り換わる前にそのジョブが制限値を越えた場合である。
このようにしてステップ803に進むと、ステップ803では現在動作中のプロセスがジョブZのプロセスか否かを判定する。そして、動作中のプロセスがジョブZのプロセスでない場合はステップ801に戻るが、動作中のプロセスがジョブZのプロセスの場合はステップ804に進む。ステップ804ではプロセスが動作していた時間α1を算出する。時間α1が算出されるとステップ805に進み、該当ジョブZのCPU1時間管理構造体の、CPU1使用時間の記憶領域に、この算出した時間α1を加算する。
このようにして該当ジョブZのCPU1時間管理構造体の、CPU1使用時間の記憶領域にこの算出した時間α1を加算した後は、続くステップ806において、図3Bで説明したCPU時間補正プログラムにより、該当プロセスのメモリアクセス性能γ1、即ち、該当ジョブZのCPU1のメモリアクセス待ち時間を含むメモリアクセス時間γ1と、当該コンピュータシステムにおける最高速のメモリアクセス時間β1とを算出する。この最高速のメモリアクセス時間β1は、CPU1にメモリアクセス待ち時間がない時のメモリアクセス時間のことである。
続くステップ807では、補正CPU1使用時間A1を式、A1=α1−(γ1−β1)で算出し、CPU1時間管理構造体の、補正CPU1使用時間の記憶領域に記憶されている時間M1に、この算出した時間A1を加算する(M1=M1+A1)。
このようなステップ801からステップ807までの処理は、もう1つのCPU2のジョブ管理機構においても実行されている。すなわち、対応するCPU2のCPU2時間管理構造体では、このジョブZに対して、補正CPU2使用時間A2が式、A2=α2−(γ2−β2)で算出され、対応するCPU2時間管理構造体の、補正CPU2使用時間の記憶領域に記憶されている時間M2に、この算出した時間A2が加算されている(M2=M2+A2)。
そこで、ステップ808では、該当ジョブZを実行したCPU2の補正CPU2使用時間M2のデータを読み込む。そして、次のステップ809において、CPU1の補正CPU1使用時間M1とCPU2の補正CPU2使用時間M2とを加算し、CPU1とCPU2の合計の補正CPU使用時間Mを算出する。このCPU1とCPU2の合計の補正CPU使用時間Mは、例えば、CPU1の補正CPU使用時間の記憶領域に記憶される。
そして、次のステップ810において、CPU時間管理構造体の補正CPU使用時間の記憶領域に記憶されている時間Mが、同じく、CPU時間管理構造体のCPU使用時間の制限値以上になったか否かを判定する。ステップ810の判定が(M≧CPU時間制限値)である場合にはステップ812に進み、ジョブZを強制的に終了してこのルーチンを終了する。一方、ステップ810の判定が(M<CPU時間制限値)である場合にはステップ811に進み、ジョブZが終了したか否かを判定する。そして、ジョブZが終了していない場合にはステップ801に戻り、ジョブが終了した場合にはこのルーチンを終了する。
以上図8で説明した処理は、ジョブZが2つのCPU1とCPU2に分散されて処理される場合の処理であるが、1つのジョブが3つ以上のCPUに分散されて処理される場合の手順も同様である。
図9は、1つのジョブを、1つのメモリを共有して、CPU1とCPU2の2つのCPUによって行った時の、CPU1、CPU2とこれらに設けられたキャッシュメモリ1とキャッシュメモリ2の動作の一実施例を説明するタイムチャートである。
図9は縦軸が時間を示しており、CPU1とCPU2の従来のCPU使用時間が共にTLである時の、本発明のCPU1とCPU2の補正CPU時間HTLについて説明するものである。
この図9から分かるように、キャッシュメモリ1がメモリ(共有メモリ)からCPU1の演算に必要なデータD1を読み込んでいる時間TD1は、CPU1は演算待ち状態であり、キャッシュメモリ2はメモリへのアクセス待ちである。従って、CPU2も演算待ちである。キャッシュメモリ2のメモリへのアクセス待ち時間をTM21とする。
キャッシュメモリ1にデータD1が読み込まれると、CPU1はデータD1を使用した演算を行い、キャッシュメモリ2はメモリからCPU2の演算に必要なデータD2を読み込む。したがって、この時はCPU2は依然として演算待ち状態である。キャッシュメモリ2のデータD2の読み込み時間をTD2、CPU1のデータD1を使用した演算時間をT11とする。
CPU1がキャッシュメモリ1に記憶されたデータD1を使用した演算を終了すると、キャッシュメモリ1はCPU1の次の演算に必要なデータD3をメモリから読み込もうとするが、この時、キャッシュメモリ2のメモリからのデータD2の読み込みが終了していない場合は、キャッシュメモリ1はメモリへのアクセス待ちとなる。この時、CPU1は演算待ち状態である。キャッシュメモリ1のメモリへのアクセス待ち時間をTM11とする。
キャッシュメモリ2のメモリからのデータD2の読み込みが終了すると、CPU2はキャッシュメモリ2に記憶されたデータD2を使用した演算を行う。そして、キャッシュメモリ1はCPU1の次の演算に必要なデータD3をメモリから読み込む。CPU1は演算待ち状態である。CPU2のデータD2を使用した演算時間をT21、キャッシュメモリ1のデータD3の読み込み時間をTD3とする。
CPU2がキャッシュメモリ2に記憶されたデータD2を使用した演算を終了すると、キャッシュメモリ2はCPU2の次の演算に必要なデータD4をメモリから読み込もうとするが、この時、キャッシュメモリ1のメモリからのデータD3の読み込みが終了していない場合は、キャッシュメモリ2はメモリへのアクセス待ちとなる。この時、CPU1とCPU2は共に演算待ち状態である。キャッシュメモリ2のメモリへのアクセス待ち時間をTM22とする。
キャッシュメモリ1のメモリからのデータD3の読み込みが終了すると、CPU1はキャッシュメモリ1に記憶されたデータD3を使用した演算を行う。そして、キャッシュメモリ2はCPU2の次の演算に必要なデータD4をメモリから読み込む。CPU2は演算待ち状態である。CPU1のデータD3を使用した演算時間をT12、キャッシュメモリ2のデータD4の読み込み時間をTD4とする。
CPU1がキャッシュメモリ1に記憶されたデータD3を使用した演算を終了すると、キャッシュメモリ1はCPU1の次の演算に必要なデータD5をメモリから読み込もうとするが、この時、キャッシュメモリ2のメモリからのデータD4の読み込みが終了していない場合は、キャッシュメモリ1はメモリへのアクセス待ちとなる。この時、CPU1は演算待ち状態である。キャッシュメモリ1のメモリへのアクセス待ち時間をTM12とする。
キャッシュメモリ2のメモリからのデータD4の読み込みが終了すると、CPU2はキャッシュメモリ2に記憶されたデータD4を使用した演算を行う。そして、キャッシュメモリ1はCPU1の次の演算に必要なデータD5をメモリから読み込む。CPU1は演算待ち状態である。CPU2のデータD4を使用した演算時間をT22、キャッシュメモリ1のデータD5の読み込み時間をTD5とする。
キャッシュメモリ1のメモリからのデータD5の読み込みが終了すると、CPU1はキャッシュメモリ1に記憶されたデータD5を使用した演算を行う。そして、キャッシュメモリ2は、CPU2のキャッシュメモリ2に記憶されたデータD4を使用した演算が終了すると、CPU2の次の演算に必要なデータD6をメモリから読み込む。CPU2は演算待ち状態である。CPU1のデータD5を使用した演算時間をT13、キャッシュメモリ2のデータD6の読み込み時間をTD6とする。
以上のようなCPU1、キャッシュメモリ1、CPU2、及びキャッシュメモリ2の動作において、本発明の方法では、キャッシュメモリ1のデータD1の読み込み時間TD1、CPU1のデータD1を使用した演算時間T11、キャッシュメモリ2のデータD2の読み込み時間TD2、CPU2のデータD2を使用した演算時間T21、キャッシュメモリ1のデータD3の読み込み時間TD3、CPU1のデータD3を使用した演算時間T12、キャッシュメモリ2のデータD4の読み込み時間TD4、CPU2のデータD4を使用した演算時間T22、キャッシュメモリ1のデータD5の読み込み時間TD5、及びCPU1のデータD5を使用した演算時間T13の合計のみが、CPU1とCPU2の補正CPU使用時間としてカウントされる。
言い換えると、本発明のCPU1とCPU2の補正CPU使用時間HTLは、CPU1とCPU2の従来のCPU使用時間TLから、キャッシュメモリのメモリへのアクセス待ち時間を引いた時間であり、以下の式で表すことができる。
HTL=(TL−TM11−TM12)+(TL−TM21−TM22)
このように、本発明のCPU使用時間カウント方法では、キャッシュメモリのメモリアクセス待ち時間をCPUの使用時間としてカウントしないので、同一プログラムの場合には、毎回同じCPU使用時間となる補正CPU使用時間を算出することができる。
本発明に示される、CPU使用時間カウント方法及びこのCPU使用時間を用いるジョブ制御装置によれば、実質的なCPU使用時間を演算し、同一プログラムの処理であれば、毎回同じCPU使用時間を演算によって求めることができ、あるジョブの終了時間を正確に予測できると共に、複数ジョブが実行される環境でのCPUの性能を予測することができ、更にはCPU使用時間に対する課金に対しても安定したサービスを提供することができるようになる。このため、コンピュータを使用したジョブを依頼したユーザーに対して、常に正しいCPU使用時間に対する課金を行うことが可能となる。
以上本発明を特に好ましい実施の形態を参照して詳細に説明した。本発明の容易な理解のために、本発明の具体的な形態を以下に付記する。
(付記1)複数のCPUと少なくとも1つのメモリが統合ネットワークに接続され、前記CPUとメモリとを使用して、前記統合ネットワークに入力されたジョブの分散処理を行うコンピュータシステムにジョブ管理機構を設け、このジョブ管理機構によって各CPUの実際の使用時間をカウントする方法であって、
各ジョブに使用されたCPU使用時間をカウントし、
前記各ジョブを実行する毎に、各CPUのメモリアクセスにおけるメモリアクセス待ち時間をカウントし、
各ジョブ毎にCPU使用時間から前記各CPUのメモリアクセス待ち時間を差し引いて算出した補正CPU使用時間を、実際のCPU使用時間として設定することを特徴とするCPU使用時間カウント方法。
(付記2)付記1に記載のCPU使用時間カウント方法であって、前記CPU使用時間が、前記ジョブ管理機構にある、該当ジョブが使用した時間をカウントする機能で取得された時間であり、前記CPUのメモリアクセス待ち時間が、メモリアクセス性能値をカウントするハードウエアモニタを使用して算出した該当ジョブのメモリアクセス時間から、当該コンピュータシステムのハードウエア設計上最も高速な該当ジョブのメモリアクセス時間を引いた時間であるCPU使用時間カウント方法。
(付記3)付記1又は2に記載のCPU使用時間カウント方法であって、算出した前記補正CPU使用時間をCPU使用時間制限値と比較し、前記補正CPU使用時間が前記CPU使用時間制限値以上になった時には、前記該当ジョブを終了するCPU使用時間カウント方法。
(付記4)付記1から3の何れか1項に記載のCPU使用時間カウント方法であって、前記該当ジョブからの要求により、前記補正CPU使用時間の表示出力、及び記録出力を出力するCPU使用時間カウント方法。
(付記5)複数のコンピュータを使用してジョブの分散処理を行うコンピュータシステムにおける、各CPUの実際の使用時間をカウントし、この実際の使用時間によってジョブを制御するジョブ制御装置であって、
前記ジョブを実行する毎に、各CPUのメモリアクセス待ち時間をカウントするカウント手段と、
各ジョブ毎に、各CPU使用時間から前記各CPUのメモリアクセス待ち時間を差し引くことにより、補正CPU使用時間を算出する補正CPU使用時間算出手段と、
前記補正CPU使用時間を使用して前記ジョブを制御するジョブ制御手段と、
を備えることを特徴とするジョブ制御装置。
(付記6)付記5に記載のジョブ制御装置であって、前記ジョブ制御装置のメモリ内に前記CPU使用時間を記憶すると共に、前記補正CPU使用時間を記憶するCPU時間管理構造体が設けられているジョブ制御装置。
(付記7)付記6に記載のジョブ制御装置であって、前記CPU時間管理構造体に、更にCPU時間制限値を記憶する領域が設けられているジョブ制御装置。
(付記8)付記7に記載のジョブ制御装置であって、前記ジョブ制御手段は、ジョブ実行中に算出された前記補正CPU使用時間を、前記CPU時間管理構造体に記憶されたCPU時間制限値と比較し、前記設定された実CPU使用時間の値が、前記CPU時間制限値以上になった時には、当該ジョブを停止させるジョブ制御装置。
(付記9)付記5から8の何れかに記載のジョブ制御装置であって、前記ジョブ制御手段は、ジョブからの要求により、そのジョブの実行中に算出した前記補正CPU使用時間をリアルタイムに前記ジョブに通知するジョブ制御装置。
(付記10)付記5から9の何れかに記載のジョブ制御装置であって、前記ジョブ制御手段に、前記ジョブの実行中に算出した前記補正CPU使用時間を外部に出力するデータ出力端子が接続されているジョブ制御装置。
(付記11)付記10に記載のジョブ制御装置であって、前記ジョブ制御装置は、前記データ出力端子に接続する表示装置を備えているジョブ制御装置。
(付記12)付記5から11の何れかに記載のジョブ制御装置であって、前記ジョブ制御手段に、前記ジョブの実行中に算出した前記補正CPU使用時間を記録するデータ記録手段が接続されているジョブ制御装置。
図1Aは従来の集中メモリ型の並列処理型コンピュータの構成を示すブロック構成図である。 図1Bは従来の分散共有メモリ型の並列処理型コンピュータの構成を示すブロック構成図である。 図1Cは従来の分散メモリ型の並列処理型コンピュータの構成を示すブロック構成図である。 図2は本発明のCPU使用時間カウント方法が適用される分散並列コンピュータシステムにおけるジョブの実行環境を説明する図である。 図3Aは本発明のCPU使用時間カウント方法が適用される分散並列コンピュータシステムの構成の一例を示すブロック図である。 図3Bは図3Aのジョブ管理機構の機能を説明するブロック図である。 図4は図3Aに示したジョブ管理機構のCPU使用時間カウント動作の第1の実施例を説明するフローチャートである。 図5は図3A、3Bに示したジョブ管理機構のCPU使用時間カウント動作の第2の実施例を説明するフローチャートである。 図6は図3A、3Bに示したジョブ管理機構のCPU使用時間カウント動作の第3の実施例を説明するフローチャートである。 図7は本発明の方法による補正CPU使用時間と、従来方法によるCPU使用時間との比較を示す線図である。 図8は、1つのジョブを2つのCPUによって行った時の、ジョブ管理機構のCPU使用時間カウント動作の第4の実施例を説明するフローチャートである。 図9は、1つのジョブを2つのCPUによって行った時の、CPUとキャッシュメモリの動作を説明するタイムチャートである。
符号の説明
1 プロセッサ(CPU)
2 統合ネットワーク
3 メモリ空間(メモリ)
5 並列コンピュータシステム
6 ジョブ
7 ディスク装置
8 サーバー
10 ハイエンドコンピュータ
20 ジョブ管理機構

Claims (5)

  1. 複数のCPUと少なくとも1つのメモリが統合ネットワークに接続され、前記CPUとメモリとを使用して、前記統合ネットワークに入力されたジョブの分散処理を行うコンピュータシステムに、CPU使用時間記憶領域と補正CPU使用時間記憶領域とCPU時間制限値記憶領域とを有するメモリであるCPU時間管理構造体及びソフトウエアであるCPU使用時間カウント手段と補正CPU使用時間カウント手段で構成されるジョブ管理機構とCPU動作監視手段とを設け、このジョブ管理機構とCPU動作監視手段とによって、各CPUが前記ジョブを実行する際に使用された実際の使用時間をカウントする方法であって、
    各ジョブに使用されたCPU使用時間を、前記CPU動作監視手段と前記CPU使用時間カウント手段とでカウントして前記CPU使用時間記憶領域に記憶し
    前記各ジョブを実行する毎に、各CPUのメモリアクセスにおけるメモリアクセス待ち時間を前記補正CPU使用時間カウント手段が前記CPU動作監視手段の監視出力によりカウントし、
    各ジョブ毎に前記補正CPU使用時間カウント手段が、前記CPU使用時間から前記各CPUのメモリアクセス待ち時間を差し引いて算出した補正CPU使用時間を、実際のCPU使用時間として前記補正CPU使用時間記憶領域に設定することを特徴とするCPU使用時間カウント方法。
  2. 請求項1に記載のCPU使用時間カウント方法であって、
    前記CPU使用時間が、前記ジョブ管理機構にある、該当ジョブが使用した時間をカウントする機能を有する前記CPU使用時間カウント手段で取得された時間であり、前記CPUのメモリアクセス待ち時間が、メモリアクセス性能値をカウントするハードウエアモニタを使用して算出した該当ジョブのメモリアクセス時間から、当該コンピュータシステムのハードウエア設計上最も高速な該当ジョブのメモリアクセス時間を引いた時間であることを特徴とするCPU使用時間カウント方法。
  3. 請求項1又は2に記載のCPU使用時間カウント方法であって、
    算出した前記補正CPU使用時間を、CPU時間制限値記憶領域に記憶されたCPU使用時間制限値と比較し、前記補正CPU使用時間が前記CPU使用時間制限値以上になった時には、前記ジョブ管理機構が前記該当ジョブを終了することを特徴とするCPU使用時間カウント方法。
  4. 請求項1から3の何れか1項に記載のCPU使用時間カウント方法であって、
    前記コンピュータシステムに表示装置と記録装置が設けられており、前記ジョブ管理機構に補正CPU時間表示/記録出力作成手段が接続されている場合に、
    前記該当ジョブからの要求により、前記ジョブ管理機構は、補正CPU時間表示/記録出力作成手段を使用して、前記表示装置と記録装置に対して、前記補正CPU使用時間の表示出力、及び記録出力を作成して出力することを特徴とするCPU使用時間カウント方法。
  5. 複数のコンピュータを使用してジョブの分散処理を行うコンピュータシステムに、CPU時間制限値記憶領域を有するメモリであるCPU時間管理構造体及びソフトウエアであるCPU使用時間カウント手段と補正CPU使用時間カウント手段で構成されるジョブ管理機構とCPU動作監視手段とを設け、
    前記CPU動作監視手段と前記CPU使用時間カウント手段によって各CPUの実際の使用時間をカウントし、
    前記ジョブを実行する毎に、前記補正CPU使用時間カウント手段が前記CPU動作監視手段の監視出力によりCPUのメモリアクセス待ち時間をカウントし、
    各ジョブ毎に、前記補正CPU使用時間カウント手段によって各CPU使用時間から前記各CPUのメモリアクセス待ち時間を差し引くことにより、補正CPU使用時間を算出し、
    ジョブ管理機構は、算出した前記補正CPU使用時間を、前記CPU時間制限値記憶領 域に記憶されたCPU使用時間制限値と比較し、前記補正CPU使用時間が前記CPU使用時間制限値以上になった時には、前記ジョブ管理機構が前記該当ジョブを終了する制御を行うようにしたことを特徴とするジョブ制御装置。
JP2004570162A 2003-03-31 2003-03-31 Cpu使用時間カウント方法及びこのcpu使用時間を用いるジョブ制御装置 Expired - Fee Related JP3998686B2 (ja)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
PCT/JP2003/004087 WO2004088518A1 (ja) 2003-03-31 2003-03-31 Cpu使用時間カウント方法及びこのcpu使用時間を用いるジョブ制御装置

Publications (2)

Publication Number Publication Date
JPWO2004088518A1 JPWO2004088518A1 (ja) 2006-07-06
JP3998686B2 true JP3998686B2 (ja) 2007-10-31

Family

ID=33105344

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2004570162A Expired - Fee Related JP3998686B2 (ja) 2003-03-31 2003-03-31 Cpu使用時間カウント方法及びこのcpu使用時間を用いるジョブ制御装置

Country Status (3)

Country Link
EP (1) EP1555613A4 (ja)
JP (1) JP3998686B2 (ja)
WO (1) WO2004088518A1 (ja)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20190014387A (ko) * 2017-08-02 2019-02-12 현대오트론 주식회사 Mcu 동작 감시 시스템 및 제어방법

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP4276201B2 (ja) 2005-03-31 2009-06-10 富士通株式会社 Smtプロセッサ用課金処理装置,課金処理方法,および課金処理プログラム
US8140885B2 (en) 2007-02-14 2012-03-20 International Business Machines Corporation Accounting for microprocessor resource consumption

Family Cites Families (13)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS58191045A (ja) * 1982-04-30 1983-11-08 Fujitsu Ltd 実行時間管理装置
JPS634350A (ja) * 1986-06-24 1988-01-09 Nec Corp 遅延タスク監視方式
JPH01191952A (ja) * 1988-01-27 1989-08-02 Nec Corp Cpu使用時間表示方式
JPH03127237A (ja) * 1989-10-13 1991-05-30 Fujitsu Ltd 情報処理装置の性能測定方式
JPH04326434A (ja) * 1991-04-26 1992-11-16 Hitachi Ltd ジョブ実行予測精度向上制御方法
JPH05108418A (ja) * 1991-10-21 1993-04-30 Toshiba Corp プログラム異常検出方式
JP2808584B2 (ja) * 1992-04-06 1998-10-08 日本電気株式会社 性能予測装置におけるcpu使用時間算定方式
JPH0695931A (ja) * 1992-09-14 1994-04-08 Toshiba Corp システム実行性能評価支援装置
US5845310A (en) 1993-12-15 1998-12-01 Hewlett-Packard Co. System and methods for performing cache latency diagnostics in scalable parallel processing architectures including calculating CPU idle time and counting number of cache misses
AU2364095A (en) * 1994-05-12 1995-12-05 Ast Research, Inc. Cpu activity monitoring through cache watching
JPH08272627A (ja) * 1995-03-30 1996-10-18 Ricoh Co Ltd リアルタイムタスク制御装置
US7093234B2 (en) * 2001-08-24 2006-08-15 International Business Machines Corporation Dynamic CPU usage profiling and function call tracing
GB2366891B (en) * 2001-12-06 2002-11-20 Appsense Ltd Improvements in and relating to computer apparatus terminal server apparatus & performance management methods therefor

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20190014387A (ko) * 2017-08-02 2019-02-12 현대오트론 주식회사 Mcu 동작 감시 시스템 및 제어방법
KR101988723B1 (ko) 2017-08-02 2019-06-12 현대오트론 주식회사 Mcu 동작 감시 시스템 및 제어방법

Also Published As

Publication number Publication date
EP1555613A4 (en) 2009-04-15
EP1555613A1 (en) 2005-07-20
WO2004088518A1 (ja) 2004-10-14
JPWO2004088518A1 (ja) 2006-07-06

Similar Documents

Publication Publication Date Title
US8484643B2 (en) CPU usage time counting method and job control system using this CPU usage time
US8171267B2 (en) Method and apparatus for migrating task in multi-processor system
EP1750200A2 (en) System and method for executing job step, and computer product
JP4064924B2 (ja) メモリアクセスを制御する方法及び装置
US20110161978A1 (en) Job allocation method and apparatus for a multi-core system
US8141089B2 (en) Method and apparatus for reducing contention for computer system resources using soft locks
US20160110223A1 (en) Multi-threaded queuing system for pattern matching
US9047138B2 (en) Apparatus and method for thread scheduling and lock acquisition order control based on deterministic progress index
US20120297216A1 (en) Dynamically selecting active polling or timed waits
JP2008090546A (ja) マルチプロセッサシステム
US20230127112A1 (en) Sub-idle thread priority class
KR100883655B1 (ko) 재구성 가능한 프로세서를 갖는 문맥 교환 시스템 및 방법
US8977752B2 (en) Event-based dynamic resource provisioning
JP4253796B2 (ja) コンピュータ及び制御方法
JP3998686B2 (ja) Cpu使用時間カウント方法及びこのcpu使用時間を用いるジョブ制御装置
JP2009176146A (ja) マルチプロセッサシステム、障害検出方法および障害検出プログラム
JP2009080583A (ja) 情報処理装置、並列処理最適化方法およびプログラム
US9323642B2 (en) Calculation apparatus, calculation method, and recording medium for calculation program
US8943503B2 (en) Apparatus and method for thread progress tracking using deterministic progress index
US20090077349A1 (en) Method of managing instruction cache and processor using the method
JP6627475B2 (ja) 処理リソース制御プログラム、処理リソース制御装置、および処理リソース制御方法
KR20110018618A (ko) 다중 쓰레드의 비동기 입출력 처리 장치 및 그 방법
JP2019160155A (ja) 情報処理装置、情報処理方法、及びプログラム
WO2012101759A1 (ja) プロセッサ処理方法、およびプロセッサシステム
KR101248470B1 (ko) 자원 모니터링 컴퓨팅 장치, 방법 및 그 방법을 실행시키기 위한 프로그램을 기록한 기록매체

Legal Events

Date Code Title Description
A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20060926

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20061127

A02 Decision of refusal

Free format text: JAPANESE INTERMEDIATE CODE: A02

Effective date: 20070116

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20070319

A911 Transfer to examiner for re-examination before appeal (zenchi)

Free format text: JAPANESE INTERMEDIATE CODE: A911

Effective date: 20070326

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20070417

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20070618

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

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20070807

R150 Certificate of patent or registration of utility model

Free format text: JAPANESE INTERMEDIATE CODE: R150

Ref document number: 3998686

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20100817

Year of fee payment: 3

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20110817

Year of fee payment: 4

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20120817

Year of fee payment: 5

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20120817

Year of fee payment: 5

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20130817

Year of fee payment: 6

LAPS Cancellation because of no payment of annual fees