JP2011258058A - Performance prediction apparatus, computer program and performance prediction method - Google Patents
Performance prediction apparatus, computer program and performance prediction method Download PDFInfo
- Publication number
- JP2011258058A JP2011258058A JP2010133015A JP2010133015A JP2011258058A JP 2011258058 A JP2011258058 A JP 2011258058A JP 2010133015 A JP2010133015 A JP 2010133015A JP 2010133015 A JP2010133015 A JP 2010133015A JP 2011258058 A JP2011258058 A JP 2011258058A
- Authority
- JP
- Japan
- Prior art keywords
- computer system
- execution time
- execution
- time
- program
- 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.)
- Pending
Links
Images
Landscapes
- Debugging And Monitoring (AREA)
Abstract
【課題】ある計算機システムでアプリケーションプログラムを実行できない場合でも、その計算機システムでアプリケーションプログラムを実行するのにかかる時間を正確に予測する。
【解決手段】ログ解析部114(実行ログ取得部)は、計算機システム101においてアプリケーション102を実行したアプリケーションログ107(実行ログ)を取得する。ログ解析部114(総実行時間算出部、第二実行時間算出部)は、実行ログを解析して、アプリケーション102を実行するのにかかった時間や特定の処理にかかった時間を算出する。新規システム性能見積部118(総実行時間予測部)は、計算機システム101においてアプリケーション102を実行するのにかかった時間のうち、特定の処理にかかった時間を、計算機システム102において特定の処理にかかる時間で置き換える。
【選択図】図1Even when an application program cannot be executed on a certain computer system, the time required to execute the application program on the computer system is accurately predicted.
A log analysis unit 114 (execution log acquisition unit) acquires an application log 107 (execution log) obtained by executing an application 102 in a computer system 101. The log analysis unit 114 (total execution time calculation unit, second execution time calculation unit) analyzes the execution log and calculates the time taken to execute the application 102 or the time taken for a specific process. The new system performance estimation unit 118 (total execution time prediction unit) takes the time required for specific processing out of the time required to execute the application 102 in the computer system 101 for the specific processing in the computer system 102. Replace with time.
[Selection] Figure 1
Description
この発明は、開発中の計算機システムなどで、既存のアプリケーションプログラムを実行するのにかかる時間を予測する性能予測装置に関する。 The present invention relates to a performance prediction apparatus that predicts the time required to execute an existing application program in a computer system under development.
計算機システムの性能を測定する技術として、ベンチマークテストがある。ベンチマークテストは、一般的ないくつかの処理を計算機システムに実行させて、処理にかかった時間を測定することにより、計算機システムの一般的な性能を測定する。
組み込みシステムなど、実行するアプリケーションプログラムが限られる計算機システムでは、一般的な性能よりも、そのアプリケーションプログラムを実行した場合の性能が重要である。そのアプリケーションプログラムを実行した場合の性能を測定する最も簡単な方法は、実際に計算機システムでそのアプリケーションプログラムを実行してみることである。
A benchmark test is a technique for measuring the performance of a computer system. The benchmark test measures the general performance of a computer system by causing the computer system to execute some general processes and measuring the time taken for the processes.
In a computer system in which an application program to be executed is limited, such as an embedded system, performance when the application program is executed is more important than general performance. The simplest method for measuring the performance when the application program is executed is to actually execute the application program on a computer system.
計算機システムが開発中である場合など、実際に計算機システムでアプリケーションプログラムを実行することができない場合がある。また、2つの計算機システムで、ベンチマークテストなどにより測定した一般的な性能の比率が、そのまま、そのアプリケーションプログラムを実行した場合の性能の比率にもあてはまるとは限らない。
この発明は、例えば、上記のような課題を解決するためになされたものであり、ある計算機システムでアプリケーションプログラムを実行できない場合であっても、その計算機システムでアプリケーションプログラムを実行するのにかかる時間を正確に予測することを目的とする。
In some cases, such as when the computer system is under development, the application program cannot actually be executed on the computer system. In addition, a general performance ratio measured by a benchmark test or the like between two computer systems does not always apply to a performance ratio when the application program is executed as it is.
The present invention has been made to solve the above-described problems, for example, and even when an application program cannot be executed on a certain computer system, the time taken to execute the application program on the computer system. The purpose is to accurately predict.
この発明にかかる性能予測装置は、
データを処理する処理装置と、第一実行時間取得部と、実行ログ取得部と、総実行時間算出部と、第二実行時間算出部と、総実行時間予測部とを有し、
上記第一実行時間取得部は、上記処理装置を用いて、第一の計算機システムにおいて特定の機能を実現する第一特定プログラムについて、上記第一特定プログラムを実行するのにかかる時間を取得し、
上記実行ログ取得部は、上記処理装置を用いて、上記第一の計算機システム及び第二の計算機システムにおいて実行可能なアプリケーションプログラムについて、上記第二の計算機システムにおいて上記アプリケーションプログラムを実行した実行ログを取得し、
上記総実行時間算出部は、上記処理装置を用いて、上記実行ログ取得部が取得した実行ログを解析して、上記アプリケーションプログラムを実行するのにかかった時間を算出し、
上記第二実行時間算出部は、上記処理装置を用いて、上記実行ログ取得部が取得した実行ログを解析して、上記第一の計算機システムにおいて上記第一特定プログラムが実現する特定の機能を上記第二の計算機システムにおいて実現する第二特定プログラムについて、上記アプリケーションプログラムが上記第二特定プログラムを呼び出したとき、上記第二特定プログラムを実行するのにかかった時間を算出し、
上記総実行時間予測部は、上記処理装置を用いて、上記総実行時間算出部が算出した時間のうち、上記第二実行時間算出部が算出した時間を上記第一実行時間取得部が取得した時間で置き換えることにより、上記第一の計算機システムにおいて上記アプリケーションプログラムを実行するのにかかる時間を予測することを特徴とする。
The performance prediction apparatus according to the present invention is:
A processing device that processes data, a first execution time acquisition unit, an execution log acquisition unit, a total execution time calculation unit, a second execution time calculation unit, and a total execution time prediction unit;
The first execution time acquisition unit acquires the time required to execute the first specific program for the first specific program that realizes a specific function in the first computer system, using the processing device,
The execution log acquisition unit uses the processing device to obtain an execution log for executing the application program in the second computer system for an application program executable in the first computer system and the second computer system. Acquired,
The total execution time calculation unit uses the processing device to analyze the execution log acquired by the execution log acquisition unit and calculate the time taken to execute the application program,
The second execution time calculation unit analyzes the execution log acquired by the execution log acquisition unit using the processing device, and performs the specific function realized by the first specific program in the first computer system. For the second specific program realized in the second computer system, when the application program calls the second specific program, it calculates the time taken to execute the second specific program,
The first execution time acquisition unit acquires the time calculated by the second execution time calculation unit among the times calculated by the total execution time calculation unit, using the processing device. By replacing with time, the time required to execute the application program in the first computer system is predicted.
この発明にかかる性能予測装置によれば、現時点では第一の計算機システムでアプリケーションプログラムを実行できない場合であっても、第一の計算機システムでアプリケーションプログラムを実行するのにかかる時間を正確に予測できる。 According to the performance prediction device of the present invention, even when the application program cannot be executed on the first computer system at the present time, the time required to execute the application program on the first computer system can be accurately predicted. .
組込み計算機システムにおいて、既存計算機システムからオペレーティングシステム(以下「OS」と呼ぶ。)やハードウェア(以下「HW」と呼ぶ。)を変更し、新規計算機システムに移行する場合、開発前に性能見積もりを行う必要がある。
計算機システムの性能見積もり方式として、組込み機器の分野によって複数のベンチマークの組み合わせを変更し、見積もり対象の組み込み機器分野の性能見積もりを行う方式がある。
また、評価システムに対し構成を自動認識し適切な評価対象プログラムを抽出し、評価対象プログラムを実行し評価を行う方式がある。
このような計算機システムの性能見積方式では、アプリケーションの特徴に併せたシステムの性能を見積もることができない。
In an embedded computer system, when an operating system (hereinafter referred to as “OS”) or hardware (hereinafter referred to as “HW”) is changed from an existing computer system and migrated to a new computer system, a performance estimate is required before development. There is a need to do.
As a performance estimation method for a computer system, there is a method for changing the combination of a plurality of benchmarks depending on the field of embedded devices and estimating the performance of the target embedded device field.
There is also a method of automatically recognizing the configuration of the evaluation system, extracting an appropriate evaluation target program, executing the evaluation target program, and performing evaluation.
In such a computer system performance estimation method, it is not possible to estimate the system performance in accordance with the characteristics of the application.
以下に説明する性能予測装置は、新規・既存計算機上でOS基本処理やファイルアクセスといった基本性能を測定し、既存計算機システム上にてアプリケーションログを取得し、そのログを実測値使用部と性能比使用部にわけ、実測値使用部には新規計算機上で測定した基本性能を使用し、性能比使用部にはベンチマークによって計測した新規計算機と既存計算機の性能比を使用し、新規計算機システムの性能見積もりを行う。
性能予測装置は、新規計算機システムでアプリケーションを動かすことなく、アプリケーションの特徴に合わせた新規システムの性能を見積もることができるので、開発前に詳細な新規システムの性能見積もりを行うことができる。
The performance prediction device described below measures basic performance such as OS basic processing and file access on a new / existing computer, acquires an application log on the existing computer system, and uses the actual value using unit and the performance ratio. Using the basic performance measured on the new computer for the measured value used part, and using the performance ratio of the new computer and the existing computer measured by the benchmark for the performance ratio used part, the performance of the new computer system Make an estimate.
Since the performance prediction apparatus can estimate the performance of the new system according to the characteristics of the application without moving the application on the new computer system, the performance prediction of the new system can be performed in detail before development.
実施の形態1.
実施の形態1について、図1〜図8を用いて説明する。
Embodiment 1 FIG.
The first embodiment will be described with reference to FIGS.
図1は、この実施の形態における性能見積もりシステムのシステム構成図である。 FIG. 1 is a system configuration diagram of a performance estimation system according to this embodiment.
既存の計算機システム101(第二の計算機システム)は、性能見積対象である既存アプリケーション102(アプリケーションプログラム)と、オペレーティングシステムの差異を吸収するソフトウェア層であるミドルウェア103と、ログ取得部104と、既存計算機システム上のオペレーティングシステム105と、既存計算機システム上のハードウェア106とからなる。
ログ取得部104(実行ログ取得部)は、ミドルウェアAPIとそのミドルウェアAPI開始直後と終了直前のタイムスタンプとミドルウェアの引数を取得し、ミドルウェアがどのスレッドで実行されているかを表すスレッドIDを取得し、またミドルウェア内でコールされるシステムコールとそのシステムコールの開始直前と終了直後のタイムスタンプとシステムコールの引数を取得する。
アプリケーションログ107(実行ログ)は、既存計算機システム上で性能見積対象であるアプリケーションを実行した際にログ取得部104で取得できるアプリケーションログである。
The existing computer system 101 (second computer system) includes an existing application 102 (application program) that is a performance estimation target,
The log acquisition unit 104 (execution log acquisition unit) acquires a middleware API, a time stamp immediately before and after the middleware API starts, and an argument of the middleware, and acquires a thread ID indicating in which thread the middleware is executed. Also, the system call called in the middleware, the time stamp immediately before and after the start of the system call, and the argument of the system call are obtained.
The application log 107 (execution log) is an application log that can be acquired by the
新規あるいは既存の計算機システム108(第一の計算機システム)は、OS基本処理及びファイルアクセスなどの基本性能を取得する基本性能取得部109(第一実行時間取得部)と、新規・既存計算機上のオペレーティングシステム111と、新規・既存計算機上のハードウェア112とからなる。
計算機システム108における新規・既存オペレーティングシステム111、新規・既存ハードウェア112の構成は、例えば評価ボードのように基本性能を取得できるような最小限な構成でよい。
基本性能結果113は、新規・既存計算機上で取得した基本性能結果である。
A new or existing computer system 108 (first computer system) includes a basic performance acquisition unit 109 (first execution time acquisition unit) that acquires basic performance such as OS basic processing and file access, and a new / existing computer. It comprises an
The configuration of the new / existing
The
ログ解析部114(総実行時間算出部・第二実行時間算出部)は、ログ取得部104で得たアプリケーションログ107を解析し、ログ解析結果115を得る。
ログ解析結果115は、新規・既存計算機で測定した基本性能結果113を使用する実測値使用部116と、ベンチマークによって計測した新規計算機と既存計算機の性能比を使用する性能比使用部117とからなる。
The log analysis unit 114 (total execution time calculation unit / second execution time calculation unit) analyzes the
The
新規システム性能見積部118(総実行時間予測部)は、ログ解析部114で得たログ解析結果115を使用して、実測値使用部116には新規計算機で得た基本性能を使用し、性能比使用部117には既存システムの結果に新規・既存計算機の性能比を加味した結果を使用し、新規システム性能見積結果119を得る。
The new system performance estimation unit 118 (total execution time prediction unit) uses the
図2は、この実施の形態における新規システム性能見積もり処理の全体フロー図である。
新規システムの実測値使用部をOS基本性能とし、OSにWindows(登録商標)CEを使用した際のフローを動作例として説明する。
FIG. 2 is an overall flowchart of the new system performance estimation process in this embodiment.
The flow when using the measured value use unit of the new system as the OS basic performance and using Windows (registered trademark) CE as the OS will be described as an operation example.
ステップ201で、基本性能取得部109は、既存・新規システム上にてOS基本性能を測定、ベンチマークを実行する。
ステップ202で、新規システム性能見積部118は、ベンチマーク実行結果より既存・新規性能比を算出する。
ステップ203で、ログ取得部104は、既存アプリケーションのログを取得する。
ステップ204で、ログ解析部114は、ステップ203で得た既存アプリケーションのログ解析を行い、ログ解析結果205を出力する。
ステップ206で、新規システム性能見積部118は、ログ解析結果205を基に新規システムの性能見積を行い、新規システム性能見積結果207を出力する。
In
In
In
In
In
図3は、この実施の形態におけるアプリケーションログ107の一例を示す図である。
ID301は、ログが出力されたスレッドのIDである。
関数名302は、ミドルウェアAPIとシステムコールの名前であり、ミドルウェアAPIの場合、Mw_×××のようにシステムコールと区別がつく。
引数303は、ミドルウェアAPIあるいはシステムコールの引数である。
タイムスタンプ304は、ログ出力時のタイムスタンプである。
FIG. 3 is a diagram showing an example of the
The
An
The
ログを出力する場所は、ミドルウェア関数内である。ログを取得するタイミングは、ミドルウェアAPI開始直後と終了直前、システムコールの開始直前と終了直後とする。 The log output location is in the middleware function. Logs are acquired immediately after the middleware API starts and immediately before the end, and immediately before and after the start of the system call.
図4は、この実施の形態におけるログ解析ステップ204のフロー図である。
ステップ401で、ログ解析部114は、OS基本処理の解析をするか判断する。OS基本処理の解析でないと判断した場合、ステップ402で、ログ解析部114は、その他の解析処理を行う。
ステップ401でOS基本処理の解析をすると判断し、ステップ403でログにイベント切り替え命令がある場合、ステップ404で、ログ解析部114は、イベント切り替えのマッチング処理を行う。
ステップ405でログに排他制御命令がある場合、ステップ406で、ログ解析部114は、排他制御のマッチング処理を行う。
ステップ407でログにSemaphore命令がある場合やステップ408でログにMutex命令がある場合、ステップ409で、ログ解析部114は、Semaphore/Mutexのマッチング処理を行う。
ステップ403、ステップ405、ステップ407、ステップ408すべてに該当しない場合、ステップ410で、ログ解析部114は、OS基本処理で計測した箇所でないことをチェックする。
FIG. 4 is a flowchart of the
In
If it is determined in
If there is an exclusive control command in the log in
If there is a Semaphore instruction in the log in
If none of
図5は、この実施の形態におけるイベント切り替えのマッチング処理ステップ404の詳細フロー図である。
ステップ501で、実行待ちが解除(SetEvent)されたスレッドが直後に実行待ち(WaitForSingleObject)の終わりのログを出している場合、ステップ502で、ログ解析部114は、SetEvent:StartとWaitForSingleObject:Endをイベント切り替え処理処理としてチェックする。
これは、WaitforSingleObject命令で待ち状態に入ったスレッドが、SetEventによって待ち状態が解除されてからスレッドが切り替わるまでの時間である。
FIG. 5 is a detailed flowchart of the event switching
In
This is the time from when a thread that has entered the wait state with the WaitForSingleObject instruction is released from the wait state with SetEvent until the thread is switched.
ステップ501で、違うログがでていた場合、ログ解析部114は、イベント切り替えが起こらなかったと判断する。ステップ503で、ログ解析部114は、OS基本性能測定で計測した箇所でないことをチェックする。
If a different log appears in
図6は、この実施の形態における排他制御のマッチング処理ステップ406の詳細フロー図である。
「排他制御の資源確保ブロック後のスレッドプライオリティ反転なし」は、ログだけでOS基本処理部を抽出することができないため、OS基本処理以外の部分と分離する作業が必要である。
FIG. 6 is a detailed flowchart of the exclusive control matching
“No thread priority reversal after exclusive control resource reservation block” cannot extract the OS basic processing unit only by the log, and therefore requires a work to separate from the part other than the OS basic processing.
ステップ601で資源解放前に同一資源を確保しようとし、ステップ602で資源確保(EnterCriticalSection)スレッドが資源開放待ちスレッドよりもプライオリティが低い場合、ステップ603で、ログ解析部114は、資源確保していたスレッドが資源開放を行ってから(LeaveCriticalSection:Start)、資源開放待ちのスレッドが資源を確保し終えるまで(EnterCriticalSection:End)をOS基本性能測定で計測した箇所としてチェックする。
If the same resource is attempted to be secured before releasing the resource in
ステップ602で資源確保(EnterCriticalSection)スレッドが資源開放待ちスレッドよりもプライオリティが高い場合、ステップ604で、ログ解析部114は、資源開放待ちのスレッドが資源確保しようとしてから(EnterCriticalSection:Start)、直後のログをOS基本性能測定で計測した箇所としてチェックを行う。
しかし、ステップ604該当部分は、ログだけではOS基本性能測定で計測した箇所を抽出することができないため、OS基本処理以外の部分と分離する作業が必要である。
If the priority of the resource securing (Enter Critical Section) thread is higher than that of the resource release waiting thread in
However, since the portion measured by the OS basic performance measurement cannot be extracted from the portion corresponding to Step 604 only by the log, it is necessary to separate the portion from the portion other than the OS basic processing.
ステップ605で、ログ解析部114は、OS基本性能測定で計測した箇所とそれ以外の部分を分離する。
ステップ606で、ログ解析部114は、ステップ604該当における計測時間をタイムスタンプにより計算する。
ステップ607で、ログ解析部114は、ステップ606で取得した時間からステップ604で該当するOS基本処理時間を差し引き、ステップ606で取得した時間からOS基本処理以外の時間を算出する。
ステップ608で、ログ解析部114は、ステップ607で算出した時間をOS基本性能測定で計測した箇所でないことをチェックし、OS基本性能測定で計測した箇所とその他の箇所で分けることができる。
In
In
In
In step 608, the
ステップ601で、資源解放前に同一資源を確保しようとしていない場合、ステップ609で、ログ解析部114は、測定した排他制御のOS基本処理が起こらなかったと判断してOS基本性能測定で計測した箇所でないことをチェックする。
If it is determined in
図7は、この実施の形態におけるSemaphore/Mutexのマッチング処理ステップ409の詳細フロー図である。
「Semaphore」あるいは「Mutex」は、ログだけでOS基本処理部を抽出することができないため、OS基本処理以外の部分と分離する作業が必要である。
FIG. 7 is a detailed flowchart of Semaphore / Mutex
In “Semaphore” or “Mutex”, the OS basic processing unit cannot be extracted only by the log, and therefore, it is necessary to separate it from parts other than the OS basic processing.
ステップ701で、セマフォの開放(ReleaseSemaphore)を行おうとした場合、ステップ702で、ログ解析部114は、セマフォの開放を行おう(ReleaseSemaphore:Start)としてから、直後のログをOS基本性能測定で計測した箇所としてチェックを行う。
ステップ701で、セマフォの開放ではない場合、ミューテックスの開放(ReleaseMutex)を行おうとしているので、ステップ703で、ログ解析部114は、ミューテックスの開放を(ReleaseMutex:Start)としてから、直後のログをOS基本性能測定で計測した箇所としてチェックを行う。
しかし、ステップ702、ステップ703該当部分は、ログだけではOS基本性能測定で計測した箇所を抽出することができないため、OS基本処理以外の部分と分離する作業が必要である。
In
If the semaphore is not released in
However, the portions corresponding to step 702 and step 703 cannot be extracted from the portion measured by the OS basic performance measurement only by the log, and therefore, the work separated from the portions other than the OS basic processing is necessary.
ステップ704で、ログ解析部114は、OS基本性能測定で計測した箇所とそれ以外の部分を分離する。
ステップ705で、ログ解析部114は、ステップ702、ステップ703該当における計測時間をタイムスタンプにより計算する。
ステップ706で、ログ解析部114は、ステップ705で取得した時間からステップ702、ステップ703で該当するOS基本処理時間を差し引き、ステップ705で取得した時間からOS基本処理以外の時間を算出する。
ステップ707で、ログ解析部114は、ステップ706で算出した時間をOS基本性能測定で計測した箇所でないことをチェックし、OS基本性能測定で計測した箇所とその他の箇所で分けることができる。
In
In
In
In
図8は、この実施の形態における新規システム性能見積もり処理の詳細フロー図である。
ログ解析結果205をもとに、ステップ801で基本性能測定で計測した処理部の場合、ステップ802で、新規システム性能見積部118は、マッチングした箇所を新規システム上で計測した対応基本処理性能値に置き換える。
ステップ801で基本性能測定で計測した処理部でない場合、ステップ803で、新規システム性能見積部118は、基本性能測定で計測した処理部でない計測時間に新規・既存性能比を加味し置き換える。
FIG. 8 is a detailed flowchart of the new system performance estimation process in this embodiment.
In the case of the processing unit measured by the basic performance measurement in
If it is not the processing unit measured in the basic performance measurement in
以上のように、新規既存計算機上で基本性能を実測し、新規・既存計算機の性能比を計算し、既存アプリケーションのログを取得し、そのログを解析し実測値使用部と性能比使用部に分け新規システムの性能見積もりをおこなうようにしているので、既存アプリケーションを新規システム上で動かすことなく既存アプリケーションの特徴にあった新規システムの性能見積もりを行うことができる。 As described above, measure the basic performance on the new existing computer, calculate the performance ratio of the new / existing computer, acquire the log of the existing application, analyze the log, and use the measured value use part and the performance ratio use part Since the performance estimation of the divided new system is performed, it is possible to estimate the performance of the new system according to the characteristics of the existing application without moving the existing application on the new system.
以上説明した性能見積もり方式は、OSやHWが異なる計算機システム上で既存アプリケーションを動作させたときの、アプリケーション処理性能を、動作ログを元に算出する。 The performance estimation method described above calculates the application processing performance when an existing application is operated on a computer system with a different OS or HW based on the operation log.
この性能見積もり方式は、OS基本性能を測定した結果を動作ログで測定した実行時間と組み合わせることでアプリケーションの処理性能を算出する。 In this performance estimation method, the processing performance of an application is calculated by combining the result of measuring the OS basic performance with the execution time measured by the operation log.
実施の形態2.
実施の形態1では、新規システム上で計測したOS基本性能を実測値として使用するようにしたものであるが、OS基本性能の代わりにファイルアクセス性能やグラフィック性能を新規システム上で計測し実測値としてもよい。
Embodiment 2. FIG.
In the first embodiment, the OS basic performance measured on the new system is used as the actual measurement value, but instead of the OS basic performance, the file access performance and graphic performance are measured on the new system and the actual measurement value is obtained. It is good.
実施の形態3.
実施の形態3について、図9〜図16を用いて説明する。
なお、実施の形態1〜実施の形態2と共通する部分については、同一の符号を付し、説明を省略する。
Embodiment 3 FIG.
A third embodiment will be described with reference to FIGS.
In addition, about the part which is common in Embodiment 1- Embodiment 2, the same code | symbol is attached | subjected and description is abbreviate | omitted.
図9は、この実施の形態における性能予測システム800の全体構成の一例を示すシステム構成図である。
性能予測システム800は、性能予測装置100、2つの計算機システム810,820を有する。性能予測システム800は、アプリケーションプログラム830を計算機システム810が実行した結果に基づいて、アプリケーションプログラム830を計算機システム820が実行した場合の結果を予測し、計算機システム820の性能を評価する。
FIG. 9 is a system configuration diagram showing an example of the overall configuration of the
The
計算機システム810(第二の計算機システム)は、既に稼働しているシステムであり、アプリケーションプログラム830を含む様々なプログラムを実行することができる。
The computer system 810 (second computer system) is an already operating system and can execute various programs including the
これに対し、計算機システム820(第一の計算機システム)は、開発中のシステムであり、未完成である。アプリケーションプログラム830は、計算機システム820でも実行可能なプログラムであるが、計算機システム820が未完成であるため、現時点では、計算機システム820がアプリケーションプログラム830を実行することはできない。しかし、計算機システム820は、基本的なプログラムなど、いくつかのプログラムを実行することはできる。
例えば、計算機システム820は、組み込みシステムであり、制御対象となる装置に組み込まれて動作するシステムである。しかし、計算機システム820は、開発中のため、まだ、制御対象装置に組み込まれていない。アプリケーションプログラム830は、制御対象装置を制御するプログラムであるため、制御対象装置に組み込まれていない状態の計算機システム820では、実行することができない。
On the other hand, the computer system 820 (first computer system) is a system under development and is incomplete. The
For example, the
このような状況において、性能予測装置100は、計算機システム820がアプリケーションプログラム830を実行するのにかかる時間を予測する。性能予測システム800の利用者は、性能予測装置100が予測した結果に基づいて、予測される計算機システム820の性能を評価し、必要があれば、計算機システム820の構成を変更するなどの対処をする。これにより、所望の性能を持つ計算機システム820を開発することができる。
In such a situation, the
図10は、この実施の形態における計算機システム810,820のハードウェア構成の一例を示すハードウェア構成図である。
計算機システム810は、例えば、処理装置811と、入力装置812と、出力装置813と、記憶装置814とを有する。計算機システム820も同様である。
FIG. 10 is a hardware configuration diagram showing an example of the hardware configuration of the
The
処理装置811は、記憶装置814が記憶したプログラムを実行することにより、記憶装置814が記憶したデータを処理し、計算機システム810全体を制御する。
記憶装置814は、処理装置811が実行するプログラムや処理装置811が処理するデータを記憶する。
入力装置812は、計算機システム810の外部から情報を入力し、処理装置811が処理できるデータに変換する。入力装置812が変換したデータは、処理装置811が直接処理をしてもよいし、記憶装置814が一時的に記憶してもよい。
出力装置813は、処理装置811が処理したデータや記憶装置814が記憶したデータを変換して、計算機システム810の外部に出力する。
The
The
The
The
図11は、この実施の形態における計算機システム810が実行するプログラムの構成の一例を示す図である。
計算機システム810は、オペレーティングシステム815、ミドルウェア816、ベンチマークプログラム817、ログ生成プログラム818、アプリケーションプログラム830などのプログラムを実行する。これらのプログラムは、記憶装置814が記憶し、処理装置811が実行する。
FIG. 11 is a diagram showing an example of the configuration of a program executed by the
The
オペレーティングシステム815は、計算機システム810のハードウェア資源を管理し、オペレーティングシステム815上で動作するアプリケーションプログラム830などのプログラムに、ハードウェア資源を割り当てる。また、オペレーティングシステム815は、アプリケーションプログラム830などのプログラムに対して、システムコールを提供する。アプリケーションプログラム830などのプログラムがシステムコールを呼び出すことにより、入出力処理などオペレーティングシステム815が有する様々な機能が提供される。
オペレーティングシステム815がアプリケーションプログラム830などのプログラムに提供する機能には、例えば、ファイルアクセス機能がある。ファイルアクセス機能は、記憶装置814などが記憶したファイルに対して、オープン、クローズ、読み出し、書き込みなどの操作をする機能である。
また、オペレーティングシステム815がアプリケーションプログラム830などのプログラムに提供する機能には、例えば、イベント切替機能、排他制御機能、同期制御機能などがある。イベント切替機能は、入出力処理の完了などのイベントを待って待機しているスレッドがあり、そのスレッドが待っていたイベントが発生した場合に、実行中のスレッドの優先度と待機中のスレッドの優先度とを比較して、待機中のスレッドの優先度のほうが高ければ、実行中のスレッドを待機状態に切り替え、待機中のスレッドの実行を再開する機能である。排他制御機能は、複数のスレッドが一つのデータを更新することによる不整合の発生を防ぐため、あるスレッドがデータを更新しているときに、他のスレッドがそのデータを更新しようした場合に、データの更新が終わるまで他のスレッドを待機させる機能である。同期制御機能は、複数のスレッドを協調動作させるため、あるスレッドが更新したデータを利用する他のスレッドを、データの更新が終わるまで待機させる機能である。
The
Examples of functions provided by the
The functions provided by the
ミドルウェア816は、オペレーティングシステム815の機能を拡張して、汎用的な機能をアプリケーションプログラム830などのプログラムに提供するプログラムである。ミドルウェア816がアプリケーションプログラム830などのプログラムに提供する機能には、例えば、データベース管理機能など、より高度な処理を実現するための機能や、拡張ファイルアクセス機能、グラフィック機能、ネットワーク機能など、オペレーティングシステム815の機能を補完する機能などがある。
The
アプリケーションプログラム830は、所定の処理をするプログラムである。アプリケーションプログラム830は、オペレーティングシステム815やミドルウェア816が提供する機能を呼び出して利用する。
The
ベンチマークプログラム817は、計算機システム810の性能を測定するプログラムである。ベンチマークプログラム817は、所定の計算を実行するのにかかった時間を測定し、処理装置811の処理速度を測定する。また、ベンチマークプログラム817は、オペレーティングシステム815やミドルウェア816が提供する機能を呼び出して、処理にかかった時間を測定し、オペレーティングシステム815やミドルウェア816の処理速度を測定する。
The
ログ生成プログラム818は、オペレーティングシステム815やミドルウェア816が提供する機能の呼出しや、呼び出された機能の処理の終了などのイベントの発生を記録するプログラムである。ログ生成プログラム818は、イベントの発生時刻、内容などを記録した実行ログを生成する。
The
図12は、この実施の形態における計算機システム820が実行するプログラムの構成の一例を示す図である。
計算機システム820は、オペレーティングシステム825、ミドルウェア826、ベンチマークプログラム827などのプログラムを実行する。これらのプログラムは、記憶装置814が記憶し、処理装置811が実行する。
オペレーティングシステム825は、オペレーティングシステム815と同様なので、詳しい説明は省略する。なお、オペレーティングシステム825は、オペレーティングシステム815と同じOSであってもよいし、異なるOSであってもよい。
ミドルウェア826は、ミドルウェア816と同様なので、詳しい説明は省略する。なお、ミドルウェア826は、ミドルウェア816と同じミドルウェアであってもよいし、同等の機能を提供する異なるミドルウェアであってもよい。
ベンチマークプログラム827は、ベンチマークプログラム817と同様なので、詳しい説明は省略する。ベンチマークプログラム827は、ベンチマークプログラム817による測定結果と対比できるよう、ベンチマークプログラム817が測定する項目と同じ項目について、計算機システム820の性能を測定する。
FIG. 12 is a diagram showing an example of the configuration of a program executed by the
The
Since the
Since the
Since the
アプリケーションプログラム830は、コンパイルし直すなどの細かな修正が必要になる場合はあるものの、原則として、計算機システム820でも実行することができる。ただし、上述したように、現時点では、計算機システム820がアプリケーションプログラム830を実行することはできないものとする。
The
図13は、この実施の形態における性能予測装置100の外観の一例を示す斜視図である。
性能予測装置100は、システムユニット910、CRT(Cathode・Ray・Tube)やLCD(液晶)の表示画面を有する表示装置901、キーボード902(Key・Board:K/B)、マウス903、FDD904(Flexible・Disk・Drive)、コンパクトディスク装置905(CDD)、プリンタ装置906、スキャナ装置907などのハードウェア資源を備え、これらはケーブルや信号線で接続されている。
システムユニット910は、コンピュータであり、ファクシミリ機932、電話器931とケーブルで接続され、また、ローカルエリアネットワーク942(LAN)、ゲートウェイ941を介してインターネット940に接続されている。
FIG. 13 is a perspective view showing an example of the appearance of the
The
The system unit 910 is a computer, and is connected to the
図14は、この実施の形態における性能予測装置100のハードウェア資源の一例を示す図である。
性能予測装置100は、プログラムを実行するCPU911(Central・Processing・Unit、中央処理装置、処理装置、演算装置、マイクロプロセッサ、マイクロコンピュータ、プロセッサともいう)を備えている。CPU911は、バス912を介してROM913、RAM914、通信装置915、表示装置901、キーボード902、マウス903、FDD904、CDD905、プリンタ装置906、スキャナ装置907、磁気ディスク装置920と接続され、これらのハードウェアデバイスを制御する。磁気ディスク装置920の代わりに、光ディスク装置、メモリカード読み書き装置などの記憶装置でもよい。
RAM914は、揮発性メモリの一例である。ROM913、FDD904、CDD905、磁気ディスク装置920の記憶媒体は、不揮発性メモリの一例である。これらは、記憶装置あるいは記憶部の一例である。通信装置915、キーボード902、スキャナ装置907、FDD904などは、入力部、入力装置の一例である。
また、通信装置915、表示装置901、プリンタ装置906などは、出力部、出力装置の一例である。
FIG. 14 is a diagram illustrating an example of hardware resources of the
The
The
Further, the
通信装置915は、ファクシミリ機932、電話器931、LAN942等に接続されている。通信装置915は、LAN942に限らず、インターネット940、ISDN等のWAN(ワイドエリアネットワーク)などに接続されていても構わない。インターネット940或いはISDN等のWANに接続されている場合、ゲートウェイ941は不用となる。
磁気ディスク装置920には、オペレーティングシステム921(OS)、ウィンドウシステム922、プログラム群923、ファイル群924が記憶されている。プログラム群923のプログラムは、CPU911、オペレーティングシステム921、ウィンドウシステム922により実行される。
The
The
上記プログラム群923には、以下に述べる実施の形態の説明において「〜部」として説明する機能を実行するプログラムが記憶されている。プログラムは、CPU911により読み出され実行される。
ファイル群924には、「〜の判定結果」、「〜の計算結果」、「〜の処理結果」として説明する情報やデータや信号値や変数値やパラメータが、「〜ファイル」や「〜データベース」の各項目として記憶されている。「〜ファイル」や「〜データベース」は、ディスクやメモリなどの記録媒体に記憶される。ディスクやメモリなどの記憶媒体に記憶された情報やデータや信号値や変数値やパラメータは、読み書き回路を介してCPU911によりメインメモリやキャッシュメモリに読み出され、抽出・検索・参照・比較・演算・計算・処理・出力・印刷・表示などのCPUの動作に用いられる。抽出・検索・参照・比較・演算・計算・処理・出力・印刷・表示のCPUの動作の間、情報やデータや信号値や変数値やパラメータは、メインメモリやキャッシュメモリやバッファメモリに一時的に記憶される。
また、フローチャートの矢印の部分は主としてデータや信号の入出力を示し、データや信号値は、RAM914のメモリ、FDD904のフレキシブルディスク、CDD905のコンパクトディスク、磁気ディスク装置920の磁気ディスク、その他光ディスク、ミニディスク、DVD(Digital・Versatile・Disk)等の記録媒体に記録される。また、データや信号は、バス912や信号線やケーブルその他の伝送媒体によりオンライン伝送される。
The
In the
The arrows in the flowchart mainly indicate input / output of data and signals. The data and signal values are the
また、「〜部」として説明するものは、「〜回路」、「〜装置」、「〜機器」であってもよく、また、「〜ステップ」、「〜手順」、「〜処理」であってもよい。すなわち、「〜部」として説明するものは、ROM913に記憶されたファームウェアで実現されていても構わない。或いは、ソフトウェアのみ、或いは、素子・デバイス・基板・配線などのハードウェアのみ、或いは、ソフトウェアとハードウェアとの組み合わせ、さらには、ファームウェアとの組み合わせで実施されても構わない。ファームウェアとソフトウェアは、プログラムとして、磁気ディスク、フレキシブルディスク、光ディスク、コンパクトディスク、ミニディスク、DVD等の記録媒体に記憶される。プログラムはCPU911により読み出され、CPU911により実行される。すなわち、プログラムは、以下に述べる「〜部」としてコンピュータを機能させるものである。あるいは、以下に述べる「〜部」の手順や方法をコンピュータに実行させるものである。
Further, what is described as “˜part” may be “˜circuit”, “˜device”, “˜device”, and “˜step”, “˜procedure”, “˜processing” May be. That is, what is described as “˜unit” may be realized by firmware stored in the
図15は、この実施の形態における性能予測装置100の機能ブロックの構成の一例を示すブロック構成図である。
性能予測装置100は、第一性能取得部121と、第二性能取得部122と、実行ログ取得部123と、第一実行時間取得部131と、実行時間比取得部132と、総実行時間算出部141と、第二実行時間算出部142と、総実行時間予測部150とを有する。
FIG. 15 is a block configuration diagram showing an example of a functional block configuration of the
The
第一性能取得部121は、CPU911を用いて、計算機システム820の性能を表わす性能測定データを取得する。第一性能取得部121は、磁気ディスク装置920を用いて、取得した性能測定データを記憶する。
第一性能取得部121が取得する性能測定データは、計算機システム820がベンチマークプログラム827を実行することにより生成されたデータである。性能測定データは、ベンチマーク試験により測定された計算機システム820の性能を表わす。性能測定データには、例えば、次のようなデータが含まれる。
The first
The performance measurement data acquired by the first
・処理装置性能データ
処理装置性能データは、計算機システム820の処理装置811の性能を表わす。処理装置性能データは、例えば、所定の計算をする試験プログラムを計算機システム820が実行するのにかかった時間を表わすデータである。
Processing device performance data The processing device performance data represents the performance of the
・ファイルアクセス性能データ
ファイルアクセス性能データは、オペレーティングシステム825やミドルウェア826がファイルとして管理する計算機システム820の記憶装置814が記憶したデータに対するアクセスの性能を表わす。ファイルアクセス性能データは、例えば、ファイルの読み出しや書き込みを実行する試験プログラムを計算機システム820が実行するのにかかった時間を表わすデータである。
File Access Performance Data The file access performance data represents the performance of access to data stored in the
・イベント切替性能データ
イベント切替性能データは、オペレーティングシステム825が提供するイベント切替機能の性能を表わすデータである。イベント切替性能データは、例えば、イベント切替を多発させる試験プログラムを計算機システム820が実行するのにかかった時間を表わすデータである。
Event switching performance data The event switching performance data is data representing the performance of the event switching function provided by the
・排他制御性能データ
排他制御性能データは、オペレーティングシステム825が提供する排他制御機能の性能を表わすデータである。排他制御性能データは、例えば、排他制御を多発させる試験プログラムを計算機システム820が実行するのにかかった時間を表わすデータである。
Exclusive control performance data Exclusive control performance data is data representing the performance of the exclusive control function provided by the
・同期制御性能データ
同期制御性能データは、オペレーティングシステム825が提供する同期制御機能の性能を表わすデータである。同期制御性能データは、例えば、同期制御を多発させる試験プログラムを計算機システム820が実行するのにかかった時間を表わすデータである。
Synchronous control performance data The synchronous control performance data is data representing the performance of the synchronous control function provided by the
・グラフィック性能データ
グラフィック性能データは、計算機システム820の出力装置813の一つとして、画像を表示する表示装置がある場合に、オペレーティングシステム825やミドルウェア826が表示装置に所定の図形を表示する性能を表わすデータである。グラフィック性能データは、例えば、所定の図形を描画する試験プログラムを計算機システム820が実行するのにかかった時間を表わすデータである。
Graphic performance data The graphic performance data indicates the performance of the
このように、性能測定データは、計算機システム820の様々な性能を測定した結果を表わすデータが含まれる。
As described above, the performance measurement data includes data representing the results of measuring various performances of the
第二性能取得部122は、CPU911を用いて、計算機システム810の性能を表わす性能測定データを取得する。第二性能取得部122は、磁気ディスク装置920を用いて、取得した性能測定データを記憶する。
第二性能取得部122が取得する性能測定データは、計算機システム810がベンチマークプログラム817を実行することにより生成されたデータである。なお、第二性能取得部122が取得する計算機システム810の性能測定データの内容は、第一性能取得部121が取得する計算機システム820の性能測定データと同様なので、詳しい説明は省略する。
The second
The performance measurement data acquired by the second
第一実行時間取得部131は、CPU911を用いて、第一性能取得部121が記憶した性能測定データに基づいて、計算機システム820において、特定の処理を実行するのにかかる時間を算出する。第一実行時間取得部131は、磁気ディスク装置920を用いて、算出した時間を表わすデータを記憶する。第一実行時間取得部131が記憶するデータを「第一実行時間データ」と呼ぶ。
特定の処理とは、例えば、イベント切替処理、排他制御処理、同期制御処理、ファイルアクセス処理、グラフィック処理などである。これらの処理は、計算機システム820がオペレーティングシステム825やミドルウェア826などのプログラムを実行することにより実現される。これらの処理にかかる時間は、処理装置811の性能などに基づいて単純に計算できるものではなく、オペレーティングシステム825での実装や、計算機システム820のハードウェアの性能など様々な要素が絡んでくる。
そこで、第一実行時間取得部131は、実測値に基づいて、これらの処理にかかる時間を算出する。例えば、第一実行時間取得部131は、CPU911を用いて、性能測定データに含まれるファイルアクセス性能データに基づいて、ファイルアクセス処理にかかる時間を算出する。同様に、第一実行時間取得部131は、CPU911を用いて、性能測定データに含まれるイベント切替性能データ、排他制御性能データ、同期制御性能データ、グラフィック性能データなどに基づいて、それぞれ、イベント切替処理、排他制御処理、同期制御処理、グラフィック処理などにかかる時間を算出する。
The first execution
The specific processing includes, for example, event switching processing, exclusive control processing, synchronization control processing, file access processing, graphic processing, and the like. These processes are realized by the
Therefore, the first execution
実行時間比取得部132は、CPU911を用いて、第一性能取得部121が記憶した性能測定データと、第二性能取得部122が記憶した性能測定データとに基づいて、計算機システム820において一般的な処理を実行するのにかかる時間と、計算機システム810において同じ処理を実行するのにかかる時間との比率を算出する。実行時間比取得部132は、磁気ディスク装置920を用いて、算出した比率を表わすデータを記憶する。実行時間比取得部132が記憶するデータを「実行時間比データ」と呼ぶ。
一般的な処理とは、例えば、単純な計算処理などである。これらの処理は、計算機システム810,820がプログラムを実行することにより実現される。これらの処理にかかる時間は、主に処理装置811の性能などによって決まる。同じ処理を計算機システム810が実行した場合にかかる時間と、計算機システム820が実行した場合にかかる時間との間には、概ね比例関係があると考えられる。
Using the
The general process is, for example, a simple calculation process. These processes are realized by the
実行ログ取得部123は、CPU911を用いて、計算機システム810におけるアプリケーションプログラム830の実行ログを取得する。実行ログ取得部123は、磁気ディスク装置920を用いて、取得した実行ログを記憶する。
実行ログ取得部123が取得する実行ログは、計算機システム810がアプリケーションプログラム830を実行しているときに、計算機システム810がログ生成プログラム818を実行することにより生成したものである。
The execution
The execution log acquired by the execution
総実行時間算出部141は、CPU911を用いて、実行ログ取得部123が記憶した実行ログに基づいて、計算機システム810がアプリケーションプログラム830を実行するのにかかった時間を算出する。総実行時間算出部141は、磁気ディスク装置920を用いて、算出した時間を表わすデータを記憶する。総実行時間算出部141が記憶するデータを「総実行時間データ」と呼ぶ。
The total execution
第二実行時間算出部142は、CPU911を用いて、実行ログ取得部123が記憶した実行ログに基づいて、計算機システム810がアプリケーションプログラム830の実行中にオペレーティングシステム825やミドルウェア826の機能を呼び出すことにより、特定の処理を実行するのにかかった時間を算出する。第二実行時間算出部142は、磁気ディスク装置920を用いて、算出した時間を表わすデータを記憶する。第二実行時間算出部142が記憶するデータを「第二実行時間データ」と呼ぶ。
第二実行時間算出部142が実行時間を算出する特定の処理は、第一実行時間取得部131が十湖時間を算出した特定の処理と同じ処理である。
例えば、第二実行時間算出部142は、CPU911を用いて、実行ログのなかから、システムコールの呼出しやミドルウェア826の呼出しなど、特定の処理の開始を示すログを探して、特定の処理の開始時刻を取得する。第二実行時間算出部142は、CPU911を用いて、実行ログのなかから、呼び出されたシステムコールやミドルウェア826の処理の終了など、その特定の処理の終了を示すログを探して、その特定の処理の終了時刻を取得する。第二実行時間算出部142は、CPU911を用いて、取得した開始時刻から終了時刻までの経過時間を算出して、その特定の処理の実行にかかった時間を求める。
第二実行時間算出部142は、CPU911を用いて、計算機システム810がアプリケーションプログラム830の実行中に実行したすべての特定の処理について、それぞれの実行時間を算出する。同じ特定の処理を複数回実行した場合、第二実行時間算出部142は、各回の実行について、それぞれの実行時間を算出する。
The second execution
The specific process in which the second execution
For example, the second execution
The second execution
総実行時間予測部150は、CPU911を用いて、計算機システム820がアプリケーションプログラム830を実行するのにかかる時間を予測する。総実行時間予測部150は、CPU911を用いて、第一実行時間取得部131が記憶した第一実行時間データと、実行時間比取得部132が記憶した実行時間比データと、総実行時間算出部141が記憶した総実行時間データと、第二実行時間算出部142が記憶した第二実行時間データとに基づいて、予測時間を算出する。総実行時間予測部150は、磁気ディスク装置920を用いて、算出した予測時間を表わすデータを記憶する。総実行時間予測部150が記憶したデータを「総実行時間予測データ」と呼ぶ。総実行時間予測部150は、CPU911を用いて、記憶した総実行時間予測データを出力する。
The total execution
例えば、総実行時間予測部150は、CPU911を用いて、第二実行時間データが表わす実行時間を合計して、計算機システム810がアプリケーションプログラム830の実行中に実行した特定の処理の実行時間の総合計時間を算出する。総実行時間予測部150は、CPU911を用いて、算出した特定の処理の実行時間の総合計時間を、総実行時間データが表わす実行時間から差し引いた差を算出して、計算機システム810がアプリケーションプログラム830の実行中に実行した特定の処理以外の一般的な処理の実行時間の総合計時間を算出する。総実行時間予測部150は、CPU911を用いて、算出した一般的な処理の実行時間の総合計時間に、実行時間比データが表わす比率を乗じた積を算出して、計算機システム820がアプリケーションプログラム830の実行中に実行する一般的な処理の実行時間の総合計時間を予測する。
総実行時間予測部150は、CPU911を用いて、第二実行時間データが表わす特定の処理それぞれの実行時間を、第一実行時間データが表わす同じ特定の処理それぞれの実行時間で置き換える。総実行時間予測部150は、CPU911を用いて、置き換えた実行時間を合計して、計算機システム820がアプリケーションプログラム830の実行中に実行する特定の処理の実行時間の総合計時間を予測する。
総実行時間予測部150は、CPU911を用いて、予測した一般的な処理の実行時間の総合計時間と、予測した特定の処理の実行時間の総合計時間とを合計して、計算機システム820がアプリケーションプログラム830を実行するのにかかる時間を予測する。
For example, the total execution
Using the
The total execution
図16は、この実施の形態における性能予測処理S610の流れの一例を示すフローチャート図である。
性能予測処理S610において、性能予測装置100は、アプリケーションプログラム830を計算機システム820が実行するのにかかる時間を予測する。性能予測処理S610は、第一性能取得工程S611と、第二性能取得工程S612と、特定処理選択工程S613と、第一実行時間算出工程S614と、一般第一実行時間算出工程S615と、一般第二実行時間算出工程S616と、実行時間比算出工程S617と、実行ログ取得工程S621と、初期化工程S622と、ログ選択工程S623と、処理種別分岐工程S624と、経過時間算出工程S625と、第二実行時間加算工程S626と、予測実行時間加算工程S627と、処理種別判定工程S628と、総実行時間算出工程S631と、一般実行時間算出工程S632と、一般実行時間予測工程S633と、予測実行時間算出工程S634とを有する。性能予測装置100は、第一性能取得工程S611から処理を開始する。
FIG. 16 is a flowchart showing an example of the flow of the performance prediction process S610 in this embodiment.
In the performance prediction process S610, the
第一性能取得工程S611において、第一性能取得部121は、CPU911を用いて、計算機システム810についての性能測定データを取得する。
第二性能取得工程S612において、第二性能取得部122は、CPU911を用いて、計算機システム820についての性能測定データを取得する。
In the first performance acquisition step S611, the first
In the second performance acquisition step S612, the second
特定処理選択工程S613において、第一実行時間取得部131は、CPU911を用いて、実行時間を算出すべき特定の処理のなかから、実行時間をまだ算出していない特定の処理を選択する。
すべての特定の処理について実行時間を算出済であり、実行時間をまだ算出していない特定の処理が存在しない場合、第一実行時間取得部131は、CPU911を用いて、一般第一実行時間算出工程S615へ処理を進める。
実行時間をまだ算出していない特定の処理が存在する場合、第一実行時間取得部131は、CPU911を用いて、実行時間をまだ算出していない特定の処理のなかから、特定の処理を1つ選択する。第一実行時間取得部131は、CPU911を用いて、第一実行時間算出工程S614へ処理を進める。
In the specific process selection step S613, the first execution
When the execution time has been calculated for all the specific processes and there is no specific process for which the execution time has not yet been calculated, the first execution
When there is a specific process for which the execution time has not yet been calculated, the first execution
第一実行時間算出工程S614において、第一実行時間取得部131は、CPU911を用いて、第一性能取得工程S611で第一性能取得部121が取得した性能測定データに基づいて、特定処理選択工程S613で選択した特定の処理について、計算機システム820がその特定の処理を実行するのにかかる時間を算出する。
第一実行時間取得部131は、CPU911を用いて、特定処理選択工程S613に処理を戻し、次の特定の処理を選択する。
In the first execution time calculation step S614, the first execution
Using the
一般第一実行時間算出工程S615において、実行時間比取得部132は、CPU911を用いて、第一性能取得工程S611で第一性能取得部121が取得した性能測定データに基づいて、計算機システム820が一般的な処理をするのにかかる時間を算出する。
一般第二実行時間算出工程S616において、実行時間比取得部132は、CPU911を用いて、第二性能取得工程S612で第二性能取得部122が取得した性能測定データに基づいて、計算機システム810が一般的な処理をするのにかかる時間を算出する。
実行時間比算出工程S617において、実行時間比取得部132は、CPU911を用いて、一般第一実行時間算出工程S615で算出した時間を、一般第二実行時間算出工程S616で算出した時間で割った商を計算して、実行時間比を算出する。
In the general first execution time calculation step S615, the execution time
In the general second execution time calculation step S616, the execution time
In the execution time ratio calculation step S617, the execution time
実行ログ取得工程S621において、実行ログ取得部123は、CPU911を用いて、計算機システム810がアプリケーションプログラム830を実行したときの実行ログを取得する。
In the execution log acquisition step S621, the execution
初期化工程S622において、総実行時間算出部141は、CPU911を用いて、実行ログ取得工程S621で実行ログ取得部123が取得した実行ログを、最初から順に1行ずつ選択して、アプリケーションプログラム830の実行開始を表わすログを探す。総実行時間算出部141は、CPU911を用いて、アプリケーションプログラム830の実行開始を表わすログから、アプリケーションプログラム830の実行開始時刻を取得する。
第二実行時間算出部142は、RAM914を用いて、計算機システム810が実行した特定の処理の実行時間の総合計時間として、0を記憶する。第二実行時間算出部142は、RAM914を用いて、処理の種別として、「一般的な処理」を意味するデータを記憶する。
総実行時間予測部150は、RAM914を用いて、計算機システム820が実行する特定の処理の実行時間の総合計時間として、0を記憶する。
In the initialization step S622, the total execution
Using the
The total execution
ログ選択工程S623において、第二実行時間算出部142は、CPU911を用いて、実行ログ取得工程S621で実行ログ取得部123が取得した実行ログから、次の1行のログを選択する。
In the log selection step S623, the second execution
処理種別分岐工程S624において、第二実行時間算出部142は、CPU911を用いて、記憶している処理の種別が「一般的な処理」か「特定の処理」かによって処理を分岐する。
処理の種別が「一般的な処理」の場合、第二実行時間算出部142は、CPU911を用いて、処理種別判定工程S628へ処理を進める。
処理の種別が「特定の処理」の場合、第二実行時間算出部142は、CPU911を用いて、経過時間算出工程S625へ処理を進める。
In the process type branching step S624, the second execution
When the process type is “general process”, the second execution
When the process type is “specific process”, the second execution
経過時間算出工程S625において、第二実行時間算出部142は、CPU911を用いて、ログ選択工程S623で取得したログから、そのログが記録された時刻を取得する。第二実行時間算出部142は、CPU911を用いて、記憶している処理の開始時刻から、取得した時刻までの経過時間を算出する。
第二実行時間加算工程S626において、第二実行時間算出部142は、CPU911を用いて、記憶した計算機システム810の特定の処理の実行時間の総合計時間に、経過時間算出工程S625で算出した経過時間を加算する。第二実行時間算出部142は、RAM914を用いて、経過時間が加算された総合計時間を記憶する。
予測実行時間加算工程S627において、総実行時間予測部150は、CPU911を用いて、第二実行時間算出部142が記憶した処理の種別に基づいて、第一実行時間算出工程S614で第一実行時間取得部131が算出した実行時間のなかから、同じ特定の処理についての実行時間を取得する。総実行時間予測部150は、CPU911を用いて、記憶した計算機システム820の特定の処理の実行時間の総合計時間に、取得した実行時間を加算する。総実行時間予測部150は、RAM914を用いて、実行時間が加算された総合計時間を記憶する。
In the elapsed time calculation step S625, the second execution
In the second execution time adding step S626, the second execution
In the predicted execution time adding step S627, the total execution
処理種別判定工程S628において、第二実行時間算出部142は、CPU911を用いて、ログ選択工程S623で選択したログに基づいて、そのログが記録された時刻に開始された処理の種別を判定する。
ログ選択工程S623で選択したログが、アプリケーションプログラム830の実行終了を表わすログである場合、第二実行時間算出部142は、CPU911を用いて、総実行時間算出工程S631へ処理を進める。
ログ選択工程S623で選択したログが、一般的な処理または特定の処理の開始を表わすログである場合、第二実行時間算出部142は、RAM914を用いて、判定した処理の種別を記憶する。第二実行時間算出部142は、CPU911を用いて、ログ選択工程S623に処理を戻し、次のログを選択する。
In the processing type determination step S628, the second execution
When the log selected in the log selection step S623 is a log representing the end of execution of the
When the log selected in the log selection step S623 is a log representing the start of a general process or a specific process, the second execution
総実行時間算出工程S631において、総実行時間予測部150は、CPU911を用いて、ログ選択工程S623で第二実行時間算出部142が選択したログから、アプリケーションプログラム830の実行終了時刻を取得する。総実行時間予測部150は、CPU911を用いて、初期化工程S622で記憶した実行開始時刻と、取得した実行終了時刻とに基づいて、アプリケーションプログラム830の総実行時間を算出する。
一般実行時間算出工程S632において、総実行時間予測部150は、CPU911を用いて、総実行時間算出工程S631で算出した総実行時間から、第二実行時間算出部142が記憶した特定の処理の実行時間の総合計時間を減算して、計算機システム810の一般的な処理の実行時間の総合計時間を算出する。
一般実行時間予測工程S633において、総実行時間予測部150は、CPU911を用いて、一般実行時間算出工程S632で算出した計算機システム810の一般的な処理の実行時間の総合計時間に、実行時間比算出工程S617で算出した実行時間比を乗算して、計算機システム820の一般的な処理の実行時間の総合計時間を算出する。
予測実行時間算出工程S634において、総実行時間予測部150は、CPU911を用いて、記憶した計算機システム820の特定の処理の実行時間の総合計時間と、一般実行時間予測工程S633で算出した計算機システム820の一般的な処理の実行時間の総合計時間とを加算して、計算機システム820がアプリケーションプログラム830を実行するのにかかる時間を算出する。
In the total execution time calculation step S631, the total execution
In the general execution time calculating step S632, the total execution
In the general execution time prediction step S633, the total execution
In the predicted execution time calculation step S634, the total execution
以上、各実施の形態で説明した構成は、一例であり、異なる実施の形態で説明した構成を組み合わせた構成としてもよい。また、主要でない部分の構成を既存の技術など他の構成と置き換えるなどの変形をした構成としてもよい。 As described above, the configuration described in each embodiment is an example, and the configuration described in different embodiments may be combined. Moreover, it is good also as a structure which changed, such as replacing the structure of the non-major part with other structures, such as the existing technique.
以上説明した性能予測装置(100)は、データを処理する処理装置(CPU911)と、第一実行時間取得部(131;新規システム性能見積部118)と、実行ログ取得部(123;ログ解析部114)と、総実行時間算出部(141;114)と、第二実行時間算出部(142;114)と、総実行時間予測部(150;118)とを有する。
上記第一実行時間取得部(131;118)は、上記処理装置(911)を用いて、第一の計算機システム(820;108)において特定の機能を実現する第一特定プログラム(オペレーティングシステム825,111;ミドルウェア826)について、上記第一特定プログラムを実行するのにかかる時間を取得する。
上記実行ログ取得部(123;114)は、上記処理装置(911)を用いて、上記第一の計算機システム(820;108)及び第二の計算機システム(810;101)において実行可能なアプリケーションプログラム(830;アプリケーション102)について、上記第二の計算機システム(810;101)において上記アプリケーションプログラム(830;102)を実行した実行ログ(アプリケーションログ107)を取得する。
上記総実行時間算出部(141;114)は、上記処理装置(911)を用いて、上記実行ログ取得部(123;114)が取得した実行ログ(107)を解析して、上記アプリケーションプログラムを実行するのにかかった時間を算出する。
上記第二実行時間算出部(142;114)は、上記処理装置(911)を用いて、上記実行ログ取得部(123;114)が取得した実行ログ(107)を解析して、上記第一の計算機システム(820;108)において上記第一特定プログラム(825,111;826)が実現する特定の機能を上記第二の計算機システム(810;101)において実現する第二特定プログラム(オペレーティングシステム815,105;816,103)について、上記アプリケーションプログラム(830;102)が上記第二特定プログラム(815,105;816,103)を呼び出したとき、上記第二特定プログラム(815,105;816,103)を実行するのにかかった時間を算出する。
上記総実行時間予測部(150;118)は、上記処理装置(911)を用いて、上記総実行時間算出部(141;114)が算出した時間のうち、上記第二実行時間算出部(142;114)が算出した時間を上記第一実行時間取得部(131;118)が取得した時間で置き換えることにより、上記第一の計算機システム(820;108)において上記アプリケーションプログラム(830)を実行するのにかかる時間を予測する。
The performance prediction device (100) described above includes a processing device (CPU 911) for processing data, a first execution time acquisition unit (131; new system performance estimation unit 118), and an execution log acquisition unit (123; log analysis unit). 114), a total execution time calculation unit (141; 114), a second execution time calculation unit (142; 114), and a total execution time prediction unit (150; 118).
The first execution time acquisition unit (131; 118) uses the processing device (911) to implement a first specific program (
The execution log acquisition unit (123; 114) is an application program that can be executed in the first computer system (820; 108) and the second computer system (810; 101) using the processing device (911). For (830; application 102), an execution log (application log 107) for executing the application program (830; 102) in the second computer system (810; 101) is acquired.
The total execution time calculation unit (141; 114) analyzes the execution log (107) acquired by the execution log acquisition unit (123; 114) using the processing device (911), and executes the application program. Calculate the time taken to execute.
The second execution time calculation unit (142; 114) uses the processing device (911) to analyze the execution log (107) acquired by the execution log acquisition unit (123; 114), and In the second computer system (810; 101), the second specific program (operating system 815) that realizes the specific function realized by the first specific program (825, 111; 826) in the computer system (820; 108) , 105; 816, 103) when the application program (830; 102) calls the second specific program (815, 105; 816, 103), the second specific program (815, 105; 816, 103). ) Is calculated.
The total execution time prediction unit (150; 118) uses the processing device (911) to calculate the second execution time calculation unit (142) out of the times calculated by the total execution time calculation unit (141; 114). 114), the application program (830) is executed in the first computer system (820; 108) by replacing the time calculated by the first execution time acquisition unit (131; 118). Predict how long it will take.
これにより、現時点では第一の計算機システムでアプリケーションプログラムを実行できない場合であっても、第一の計算機システムでアプリケーションプログラムを実行するのにかかる時間を正確に予測できる。 As a result, even when the application program cannot be executed by the first computer system at this time, the time required to execute the application program by the first computer system can be accurately predicted.
上記性能予測装置(100)は、実行時間比取得部(132;118)を有する。
上記実行時間比取得部(132;118)は、上記処理装置(911)を用いて、上記第一の計算機システム(820;108)及び上記第二の計算機システム(810;101)において実行可能な一般プログラム(ベンチマークプログラム817,827)について、上記第二の計算機システム(810;101)において上記一般プログラム(817,827)を実行するのにかかる時間に対する、上記第一の計算機システム(820;108)において上記一般プログラム(817,827)を実行するのにかかる時間の比を取得する。
上記総実行時間予測部(150;118)は、上記処理装置(911)を用いて、上記総実行時間算出部(141;114)が算出した時間のうち、上記第二実行時間算出部(142;114)が算出した時間を除く時間に、上記実行時間比取得部(132;118)が取得した比を乗じることにより、上記第一の計算機システム(820;108)において上記アプリケーションプログラムを実行するのにかかる時間を予測する。
The performance prediction apparatus (100) includes an execution time ratio acquisition unit (132; 118).
The execution time ratio acquisition unit (132; 118) can be executed in the first computer system (820; 108) and the second computer system (810; 101) using the processing device (911). For the general program (
The total execution time prediction unit (150; 118) uses the processing device (911) to calculate the second execution time calculation unit (142) out of the times calculated by the total execution time calculation unit (141; 114). 114), the application program is executed in the first computer system (820; 108) by multiplying the time excluding the time calculated by 114) by the ratio acquired by the execution time ratio acquisition unit (132; 118). Predict how long it will take.
これにより、第一の計算機システムでアプリケーションプログラムを実行するのにかかる時間を更に正確に予測できる。 Thereby, it is possible to more accurately predict the time required to execute the application program in the first computer system.
上記第一特定プログラムは、上記第一の計算機システム(820;108)において動作するオペレーティングシステム(825;111)のシステムコールである。
上記第二特定プログラムは、上記第二の計算機システム(810;101)において動作するオペレーティングシステム(815;105)のシステムコールである。
The first specific program is a system call of the operating system (825; 111) that operates in the first computer system (820; 108).
The second specific program is a system call of the operating system (815; 105) operating in the second computer system (810; 101).
システムコールの処理にかかる時間は、様々な要因で決まるため、単純な比例関係で換算することはできない。システムコールの処理にかかる時間を、実際に測定した時間で置き換えるので、第一の計算機システムでアプリケーションプログラムを実行するのにかかる時間を正確に予測できる。 Since the time required for processing a system call is determined by various factors, it cannot be converted with a simple proportional relationship. Since the time taken to process the system call is replaced with the actually measured time, the time taken to execute the application program in the first computer system can be accurately predicted.
上記第一特定プログラム及び上記第二特定プログラムが実現する特定の機能は、イベント切替処理と、排他制御処理と、同期制御処理と、ファイルアクセス処理と、グラフィック処理とのうち少なくともいずれかである。 The specific function realized by the first specific program and the second specific program is at least one of event switching processing, exclusive control processing, synchronization control processing, file access processing, and graphic processing.
これらの処理にかかる時間も、様々な要因で決まるため、単純な比例関係で換算することはできない。これらの処理にかかる時間を、実際に測定した時間で置き換えるので、第一の計算機システムでアプリケーションプログラムを実行するのにかかる時間を正確に予測できる。 Since the time required for these processes is also determined by various factors, it cannot be converted with a simple proportional relationship. Since the time required for these processes is replaced with the actually measured time, the time required for executing the application program in the first computer system can be accurately predicted.
上記一般プログラムは、ベンチマークプログラム(817,827)である。
上記実行時間比取得部(132;118)は、上記第一の計算機システム(820;108)及び上記第二の計算機システム(810;101)において上記ベンチマークプログラム(817,827)を実行した結果に基づいて、上記処理装置(911)を用いて、上記比を算出する。
The general program is a benchmark program (817, 827).
The execution time ratio acquisition unit (132; 118) obtains the result of executing the benchmark program (817, 827) in the first computer system (820; 108) and the second computer system (810; 101). Based on the above, the ratio is calculated using the processing device (911).
ベンチマークプログラムによって測定した結果に基づいて、第一の計算機システムの第二の計算機システムに対する実行速度の比を算出するので、第一の計算機システムでアプリケーションプログラムを実行するのにかかる時間を正確に予測できる。 Based on the results measured by the benchmark program, the ratio of the execution speed of the first computer system to the second computer system is calculated, so the time required to execute the application program on the first computer system can be accurately predicted. it can.
以上説明した性能予測装置(100)は、コンピュータが実行することにより、コンピュータを性能予測装置をして機能させるコンピュータプログラムにより実現することができる。 The performance prediction apparatus (100) described above can be realized by a computer program that causes a computer to function as a performance prediction apparatus when executed by the computer.
100 性能予測装置、101,108 計算機システム、102 アプリケーション、103 ミドルウェア、104 ログ取得部、105,111 オペレーティングシステム、106,112 ハードウェア、107 アプリケーションログ、109 基本性能取得部、113 基本性能結果、114 ログ解析部、115,205 ログ解析結果、116 実測値使用部、117 性能比使用部、118 新規システム性能見積部、119,207 新規システム性能見積結果、121 第一性能取得部、122 第二性能取得部、123 実行ログ取得部、131 第一実行時間取得部、132 実行時間比取得部、141 総実行時間算出部、142 第二実行時間算出部、150 総実行時間予測部、301 ID、302 関数名、303 引数、304 タイムスタンプ、800 性能予測システム、810,820 計算機システム、811 処理装置、812 入力装置、813 出力装置、814 記憶装置、815,825 オペレーティングシステム、816,826 ミドルウェア、817,827 ベンチマークプログラム、818 ログ生成プログラム、830 アプリケーションプログラム、901 表示装置、902 キーボード、903 マウス、904 FDD、905 CDD、906 プリンタ装置、907 スキャナ装置、910 システムユニット、911 CPU、912 バス、913 ROM、914 RAM、915 通信装置、920 磁気ディスク装置、921 OS、922 ウィンドウシステム、923 プログラム群、924 ファイル群、931 電話器、932 ファクシミリ機、940 インターネット、941 ゲートウェイ、942 LAN。 100 performance prediction apparatus, 101, 108 computer system, 102 application, 103 middleware, 104 log acquisition unit, 105, 111 operating system, 106, 112 hardware, 107 application log, 109 basic performance acquisition unit, 113 basic performance result, 114 Log analysis unit, 115, 205 Log analysis result, 116 Actual value use unit, 117 Performance ratio use unit, 118 New system performance estimation unit, 119, 207 New system performance estimation result, 121 First performance acquisition unit, 122 Second performance Acquisition unit, 123 execution log acquisition unit, 131 first execution time acquisition unit, 132 execution time ratio acquisition unit, 141 total execution time calculation unit, 142 second execution time calculation unit, 150 total execution time prediction unit, 301 ID, 302 Function name, 303 arguments 304 time stamp, 800 performance prediction system, 810,820 computer system, 811 processing device, 812 input device, 813 output device, 814 storage device, 815,825 operating system, 816,826 middleware, 817,827 benchmark program, 818 Log generation program, 830 application program, 901 display device, 902 keyboard, 903 mouse, 904 FDD, 905 CDD, 906 printer device, 907 scanner device, 910 system unit, 911 CPU, 912 bus, 913 ROM, 914 RAM, 915 communication Device, 920 magnetic disk device, 921 OS, 922 window system, 923 program group, 924 file group, 931 Telephone, 932 facsimile machine, 940 Internet, 941 gateway, 942 LAN.
Claims (7)
上記第一実行時間取得部は、上記処理装置を用いて、第一の計算機システムにおいて特定の機能を実現する第一特定プログラムについて、上記第一特定プログラムを実行するのにかかる時間を取得し、
上記実行ログ取得部は、上記処理装置を用いて、上記第一の計算機システム及び第二の計算機システムにおいて実行可能なアプリケーションプログラムについて、上記第二の計算機システムにおいて上記アプリケーションプログラムを実行した実行ログを取得し、
上記総実行時間算出部は、上記処理装置を用いて、上記実行ログ取得部が取得した実行ログを解析して、上記アプリケーションプログラムを実行するのにかかった時間を算出し、
上記第二実行時間算出部は、上記処理装置を用いて、上記実行ログ取得部が取得した実行ログを解析して、上記第一の計算機システムにおいて上記第一特定プログラムが実現する特定の機能を上記第二の計算機システムにおいて実現する第二特定プログラムについて、上記アプリケーションプログラムが上記第二特定プログラムを呼び出したとき、上記第二特定プログラムを実行するのにかかった時間を算出し、
上記総実行時間予測部は、上記処理装置を用いて、上記総実行時間算出部が算出した時間のうち、上記第二実行時間算出部が算出した時間を上記第一実行時間取得部が取得した時間で置き換えることにより、上記第一の計算機システムにおいて上記アプリケーションプログラムを実行するのにかかる時間を予測することを特徴とする性能予測装置。 A processing device that processes data, a first execution time acquisition unit, an execution log acquisition unit, a total execution time calculation unit, a second execution time calculation unit, and a total execution time prediction unit;
The first execution time acquisition unit acquires the time required to execute the first specific program for the first specific program that realizes a specific function in the first computer system, using the processing device,
The execution log acquisition unit uses the processing device to obtain an execution log for executing the application program in the second computer system for an application program executable in the first computer system and the second computer system. Acquired,
The total execution time calculation unit uses the processing device to analyze the execution log acquired by the execution log acquisition unit and calculate the time taken to execute the application program,
The second execution time calculation unit analyzes the execution log acquired by the execution log acquisition unit using the processing device, and performs the specific function realized by the first specific program in the first computer system. For the second specific program realized in the second computer system, when the application program calls the second specific program, it calculates the time taken to execute the second specific program,
The first execution time acquisition unit acquires the time calculated by the second execution time calculation unit among the times calculated by the total execution time calculation unit, using the processing device. A performance prediction apparatus for predicting a time required to execute the application program in the first computer system by replacing with time.
上記実行時間比取得部は、上記処理装置を用いて、上記第一の計算機システム及び上記第二の計算機システムにおいて実行可能な一般プログラムについて、上記第二の計算機システムにおいて上記一般プログラムを実行するのにかかる時間に対する、上記第一の計算機システムにおいて上記一般プログラムを実行するのにかかる時間の比を取得し、
上記総実行時間予測部は、上記処理装置を用いて、上記総実行時間算出部が算出した時間のうち、上記第二実行時間算出部が算出した時間を除く時間に、上記実行時間比取得部が取得した比を乗じることにより、上記第一の計算機システムにおいて上記アプリケーションプログラムを実行するのにかかる時間を予測することを特徴とする請求項1に記載の性能予測装置。 The performance prediction apparatus has an execution time ratio acquisition unit,
The execution time ratio acquisition unit executes the general program in the second computer system for the general program executable in the first computer system and the second computer system using the processing device. The ratio of the time taken to execute the general program in the first computer system to the time taken to
The total execution time prediction unit uses the processing device to calculate the execution time ratio acquisition unit at a time excluding the time calculated by the second execution time calculation unit from the time calculated by the total execution time calculation unit. 2. The performance prediction apparatus according to claim 1, wherein the time required to execute the application program in the first computer system is predicted by multiplying the acquired ratio.
上記第二特定プログラムは、上記第二の計算機システムにおいて動作するオペレーティングシステムのシステムコールであることを特徴とする請求項1または請求項2に記載の性能予測装置。 The first specific program is a system call of an operating system that operates in the first computer system.
3. The performance prediction apparatus according to claim 1, wherein the second specific program is an operating system call that operates in the second computer system.
上記実行時間比取得部は、上記第一の計算機システム及び上記第二の計算機システムにおいて上記ベンチマークプログラムを実行した結果に基づいて、上記処理装置を用いて、上記比を算出することを特徴とする請求項1乃至請求項4のいずれかに記載の性能予測装置。 The above general program is a benchmark program,
The execution time ratio acquisition unit calculates the ratio using the processing device based on a result of executing the benchmark program in the first computer system and the second computer system. The performance prediction apparatus according to any one of claims 1 to 4.
上記第一実行時間取得部が、上記処理装置を用いて、第一の計算機システムにおいて特定の機能を実現する第一特定プログラムについて、上記第一特定プログラムを実行するのにかかる時間を取得し、
上記実行ログ取得部が、上記処理装置を用いて、上記第一の計算機システム及び第二の計算機システムにおいて実行可能なアプリケーションプログラムについて、上記第二の計算機システムにおいて上記アプリケーションプログラムを実行した実行ログを取得し、
上記総実行時間算出部が、上記処理装置を用いて、上記実行ログ取得部が取得した実行ログを解析して、上記アプリケーションプログラムを実行するのにかかった時間を算出し、
上記第二実行時間算出部が、上記処理装置を用いて、上記実行ログ取得部が取得した実行ログを解析して、上記第一の計算機システムにおいて上記第一特定プログラムが実現する特定の機能を上記第二の計算機システムにおいて実現する第二特定プログラムについて、上記アプリケーションプログラムが上記第二特定プログラムを呼び出したとき、上記第二特定プログラムを実行するのにかかった時間を算出し、
上記総実行時間予測部が、上記処理装置を用いて、上記総実行時間算出部が算出した時間のうち、上記第二実行時間算出部が算出した時間を上記第一実行時間取得部が取得した時間で置き換えることにより、上記第一の計算機システムにおいて上記アプリケーションプログラムを実行するのにかかる時間を予測することを特徴とする性能予測方法。 A performance prediction device having a processing device that processes data, a first execution time acquisition unit, an execution log acquisition unit, a total execution time calculation unit, a second execution time calculation unit, and a total execution time prediction unit, In a performance prediction method for predicting the performance of an application program,
The first execution time acquisition unit acquires the time taken to execute the first specific program for the first specific program that realizes a specific function in the first computer system, using the processing device,
For the application program executable by the first computer system and the second computer system using the processing device, the execution log acquisition unit executes an execution log obtained by executing the application program in the second computer system. Acquired,
The total execution time calculation unit uses the processing device to analyze the execution log acquired by the execution log acquisition unit and calculate the time taken to execute the application program,
The second execution time calculation unit analyzes the execution log acquired by the execution log acquisition unit using the processing device, and performs a specific function realized by the first specific program in the first computer system. For the second specific program realized in the second computer system, when the application program calls the second specific program, it calculates the time taken to execute the second specific program,
The first execution time acquisition unit acquires the time calculated by the second execution time calculation unit among the times calculated by the total execution time calculation unit using the processing device. A performance prediction method characterized by predicting the time required to execute the application program in the first computer system by replacing with time.
Priority Applications (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP2010133015A JP2011258058A (en) | 2010-06-10 | 2010-06-10 | Performance prediction apparatus, computer program and performance prediction method |
Applications Claiming Priority (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP2010133015A JP2011258058A (en) | 2010-06-10 | 2010-06-10 | Performance prediction apparatus, computer program and performance prediction method |
Publications (1)
| Publication Number | Publication Date |
|---|---|
| JP2011258058A true JP2011258058A (en) | 2011-12-22 |
Family
ID=45474150
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| JP2010133015A Pending JP2011258058A (en) | 2010-06-10 | 2010-06-10 | Performance prediction apparatus, computer program and performance prediction method |
Country Status (1)
| Country | Link |
|---|---|
| JP (1) | JP2011258058A (en) |
Cited By (4)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| WO2014080598A1 (en) * | 2012-11-20 | 2014-05-30 | 日本電気株式会社 | Operation management device and operation management method |
| WO2018163387A1 (en) * | 2017-03-09 | 2018-09-13 | 三菱電機株式会社 | Analysis device, analysis method, and analysis program |
| JP2019513273A (en) * | 2016-03-30 | 2019-05-23 | 株式会社ソニー・インタラクティブエンタテインメント | Derivation of Application-Specific Operating Parameters for Backward Compatibility |
| CN109976608A (en) * | 2019-03-15 | 2019-07-05 | 努比亚技术有限公司 | A kind of application clocking method, equipment and computer readable storage medium |
-
2010
- 2010-06-10 JP JP2010133015A patent/JP2011258058A/en active Pending
Cited By (16)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| US10282272B2 (en) | 2012-11-20 | 2019-05-07 | Nec Corporation | Operation management apparatus and operation management method |
| JP5954430B2 (en) * | 2012-11-20 | 2016-07-20 | 日本電気株式会社 | Operation management apparatus and operation management method |
| WO2014080598A1 (en) * | 2012-11-20 | 2014-05-30 | 日本電気株式会社 | Operation management device and operation management method |
| JP7212114B2 (en) | 2016-03-30 | 2023-01-24 | 株式会社ソニー・インタラクティブエンタテインメント | Real-time adjustment of application-specific operating parameters for backward compatibility |
| JP2019513273A (en) * | 2016-03-30 | 2019-05-23 | 株式会社ソニー・インタラクティブエンタテインメント | Derivation of Application-Specific Operating Parameters for Backward Compatibility |
| JP2020123374A (en) * | 2016-03-30 | 2020-08-13 | 株式会社ソニー・インタラクティブエンタテインメント | Deriving application-specific operating parameters for backwards compatibility |
| JP2021182428A (en) * | 2016-03-30 | 2021-11-25 | 株式会社ソニー・インタラクティブエンタテインメント | Real-time adjustment of application-specific operating parameters for backward compatibility |
| JP7021280B2 (en) | 2016-03-30 | 2022-02-16 | 株式会社ソニー・インタラクティブエンタテインメント | Derivation of application-specific operating parameters for backward compatibility |
| JP2022058878A (en) * | 2016-03-30 | 2022-04-12 | 株式会社ソニー・インタラクティブエンタテインメント | Derivation of application-specific operating parameters for backward compatibility |
| JP2023052349A (en) * | 2016-03-30 | 2023-04-11 | 株式会社ソニー・インタラクティブエンタテインメント | Real-time adjustment of application-specific operating parameters for backward compatibility |
| JP7301183B2 (en) | 2016-03-30 | 2023-06-30 | 株式会社ソニー・インタラクティブエンタテインメント | Derivation of application-specific operating parameters for backward compatibility |
| JP7485802B2 (en) | 2016-03-30 | 2024-05-16 | 株式会社ソニー・インタラクティブエンタテインメント | Real-time tuning of application-specific operating parameters for backward compatibility |
| JPWO2018163387A1 (en) * | 2017-03-09 | 2019-03-14 | 三菱電機株式会社 | Analysis apparatus, analysis method, and analysis program |
| WO2018163387A1 (en) * | 2017-03-09 | 2018-09-13 | 三菱電機株式会社 | Analysis device, analysis method, and analysis program |
| CN109976608A (en) * | 2019-03-15 | 2019-07-05 | 努比亚技术有限公司 | A kind of application clocking method, equipment and computer readable storage medium |
| CN109976608B (en) * | 2019-03-15 | 2021-07-23 | 努比亚技术有限公司 | Application timing method and device and computer readable storage medium |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| US10831498B2 (en) | Managing an issue queue for fused instructions and paired instructions in a microprocessor | |
| US8407459B2 (en) | Information processing apparatus and boot completion notification program | |
| US20120011505A1 (en) | Computer system and recording medium | |
| US10572301B2 (en) | Extract CPU time facility | |
| KR20140033169A (en) | Virtual machine image analysis | |
| JP5874811B2 (en) | Information processing method, program, and information processing apparatus | |
| US20120089724A1 (en) | Diagnosis of application server performance problems via thread level pattern analysis | |
| JP4905974B2 (en) | Program profiling apparatus, program profiling method, and program | |
| JP2011258058A (en) | Performance prediction apparatus, computer program and performance prediction method | |
| CN112817831A (en) | Application performance monitoring method, device, computer system and readable storage medium | |
| JP4879782B2 (en) | Program profiling method and program | |
| JP5803935B2 (en) | Availability analysis apparatus and availability analysis method | |
| JP2018508865A (en) | Application event tracking | |
| JP7449779B2 (en) | Job management method and job management device | |
| US20160217017A1 (en) | Determining workflow completion state | |
| US9529487B1 (en) | Method of providing fast switching to web apps | |
| US11042463B2 (en) | Computer, bottleneck identification method, and non-transitory computer readable storage medium | |
| US8752038B1 (en) | Reducing boot time by providing quantitative performance cost data within a boot management user interface | |
| JP2007279861A (en) | Business process management apparatus, business process management method, and business process management program | |
| WO2012056569A1 (en) | Performance measurement method, performance measurement device, and performance measurement program | |
| JP5197128B2 (en) | Dependency Estimation Device, Dependency Estimation Program, and Recording Medium | |
| CN114510179A (en) | Method, device, equipment, medium and product for determining option selection state information | |
| CN111026989A (en) | Page loading time detection method and device and electronic equipment | |
| JP6335329B2 (en) | Program dependent part visualization device, method, and program | |
| CN114648298B (en) | Work order management method, device, equipment and storage medium |
Legal Events
| Date | Code | Title | Description |
|---|---|---|---|
| RD04 | Notification of resignation of power of attorney |
Free format text: JAPANESE INTERMEDIATE CODE: A7424 Effective date: 20121207 |