JP5906844B2 - Computer parameter tuning program, method, and apparatus - Google Patents
Computer parameter tuning program, method, and apparatus Download PDFInfo
- Publication number
- JP5906844B2 JP5906844B2 JP2012058012A JP2012058012A JP5906844B2 JP 5906844 B2 JP5906844 B2 JP 5906844B2 JP 2012058012 A JP2012058012 A JP 2012058012A JP 2012058012 A JP2012058012 A JP 2012058012A JP 5906844 B2 JP5906844 B2 JP 5906844B2
- Authority
- JP
- Japan
- Prior art keywords
- behavior
- value
- parameter
- target machine
- machine
- 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.)
- Active
Links
Images
Landscapes
- Debugging And Monitoring (AREA)
- Stored Programmes (AREA)
Description
本発明は、コンピュータパラメータのチューニングのためのプログラム、方法、及び装置に関する。 The present invention relates to a program, method, and apparatus for tuning computer parameters.
アプリケーションプログラムを実行するコンピュータを使用して業務環境を最適化するためには、コンピュータの性能が十分に引き出せるように、コンピュータ内部のパラメータが適切に設定されていることが必要となる。 In order to optimize a business environment using a computer that executes an application program, it is necessary that parameters in the computer are appropriately set so that the performance of the computer can be sufficiently extracted.
コンピュータの性能を動的に分析する手法として、動的プログラム解析が知られている。動的プログラム解析では、アプリケーションプログラムの実行を通じて、コンピュータ(例えば、種々の関数に対するCPUの実行時間)に係る情報を収集する。この収集された情報を解析し、コンピュータの設定パラメータの調整(特にCPUに係るパラメータチューニング)を行い、アプリケーションプログラムに対してコンピュータの性能を最大限に引き出せるようにする。 Dynamic program analysis is known as a technique for dynamically analyzing computer performance. In the dynamic program analysis, information related to a computer (for example, CPU execution time for various functions) is collected through execution of an application program. The collected information is analyzed, and the setting parameters of the computer are adjusted (particularly, parameter tuning related to the CPU) so that the performance of the computer can be maximized for the application program.
コンピュータの実行情報を収集するツールとして、CPUプロファイラ(Profiler)が用いられる。CPUプロファイラとは、性能解析ツールの1つであり、アプリケーションプログラムの実行時の各種情報(各関数の実行時間等)を収集するものである。このプロファイラを利用することによって、各種関数の呼出しの頻度や、それらに係るCPUの実行時間等のコンピュータの実行情報を統計的に取得することができる。コンピュータの実行情報を解析することにより、コンピュータに含まれるCPU等の実行にかかる各種のパラメータのチューニングをどのように行えばよいかが分かる。このパラメータチューニングにより、各パラメータが最適化されれば、アプリケーションプログラムを実行するコンピュータの能力をより有効に活用することができる。本明細書では、コンピュータの実行情報を統計的に収集することをプロファイリングと呼ぶ。また、プロファイリングにより取得された情報をプロファイリングデータと呼ぶ。 A CPU profiler is used as a tool for collecting computer execution information. The CPU profiler is one of performance analysis tools, and collects various information (execution time of each function, etc.) at the time of executing an application program. By using this profiler, it is possible to statistically acquire computer execution information such as the frequency of calling various functions and the CPU execution time related to them. By analyzing the execution information of the computer, it is understood how to tune various parameters related to the execution of the CPU included in the computer. If each parameter is optimized by this parameter tuning, the computer's ability to execute the application program can be utilized more effectively. In this specification, statistically collecting computer execution information is called profiling. Information acquired by profiling is called profiling data.
なお、アプリケーションプログラムの動作環境は、動的に変化する。このため、この変化に対応して、各種パラメータ値の適切な値も変化することが知られている。したがって、例えば、アプリケーションプログラムの稼働中に、コンピュータのレスポンスが遅延するような状況(トラブル)が発生した場合には、この状況に対応してパラメータの再チューニング作業が必要となる場合がある。このパラメータの再チューニングにより、コンピュータのレスポンス遅延等を解消できる場合が多い。 Note that the operating environment of the application program changes dynamically. For this reason, it is known that appropriate values of various parameter values also change corresponding to this change. Therefore, for example, when a situation (trouble) in which the response of the computer is delayed occurs during operation of the application program, parameter retuning work may be required in response to this situation. In many cases, retuning of this parameter can eliminate the response delay of the computer.
この場合、レスポンス遅延等のトラブルが発生しているコンピュータ(ターゲットマシン)は、実際に業務運用に利用されている場合がほとんどである。したがって、現在利用中のターゲットマシンにおいて自由にパラメータを動かして試行錯誤を繰り返して、最適なパラメータを見つけることは現実的では無い。なぜなら、業務運用に対して思わぬトラブルを併発する可能性があるからである。したがって、業務運用に利用されているターゲットマシンのパラメータのチューニングを行うには、例えば、ターゲットマシンのコンピュータの環境を持つテストマシンを用いることが必要となる場合が多い。この場合、例えば、以下の手順が必要である。
(1)まず、アプリケーションプログラムを実行している稼働中のコンピュータ(ターゲットマシン)のプロファイリングを実施する。このプロファイリングの実施によって、その時点のパラメータにおけるプロファイリングデータが取得される。
(2)このプロファイリングデータを解析する。
(3)併せてターゲットマシンの環境の情報(パラメータ値、利用DB環境等)を取得する。
(4)テストマシンにおいて、ターゲットマシンの環境を構築する。
(5)テストマシンの環境において、パラメータ値を変更し、適切なパラメータの値を試行錯誤によって決定する。
(6)ターゲットマシンに、上記(5)で得られた適切なパラメータ値を設定する。
(7)ターゲットマシンで、トラブルが改善されたかを確認する。
In this case, the computer (target machine) in which a problem such as a response delay has occurred is mostly used for business operations. Therefore, it is not realistic to find the optimum parameter by moving the parameter freely on the target machine currently in use and repeating trial and error. This is because there is a possibility that unexpected troubles may occur simultaneously with business operations. Therefore, in order to tune parameters of a target machine used for business operations, for example, it is often necessary to use a test machine having a computer environment of the target machine. In this case, for example, the following procedure is necessary.
(1) First, profiling of a running computer (target machine) executing an application program is performed. By performing this profiling, profiling data for the parameters at that time is acquired.
(2) Analyze this profiling data.
(3) Acquire target environment information (parameter value, usage DB environment, etc.).
(4) Build the environment of the target machine in the test machine.
(5) The parameter value is changed in the environment of the test machine, and an appropriate parameter value is determined by trial and error.
(6) The appropriate parameter value obtained in (5) above is set in the target machine.
(7) Check if the trouble has been improved on the target machine.
上記(3)においては、アプリケーションプログラムやオペレーティングシステムの関数レベルの分析を行う必要がある。この解析は、高度の知識が要求される。すなわち、関数の特性(関数の役割や、関数がシステムに及ぼす影響度等)を理解する必要があり、トラブルの要因を認識することは非常に難しい。 In the above (3), it is necessary to analyze the function level of the application program and operating system. This analysis requires a high level of knowledge. That is, it is necessary to understand the characteristics of the function (the role of the function, the degree of influence of the function on the system, etc.), and it is very difficult to recognize the cause of the trouble.
また、ターゲットマシンを利用する主体は、パラメータのチューニングを実施する主体(例えばシステムベンダ)とは異なる顧客である場合が多い。このため、上記(4)において、顧客のセキュリティ等を考慮すると、顧客の使用しているターゲットマシンの環境の情報をシステムベンダが取得することが事実上困難な場合(あるいは限定される場合)が多い。加えて、環境に関する情報がある程度入手できても、その環境を構築することが事実上困難である場合も多い(全く同一のマシン環境をテストマシンに構築することは非常に困難である)。また、レスポンス遅延等のトラブルの再現を行うことも難しい場合が多い。 In many cases, the main body that uses the target machine is a different customer from the main body that performs parameter tuning (for example, a system vendor). For this reason, in (4) above, considering the security of the customer, it may be difficult (or limited) for the system vendor to obtain information on the environment of the target machine used by the customer. Many. In addition, even if some information about the environment is available, it is often difficult to construct the environment (it is very difficult to construct an exactly identical machine environment on a test machine). Also, it is often difficult to reproduce troubles such as response delays.
加えて、パラメータをどのように設定すれば、トラブルの解消や、改善がなされるのかを見つけることも、試行錯誤を繰り返す等の時間を要するため非常に難しい。 In addition, it is very difficult to find out how the parameters are set so that trouble can be solved or improved, because it takes time to repeat trial and error.
なお、以下の説明において、実際に利用されているパラメータチューニングの対象のコンピュータを「ターゲットマシン」と呼び、ターゲットマシンの環境を備えたコンピュータを「テストマシン」と呼ぶ。 In the following description, a computer that is actually used for parameter tuning is referred to as a “target machine”, and a computer that includes the environment of the target machine is referred to as a “test machine”.
なお、コンピュータに係るパラメータには種々のものが存在する。その一例として、sched_migration_costというパラメータがある。このパラメータは、マルチCPU又はマルチコアを前提としたパラメータである。タスクがスリープ状態からウェイクアップするとき、タスクスケジューラは、そのタスクの前回実行時に使用された同じCPU又はコアでタスクをウェイクアップさせようとする。その理由は、同じCPU又はコアであれば、CPUの使用しているキャッシュに、そのタスクが前回実行時に使用していたデータが残っている確率が高いからである。このようにタスクが前回使用したCPUで再度ウェイクアップできる状態を「キャッシュホット」と呼ぶ。パラメータsched_migration_costは、ウェイクアップしようとするタスクが「キャッシュホット」になるのを待つことができる時間の最大値(最長時間)を設定するパラメータである。パラメータsched_migration_costの値が大きければ大きいほど、タスクのCPU間移動によるキャッシュミスを抑えることができ、キャッシュヒット率が向上し、スループット性能の向上が期待できる。ただし、キャッシュホット判定の待ち時間が増加するため、レスポンスは低下する。逆に、sched_migration_costの値が小さければ小さいほど、タスクは積極的にアイドルCPUに移動するようになるため、レスポンスの向上が見込まれる。ただし、この場合キャッシュミスが多くなるためスループットは低下する。 There are various parameters relating to the computer. One example is a parameter called sched_migration_cost. This parameter is a parameter on the premise of multi-CPU or multi-core. When a task wakes up from a sleep state, the task scheduler attempts to wake up the task with the same CPU or core that was used during the previous execution of the task. This is because if the same CPU or core is used, there is a high probability that the data used by the task at the previous execution remains in the cache used by the CPU. A state in which the task can be woken up again by the CPU used last time is called “cache hot”. The parameter sched_migration_cost is a parameter for setting a maximum value (the longest time) that can be waited for a task to be waked up to become “cache hot”. As the value of the parameter sched_migration_cost is larger, cache misses due to migration of tasks between CPUs can be suppressed, the cache hit rate can be improved, and improvement in throughput performance can be expected. However, since the waiting time for the cache hot determination increases, the response decreases. Conversely, the smaller the value of sched_migration_cost, the more actively the task moves to the idle CPU, and therefore an improvement in response is expected. In this case, however, the number of cache misses increases, resulting in a decrease in throughput.
このsched_migration_costは、アプリケーションソフトウエアが動作しているターゲットマシンの実行待ちタスクの数や、その他の動作環境に応じて、適切な値に設定することが必要である。このため、環境変化に応じて、このようなパラメータ値を簡便に設定できる技術の確立が望まれている。また、アプリケーションプログラムなどに、パラメータ調整用のための命令を埋め込む等の煩雑な作業を必要としないパラメータ調整技術が望まれている。 This sched_migration_cost needs to be set to an appropriate value according to the number of tasks waiting for execution on the target machine on which the application software is operating and other operating environments. For this reason, establishment of the technique which can set such a parameter value simply according to environmental change is desired. In addition, a parameter adjustment technique that does not require complicated work such as embedding a command for parameter adjustment in an application program or the like is desired.
従来、アプリケーションとそのアプリケーションモデルを作成する技術が知られている。すなわち、アプリケーションモデル調整用のログ出力命令が埋め込まれたプログラムソースと、それに対応する性能シミュレーション用のソース、アプリケーションモデル調整用のパラメータ初期値があらかじめ含まれ、調整後のパラメータ値の履歴を蓄積できるようにしたソフトウェア部品を組み合わせて、アプリケーションおよびアプリケーションモデルを作成し、それらを実行することで得られるログを比較してアプリケーションの実測結果にあわせてアプリケーションモデルのパラメータを自動的に調整し、調整結果をアプリケーションモデルに反映させ、元となったソフトウェア部品の履歴に加え、必要があればパラメータ初期値を変更する技術が知られている(特許文献1)。 Conventionally, a technique for creating an application and its application model is known. That is, a program source in which a log output command for application model adjustment is embedded, a corresponding performance simulation source, and an initial parameter value for application model adjustment are included in advance, and a history of parameter values after adjustment can be accumulated. By combining these software components, creating an application and application model, comparing the logs obtained by executing them, automatically adjusting the parameters of the application model according to the actual measurement result of the application, and the adjustment result Is reflected in the application model, and in addition to the history of the original software component, there is known a technique for changing the parameter initial value if necessary (Patent Document 1).
また、コンピュータ・システムのプログラム動作履歴に基づいて性能評価により高く寄与する関数を自動的に選択する技術が知られている。すなわち、動作履歴を受け付け、受け付けた動作履歴に含まれる関数の呼び出し関係を用いて関数を木構造のノードに割り当て、実行時間又はメモリ使用量を定量的情報として扱い、関数に付随する定量的情報の合計が全体に付随する定量的情報と所定の比率との積を超える条件で関数を抽出する技術が知られている(特許文献2)。 There is also known a technique for automatically selecting a function that contributes more to performance evaluation based on a program operation history of a computer system. In other words, it accepts the operation history, assigns the function to the tree-structured node using the function call relationship included in the accepted operation history, treats the execution time or memory usage as quantitative information, and quantitative information associated with the function A technique is known in which a function is extracted under a condition in which the sum of the numbers exceeds the product of quantitative information associated with the whole and a predetermined ratio (Patent Document 2).
1つの側面では、本発明は、コンピュータパラメータのチューニングを簡便に行うことができるようにすることを目的とする。 In one aspect, an object of the present invention is to enable easy tuning of computer parameters.
一実施形態によれば、ターゲットマシン上で動作するソフトウェアを実装したテストマシンを用いて、前記ターゲットマシンの設定パラメータを決定するプログラムであって、 前記テストマシンの設定パラメータの値の変化に対する前記テストマシンの挙動を測定し、前記設定パラメータの前記変化と、測定された前記挙動とから、前記テストマシンの挙動モデルを生成し、前記設定パラメータの第1の値での前記ターゲットマシンの挙動と、前記設定パラメータの前記第1の値での前記挙動モデルの挙動とから、前記ターゲットマシンの挙動と前記挙動モデルの挙動との間の関係を特定し、前記挙動モデルと前記関係とから、前記ターゲットマシンのための前記設定パラメータの第2の値を算出する、処理をコンピュータに実行させるプログラムが提供される。 According to an embodiment, there is provided a program for determining a setting parameter of the target machine using a test machine in which software that operates on the target machine is mounted, the test against a change in a value of the setting parameter of the test machine Measuring a machine behavior, generating a test model of the test machine from the change in the configuration parameter and the measured behavior, and the behavior of the target machine at a first value of the configuration parameter; The relationship between the behavior of the target machine and the behavior model is identified from the behavior of the behavior model at the first value of the setting parameter, and the target is determined from the behavior model and the relationship. Calculating a second value of the setting parameter for the machine, causing the computer to execute a process; Gram is provided.
実施形態によれば、コンピュータパラメータのチューニングを簡便に行うことができるようにすることができる。 According to the embodiment, the computer parameters can be easily tuned.
以下、図面に基づいて本発明の実施の形態を説明する。 Hereinafter, embodiments of the present invention will be described with reference to the drawings.
図1は、本発明の実施形態におけるパラメータチューニング装置の機能ブロック図を示している。ターゲットマシン102は、アプリケーションプログラムが動作しており、そのアプリケーションプログラムのサービスを提供している物理マシン又は仮想マシンである。このターゲットマシン102は、特定のパラメータ値(現在パラメータ値104)で動作しているものとする。
FIG. 1 shows a functional block diagram of a parameter tuning apparatus according to an embodiment of the present invention. The
テストマシン112は、ターゲットマシン102上で動作するアプリケーションが実装され、更に、オペレーティングシステム、ハードウエア構成、周辺装置、必要なデータベース等の動作環境は、理想的にはターゲットマシン102と同一のものである。なお、上述のように現実的には、動作環境は同一にすることが不可能な場合もある。このため、なるべく同一の環境を整備することが望ましい。パラメータチューニング装置150は、テストマシン112の挙動を基に、ターゲットマシン102のための適正パラメータ値を出力することを主たる目的とする装置である。このパラメータチューニング装置150は、コンピュータ上で動作するプログラムとして実現されてもよい。このプログラムは、テストマシン112上で動作してもよく、又は他のコンピュータ上で動作してもよい。また、パラメータチューニング装置は、ターゲットマシン102のアプリケーションプログラムの実行時間予測値186を出力してもよい。
The
更に図1を用いて、パラメータチューニング装置150の機能構成を説明する。パラメータチューニング装置150は、挙動測定部162、挙動モデル生成部164、関係特定部172、パラメータ値算出部182を有することが望ましい。挙動測定部162は、テストマシン112に対して、各種のパラメータを変化させ(163)、その都度CPUプロファイリングを実行し、CPUの挙動114をプロファイリングデータとして取得してもよい。このCPUの挙動114(プロファイリングデータ)と、パラメータ値とは、挙動モデル生成部164に送られる。挙動モデル生成部164は、パラメータの変化に対するテストマシン112の挙動(CPUプロファイリングデータ)をモデル化する。このモデルの一例として関数時間予測係数166を生成してもよい。関数時間予測係数166の詳細は後述する。
Further, the functional configuration of the
なお、このモデルは、テストマシン112をモデル化したものである。しかしながら、テストマシン112は、ターゲットマシン102のアプリケーションソフトウエア及びその他の環境を極力一致させたマシンである。したがって、このモデルは、ターゲットマシン102の挙動をモデル化したものと捉えることもできる点に留意すべきである。
This model is a model of the
そして、このモデルに対して、ターゲットマシン102の現在のパラメータ値104を適用した場合のモデルの挙動の推定値165が算出され、関係特定部172に送られる。関係特定部172では、ターゲットマシン102のCPUプロファイリングを実行し、ターゲットマシン102の挙動106すなわちターゲットマシン102のプロファイリングデータを取得する。関係特定部172は、モデルの挙動の推定値165と、ターゲットマシン102の挙動106すなわちターゲットマシン102のプロファイリングデータとから、両者の関係を特定する。この関係の一例として、環境補正係数174が算出される。なお、環境補正係数174の詳細は後述する。なお、ターゲットマシン102の環境は、常に変化している。このため、上述の関係特定部172の役割は、挙動モデル生成部164で生成されたモデルを現状のターゲットマシン102が置かれた環境に更に近づける役割を含むものと捉えることができる点に留意すべきである。
Then, an estimated
関数時間予測係数166と環境補正係数174とは、パラメータ値算出部182に送られる。パラメータ値算出部182は、パラメータ最適化部184を有することが望ましい。パラメータ最適化部は、入力された関数時間予測係数166と環境補正係数174とその他の情報から、ターゲットマシン102のための適正パラメータ値183を算出し、ターゲットマシン102に提供する。また、パラメータ最適化部は、適正パラメータをターゲットマシン102に適用した場合のターゲットマシン102におけるアプリケーションプログラムの実行時間予測値を出力してもよい。適正パラメータ値183の算出の手法の詳細については、後述する。
The function
図2は、本発明の一実施形態における処理フローを示す図である。なお、本フローの前提として、テストマシン112には、ターゲットマシン102で動作するアプリケーションプログラムが実装されており、オペレーティングシステム、ハードウエア、周辺機器、利用されるデータベース等の環境が実装されているものとする。なお、既に述べたように、テストマシン112の環境は、ターゲットマシン102の環境と同一であることが望ましいが、異なる部分が存在してもよい。
FIG. 2 is a diagram showing a processing flow in one embodiment of the present invention. As a premise of this flow, an application program that operates on the
ステップ202において、テストマシン112の設定パラメータの値を変化させて、テストマシン112のプロファイリングデータ(挙動)を測定し取得する。
In
ステップ204において、テストマシン112の挙動モデル(関数時間予測係数)が生成される。挙動モデルの一例としての関数時間予測係数については後述する。
In
ステップ206において、現在のパラメータの値におけるターゲットマシン102のプロファイリングデータ(挙動)が取得される。
In
ステップ208において、ターゲットマシン102の現在の設定パラメータを用いて、テストマシン112の挙動モデルのプロファイリングデータが算出される。
In
ステップ210において、取得されたターゲットマシン102のプロファイリングデータと、算出されたテストマシン112の挙動モデルのプロファイリングデータ推定値との関係(環境補正係数)が算出される。上述のように、テストマシン112は、ターゲットマシン102のアプリケーションが実装されており、諸環境もターゲットマシン102に非常に近似したものであるため、テストマシン112の挙動モデルは、ターゲットマシン102をモデル化したものであるとも捉えられる。したがって、ターゲットマシン102の現時点における設定パラメータをモデルに適用して算出したプロファイリングデータ推定値は、ターゲットマシン102から取得したプロファイリングデータと近似したものになることが推測される。しかしながら、既に述べたように、ターゲットマシン102の挙動は、種々の要因により動的にある程度変化し得るものでもある。このため、本ステップ210においては、モデルを、より現状のターゲットマシン102の挙動に近づけるため、ターゲットマシン102の現時点における設定パラメータをモデルに適用して算出したプロファイリングデータ推定値と、ターゲットマシン102から取得したプロファイリングデータとの関係を求める。この関係の具体例として、環境補正係数を求めてもよい。なお、環境補正係数の詳細は後述する。
In
ステップ212において、テストマシン112の挙動モデル(関数時間予測係数)と、関係(環境補正係数)とを含む情報を用いて、ターゲットマシン102の適正パラメータを算出する。テストマシン112の挙動モデル(関数時間予測係数)と、関係(環境補正係数)とを含む情報によって、現時点におけるターゲットマシン102がモデル化されると理解してもよい。そして、これらの情報を用いることによって、パラメータを変更した場合の、ターゲットマシン102の挙動(プロファイリングデータ)をシミュレートすることができる。このシミュレーションによりターゲットマシン102の適正なパラメータを算出する。適正なパラメータの算出手法としては、プロファイリングデータによって取得された各関数の実行時間の合計値を最小とするようなパラメータを、最適化問題の解法を用いて決定してもよい。なお、パラメータの算出に関する詳細は後述する。
In
ステップ214において、得られた適正パラメータ値を用いて、ターゲットマシン102におけるアプリケーションプログラムの実行時間の予測を算出し出力してもよい。この予測を検討することによって、レスポンス遅延等のトラブルがどの程度改善するかを予測することができる。そして、得られた適正パラメータ値をターゲットマシン102に適用する。
In
なお、上述の実施形態では、テストマシン112の挙動モデルを生成したが、挙動モデルではなくテストマシン112そのものを利用してもよい。
In the above-described embodiment, the behavior model of the
図3(A)ないし(D)は、一実施形態におけるテストマシン112のプロファイリングデータを示す図である。より具体的には、図1における挙動測定部162が取得するテストマシン112のプロファイリングデータの内容を示している。また、図2におけるステップ202の処理の内容を示している。
FIGS. 3A to 3D are diagrams showing profiling data of the
図3(A)は、テストマシン112におけるパラメータA、B、及びCのそれぞれの値が10,15,及び0であるときの関数X,Y,Z,及びUのプロファイリングデータを表している。
FIG. 3A shows the profiling data of the functions X, Y, Z, and U when the values of the parameters A, B, and C in the
プロファイリングデータは、それぞれの関数のCPU実行時間で表される。この場合、関数X、関数Y、関数Z、及び関数Uの実行時間が、それぞれ200ms,400ms,60ms,及び100msとしてプロファイリングデータが取得されたことを示している。図3(A)のパラメータ値は、デフォルト値であるとする。デフォルトのパラメータは、テストマシン112内の記憶部(図7のメモリ715)に記憶されていてもよい。
Profiling data is represented by the CPU execution time of each function. In this case, the profiling data is acquired with the execution times of the function X, the function Y, the function Z, and the function U being 200 ms, 400 ms, 60 ms, and 100 ms, respectively. The parameter values in FIG. 3A are assumed to be default values. The default parameters may be stored in a storage unit (
以下、関数の実行時間を関数時間と呼ぶ。 Hereinafter, the function execution time is referred to as function time.
図3(B)は、テストマシン112において、パラメータAのみを10から0に変更したプロファイリングデータを示している。この場合、関数Zのみが60msから160msに変化していることが分かる。
FIG. 3B shows profiling data in which only the parameter A is changed from 10 to 0 in the
図3(C)は、パラメータBを15から30に変更したプロファイリングデータを示している。この場合、関数X及びYがそれぞれ、200msから320ms、400msから100msに変化していることが分かる。 FIG. 3C shows profiling data in which the parameter B is changed from 15 to 30. In this case, it can be seen that the functions X and Y change from 200 ms to 320 ms and from 400 ms to 100 ms, respectively.
図3(D)は、パラメータCのみを0から10に変更したプロファイリングデータを示している。この場合、関数X及びZがそれぞれ、200msから250ms、60msから30msに変化していることが分かる。 FIG. 3D shows profiling data in which only the parameter C is changed from 0 to 10. In this case, it can be seen that the functions X and Z change from 200 ms to 250 ms and from 60 ms to 30 ms, respectively.
図4は、一実施形態における関数に対する依存パラメータと関数時間予測係数を示している。すなわち図4は、図3に示された結果をまとめたものである。図4から、パラメータの値を入力として各関数に係るプロファイリングデータの推定値を出力とする線型モデルを生成することができる。図4において、関数時間予測係数とは、線型モデルの傾きである。プロファイリングデータを(tX,tY,tZ,tU)Tとし、パラメータ値を(A,B,C)Tとすれば、図4は、以下の式(1)によって表せる。なお、Tは行列の転置を意味する。 FIG. 4 shows dependent parameters and function time prediction coefficients for a function in one embodiment. That is, FIG. 4 summarizes the results shown in FIG. From FIG. 4, it is possible to generate a linear model that receives parameter values as inputs and outputs estimated values of profiling data related to each function. In FIG. 4, the function time prediction coefficient is the slope of the linear model. If the profiling data is (t X , t Y , t Z , t U ) T and the parameter values are (A, B, C) T , FIG. 4 can be expressed by the following equation (1). T means transposition of the matrix.
図3及び図4においては、2点間のサンプリングにより、線型モデルの各々の傾き(関数時間予測係数)を求めたが、複数のパラメータをテストマシン112に与え、複数のプロファイリングデータを取得し、最小二乗法等により傾き(関数時間予測係数)を求めてもよい。
3 and 4, the slope (function time prediction coefficient) of each linear model is obtained by sampling between two points, but a plurality of parameters are given to the
また、上述の例では、線型モデルを用いたが、二次関数、三次関数等の非線形モデルを用いて、テストマシン112をモデリングしてもよい。プロファイリングデータのベクトルをtとし、パラメータのベクトルをαとすれば、パラメータのベクトルαを入力としてプロファイリングデータのベクトルtを出力するテストマシン112のモデルf(*)は、下記の一般式(2)で表現できる。
In the above example, the linear model is used. However, the
図5は、一実施形態における環境補正係数を算出する処理を示している。この処理は、図1における関係特定部172の処理の具体例である。また、図2におけるステップ210の処理の具体例である。すなわち、ターゲットマシン102のプロファイリングデータと、算出されたテストマシン112の挙動モデルのプロファイリングデータ推定値との関係を環境補正係数として算出している。
FIG. 5 shows a process for calculating the environmental correction coefficient in one embodiment. This process is a specific example of the process of the
図5において、502は、ターゲットマシン102における現在のパラメータ値(A,B,C)T=(10,20,10)Tにおけるプロファイリングデータである。504は、ターゲットマシン102と同一の上記パラメータ値を用いた際のテストマシン112の挙動モデルのプロファイリングデータの推定値を示している。両プロファイリングデータは、環境の変化等の要因により、差が存在する場合が発生する。この差を吸収し、テストマシン112の挙動モデルをターゲットマシン102の挙動に近づけるために、環境補正係数506を導入してもよい。環境補正係数508の計算式は、環境補正係数の算出手法とその値を示している。すなわち、プロファイリングデータの対応する関数の値の比を算出している。テストマシン112の挙動モデルから得られたプロファイリングデータの推定値に環境補正係数を掛けることにより、ターゲットマシン102のプロファイリングデータの推定値を、より適切に算出することができる。
In FIG. 5, 502 is profiling data at the current parameter value (A, B, C) T = (10, 20, 10) T in the
式(1)と図5の環境補正係数508とを用いれば、パラメータ値から、ターゲットマシン102のプロファイリングデータの推定値(tX’,tY’,tZ’,tU’)Tは、以下の式(3)によって表すことができる。
By using the equation (1) and the
また、環境補正係数のベクトルをRとすれば、ターゲットマシン102のプロファイリングデータのベクトルの予測値t’は、一般式(2)を用いて、以下の一般式(4)で表される。
Further, assuming that the environment correction coefficient vector is R, the predicted value t ′ of the profiling data vector of the
図6は、一実施例におけるターゲットマシン102のプロファイリングデータの予測値を示している。具体的には、式(3)を用いて、パラメータ値P(A,B,C)を様々に変化させた場合のプロファイリングデータの合計値が示されている。例えば、ターゲットマシン102のレスポンス遅延のトラブルを改善するためには、プロファイリングデータの予測値の合計値が最小となるパラメータ値を求めることが有効であろう。図6においては、パラメータ値が、P(10,15,0)のときの合計値が1819であり、最小値になっている。したがって、パラメータ値(10,15,0)を、ターゲットマシン102のパラメータの適正値として選択してもよい。
FIG. 6 shows the predicted value of the profiling data of the
なお、プロファイリングデータの合計の最小値を求めるための一般的な算出式は、式(4)を用いて以下の一般式(5)を満たすパラメータのベクトルα=α’を求めればよい。 It should be noted that as a general calculation formula for obtaining the minimum value of the total of profiling data, a parameter vector α = α ′ satisfying the following general formula (5) may be obtained using formula (4).
なお、式(5)は、プロファイリングデータの合計値の最小値を求める式であるが、プロファイリングデータの各々に重みを掛けた合計値を最小とする評価関数を用いてもよい。また、特定の1以上のプロファイリングデータのみに着目して、その値を最小にするようパラメータを求めてもよい。 Expression (5) is an expression for obtaining the minimum value of the total value of the profiling data, but an evaluation function that minimizes the total value obtained by multiplying each of the profiling data may be used. Alternatively, focusing on only one or more specific profiling data, the parameter may be obtained so as to minimize the value.
なお、パラメータを求める手法としては、各パラメータのとり得る範囲(パラメータの制約条件)を予め定めておくことが望ましい。これによって、非現実的なパラメータ値が選択されてしまうことを避けることができる。 As a method for obtaining the parameters, it is desirable to predetermine the range that each parameter can take (parameter constraint conditions). Thereby, it is possible to avoid selecting an unrealistic parameter value.
そして、各パラメータを所定の増分で変化させ、変化した各パラメータの組合せを網羅的に式(5)に与え、合計値が最小値となるパラメータのベクトル値を探索してもよい。また、この網羅的な探索で見つかったパラメータ値から出発(あるいは、任意のパラメータ値から出発)して、線形計画法や非線形の最適化手法を用いて最小値をとり得るパラメータのベクトル値を探索してもよい。 Then, each parameter may be changed by a predetermined increment, and a combination of the changed parameters may be comprehensively given in Expression (5) to search for a vector value of a parameter having a minimum total value. Also, starting from the parameter values found in this exhaustive search (or starting from any parameter value), search for the vector value of the parameter that can take the minimum value using linear programming or nonlinear optimization techniques. May be.
なお、本実施形態におけるパラメータは、コンピュータ上の種々のパラメータを含み、CPUに対するパラメータに限られるものではない。 The parameters in the present embodiment include various parameters on the computer, and are not limited to parameters for the CPU.
図7は、一実施形態のハードウエア構成を示している。ターゲットマシン、テストマシン、及びパラメータチューニング装置は、CPU710、メモリ715、入力装置720、出力装置725、外部記憶装置730、可搬記録媒体駆動装置735、ネットワーク接続装置745が含まれる。そして、それぞれの機器は、バス750によって接続されている。また、可搬記録媒体駆動装置735は、可搬記録媒体740を読み書きすることができる。そして、ネットワーク接続装置745には、インターネット760及び/又は専用線761が接続されてもよい。
FIG. 7 shows a hardware configuration of one embodiment. The target machine, test machine, and parameter tuning apparatus include a
なお、本実施形態のプログラムは、可搬記録媒体740に格納することができる。可搬記録媒体740とは、構造(structure)を有する1つ以上の非一時的(non-transitory)な、有形(tangible)な、記憶媒体を言う。例示として、可搬記録媒体740としては、磁気記録媒体、光ディスク、光磁気記録媒体、不揮発性メモリなどがある。磁気記録媒体には、HDD、フレキシブルディスク(FD)、磁気テープ(MT)などがある。光ディスクには、DVD(Digital Versatile Disc)、DVD−RAM、CD−ROM(Compact Disc-Read Only Memory)、CD−R(Recordable)/RW(ReWritable)などがある。また、光磁気記録媒体には、MO(Magneto-Optical disk)などがある。
Note that the program of this embodiment can be stored in the
なお、請求項に記載された方法やプログラムに係る発明は、矛盾のない限り処理の順番を入れ替えてもよく、あるいは、複数の処理を同時に実施してもよい。そして、これらの実施形態も、請求項に記載された発明の技術的範囲に包含されることは言うまでもない。 In the invention relating to the method and the program described in the claims, the order of the processes may be changed as long as there is no contradiction, or a plurality of processes may be performed simultaneously. It goes without saying that these embodiments are also included in the technical scope of the invention described in the claims.
上記実施形態に関し、以下の付記を開示する。
(付記1)
ターゲットマシン上で動作するソフトウェアを実装したテストマシンを用いて、前記ターゲットマシンの設定パラメータを決定するプログラムであって、
前記テストマシンの設定パラメータの値の変化に対する前記テストマシンの挙動を測定し、
前記設定パラメータの前記変化と、測定された前記挙動とから、前記テストマシンの挙動モデルを生成し、
前記設定パラメータの第1の値での前記ターゲットマシンの挙動と、前記設定パラメータの前記第1の値での前記挙動モデルの挙動とから、前記ターゲットマシンの挙動と前記挙動モデルの挙動との間の関係を特定し、
前記挙動モデルと前記関係とから、前記ターゲットマシンのための前記設定パラメータの第2の値を算出する、
処理をコンピュータに実行させるプログラム。
(付記2)
前記挙動モデルは、設定パラメータの値を入力とし、前記テストマシンの挙動の推定値を出力する、付記1記載のプログラム。
(付記3)
前記挙動は、前記ソフトウェアに含まれる1つ以上の関数の実行時間である、付記1又は2記載のプログラム。
(付記4)
前記設定パラメータは、ターゲットマシンのCPU又は前記テストマシンのCPUの動作環境を設定するパラメータである、付記1ないし3のうちいずれか1項記載のプログラム。
(付記5)
前記第2の値を算出する処理は、前記ターゲットマシン上でのソフトウェアを実行する時間の予測値を最小とするための、前記ターゲットマシンの前記設定パラメータの値を求める処理を含む、付記1ないし4のうちいずれか1項記載のプログラム。
(付記6)
ターゲットマシン上で動作するソフトウェアを実装したテストマシンを用いて、前記ターゲットマシンの設定パラメータを決定する方法であって、
前記テストマシンの設定パラメータの値の変化に対する前記テストマシンの挙動を測定し、
前記設定パラメータの前記変化と、測定された前記挙動とから、前記テストマシンの挙動モデルを生成し、
前記設定パラメータの第1の値での前記ターゲットマシンの挙動と、前記設定パラメータの前記第1の値での前記挙動モデルの挙動とから、前記ターゲットマシンの挙動と前記挙動モデルの挙動との間の関係を特定し、
前記挙動モデルと前記関係とから、前記ターゲットマシンのための前記設定パラメータの第2の値を算出する、
処理を有する方法。
(付記7)
前記挙動モデルは、設定パラメータの値を入力とし、前記テストマシンの挙動の推定値を出力する、付記6記載の方法。
(付記8)
前記挙動は、前記ソフトウェアに含まれる1つ以上の関数の実行時間である、付記6又は7記載の方法。
(付記9)
前記設定パラメータは、ターゲットマシンのCPU又は前記テストマシンのCPUの動作環境を設定するパラメータである、付記6ないし8のうちいずれか1項記載の方法。
(付記10)
前記第2の値を算出する処理は、前記ターゲットマシン上でのソフトウェアを実行する時間の予測値を最小とするための、前記ターゲットマシンの前記設定パラメータの値を求める処理を含む、付記6ないし9のうちいずれか1項記載の方法。
(付記11)
ターゲットマシン上で動作するソフトウェアを実装したテストマシンを用いて、前記ターゲットマシンの設定パラメータを決定する装置であって、
前記テストマシンの設定パラメータの値の変化に対する前記テストマシンの挙動を測定する挙動測定部と、
前記設定パラメータの前記変化と、測定された前記挙動とから、前記テストマシンの挙動モデルを生成する挙動モデル生成部と、
前記設定パラメータの第1の値での前記ターゲットマシンの挙動と、前記設定パラメータの前記第1の値での前記挙動モデルの挙動とから、前記ターゲットマシンの挙動と前記挙動モデルの挙動との間の関係を特定する関係特定部と、
前記挙動モデルと前記関係とから、前記ターゲットマシンのための前記設定パラメータの第2の値を算出するパラメータ値算出部、
を有する装置。
(付記12)
前記挙動モデルは、設定パラメータの値を入力とし、前記テストマシンの挙動の推定値を出力する、付記11記載の装置。
(付記13)
前記挙動は、前記ソフトウェアに含まれる1つ以上の関数の実行時間である、付記11又は12記載の装置。
(付記14)
前記設定パラメータは、ターゲットマシンのCPU又は前記テストマシンのCPUの動作環境を設定するパラメータである、付記11ないし13のうちいずれか1項記載の装置。
(付記15)
前記設定パラメータ値算出部は、前記ターゲットマシン上でのソフトウェアを実行する時間の予測値を最小とするための、前記ターゲットマシンの前記設定パラメータの値を求めるパラメータ最適化部を含む、付記11ないし14のうちいずれか1項記載の装置。
The following notes are disclosed regarding the above embodiment.
(Appendix 1)
A program for determining a setting parameter of the target machine using a test machine in which software that operates on the target machine is installed,
Measuring the behavior of the test machine with respect to a change in the value of a setting parameter of the test machine;
From the change in the setting parameter and the measured behavior, a behavior model of the test machine is generated,
Between the behavior of the target machine at the first value of the setting parameter and the behavior of the behavior model at the first value of the setting parameter, between the behavior of the target machine and the behavior model. Identify the relationship
Calculating a second value of the configuration parameter for the target machine from the behavior model and the relationship;
A program that causes a computer to execute processing.
(Appendix 2)
The program according to claim 1, wherein the behavior model receives a setting parameter value and outputs an estimated value of the behavior of the test machine.
(Appendix 3)
The program according to appendix 1 or 2, wherein the behavior is an execution time of one or more functions included in the software.
(Appendix 4)
The program according to any one of appendices 1 to 3, wherein the setting parameter is a parameter for setting an operating environment of a CPU of a target machine or a CPU of the test machine.
(Appendix 5)
The process of calculating the second value includes a process of obtaining a value of the setting parameter of the target machine for minimizing a predicted value of time for executing software on the target machine. 4. The program according to any one of four.
(Appendix 6)
A method for determining a setting parameter of the target machine using a test machine equipped with software that operates on the target machine,
Measuring the behavior of the test machine with respect to a change in the value of a setting parameter of the test machine;
From the change in the setting parameter and the measured behavior, a behavior model of the test machine is generated,
Between the behavior of the target machine at the first value of the setting parameter and the behavior of the behavior model at the first value of the setting parameter, between the behavior of the target machine and the behavior model. Identify the relationship
Calculating a second value of the configuration parameter for the target machine from the behavior model and the relationship;
A method having processing.
(Appendix 7)
The method according to claim 6, wherein the behavior model receives a setting parameter value and outputs an estimated value of the behavior of the test machine.
(Appendix 8)
The method according to claim 6 or 7, wherein the behavior is an execution time of one or more functions included in the software.
(Appendix 9)
The method according to any one of appendices 6 to 8, wherein the setting parameter is a parameter for setting an operating environment of a CPU of a target machine or a CPU of the test machine.
(Appendix 10)
The process of calculating the second value includes a process of obtaining a value of the setting parameter of the target machine for minimizing a predicted value of time for executing the software on the target machine. The method according to any one of 9.
(Appendix 11)
A device that determines a setting parameter of the target machine using a test machine in which software that operates on the target machine is mounted,
A behavior measuring unit for measuring the behavior of the test machine with respect to a change in a value of a setting parameter of the test machine;
A behavior model generating unit that generates a behavior model of the test machine from the change in the setting parameter and the measured behavior;
Between the behavior of the target machine at the first value of the setting parameter and the behavior of the behavior model at the first value of the setting parameter, between the behavior of the target machine and the behavior model. A relationship identifying unit that identifies the relationship between
A parameter value calculation unit for calculating a second value of the setting parameter for the target machine from the behavior model and the relationship;
Having a device.
(Appendix 12)
The apparatus according to claim 11, wherein the behavior model receives a set parameter value and outputs an estimated value of the behavior of the test machine.
(Appendix 13)
The apparatus according to claim 11 or 12, wherein the behavior is an execution time of one or more functions included in the software.
(Appendix 14)
The apparatus according to any one of appendices 11 to 13, wherein the setting parameter is a parameter for setting an operating environment of a CPU of a target machine or a CPU of the test machine.
(Appendix 15)
The setting parameter value calculation unit includes a parameter optimization unit that calculates a value of the setting parameter of the target machine for minimizing a predicted value of time for executing software on the target machine. 14. The apparatus according to any one of fourteen.
102 ターゲットマシン
112 テストマシン
150 パラメータチューニング装置
162 挙動測定部
164 挙動モデル生成部
172 関係特定部
182 パラメータ値算出部
102
Claims (7)
前記テストマシンの設定パラメータの値の変化に対する前記テストマシンの挙動を測定し、
前記設定パラメータの前記変化と、測定された前記挙動とから、前記テストマシンの挙動モデルを生成し、
前記設定パラメータの第1の値での前記ターゲットマシンの挙動と、前記設定パラメータの前記第1の値での前記挙動モデルによる挙動の推定値とから、前記ターゲットマシンの挙動と前記挙動モデルによる挙動の推定値との間の関係を特定し、
前記挙動モデルと前記関係とから、前記ターゲットマシンのための前記設定パラメータの第2の値を算出する、
処理をコンピュータに実行させるプログラム。 A program for determining a setting parameter of the target machine using a test machine in which software that operates on the target machine is installed,
Measuring the behavior of the test machine with respect to a change in the value of a setting parameter of the test machine;
From the change in the setting parameter and the measured behavior, a behavior model of the test machine is generated,
From the behavior of the target machine at the first value of the setting parameter and the estimated value of the behavior by the behavior model at the first value of the setting parameter, the behavior of the target machine and the behavior by the behavior model Identify the relationship between the estimate of
Calculating a second value of the configuration parameter for the target machine from the behavior model and the relationship;
A program that causes a computer to execute processing.
前記テストマシンの設定パラメータの値の変化に対する前記テストマシンの挙動を測定し、
前記設定パラメータの前記変化と、測定された前記挙動とから、前記テストマシンの挙動モデルを生成し、
前記設定パラメータの第1の値での前記ターゲットマシンの挙動と、前記設定パラメータの前記第1の値での前記挙動モデルによる挙動の推定値とから、前記ターゲットマシンの挙動と前記挙動モデルによる挙動の推定値との間の関係を特定し、
前記挙動モデルと前記関係とから、前記ターゲットマシンのための前記設定パラメータの第2の値を算出する、
処理を有する方法。 A method for determining a setting parameter of the target machine using a test machine equipped with software that operates on the target machine,
Measuring the behavior of the test machine with respect to a change in the value of a setting parameter of the test machine;
From the change in the setting parameter and the measured behavior, a behavior model of the test machine is generated,
From the behavior of the target machine at the first value of the setting parameter and the estimated value of the behavior by the behavior model at the first value of the setting parameter, the behavior of the target machine and the behavior by the behavior model Identify the relationship between the estimate of
Calculating a second value of the configuration parameter for the target machine from the behavior model and the relationship;
A method having processing.
前記テストマシンの設定パラメータの値の変化に対する前記テストマシンの挙動を測定する挙動測定部と、
前記設定パラメータの前記変化と、測定された前記挙動とから、前記テストマシンの挙動モデルを生成する挙動モデル生成部と、
前記設定パラメータの第1の値での前記ターゲットマシンの挙動と、前記設定パラメータの前記第1の値での前記挙動モデルによる挙動の推定値とから、前記ターゲットマシンの挙動と前記挙動モデルによる挙動の推定値との間の関係を特定する関係特定部と、
前記挙動モデルと前記関係とから、前記ターゲットマシンのための前記設定パラメータの第2の値を算出するパラメータ値算出部、
を有する装置。 A device that determines a setting parameter of the target machine using a test machine in which software that operates on the target machine is mounted,
A behavior measuring unit for measuring the behavior of the test machine with respect to a change in a value of a setting parameter of the test machine;
A behavior model generating unit that generates a behavior model of the test machine from the change in the setting parameter and the measured behavior;
From the behavior of the target machine at the first value of the setting parameter and the estimated value of the behavior by the behavior model at the first value of the setting parameter, the behavior of the target machine and the behavior by the behavior model A relationship identifying unit that identifies a relationship between the estimated value of
A parameter value calculation unit for calculating a second value of the setting parameter for the target machine from the behavior model and the relationship;
Having a device.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2012058012A JP5906844B2 (en) | 2012-03-14 | 2012-03-14 | Computer parameter tuning program, method, and apparatus |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2012058012A JP5906844B2 (en) | 2012-03-14 | 2012-03-14 | Computer parameter tuning program, method, and apparatus |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2013191108A JP2013191108A (en) | 2013-09-26 |
JP5906844B2 true JP5906844B2 (en) | 2016-04-20 |
Family
ID=49391253
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2012058012A Active JP5906844B2 (en) | 2012-03-14 | 2012-03-14 | Computer parameter tuning program, method, and apparatus |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP5906844B2 (en) |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110488512B (en) * | 2019-06-11 | 2021-12-24 | 惠科股份有限公司 | Correction method and correction system of display panel measuring equipment |
Family Cites Families (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6704687B2 (en) * | 2001-01-31 | 2004-03-09 | Hewlett-Packard Development Company, L.P. | Historical results based method for automatically improving computer system performance |
JP2006244422A (en) * | 2005-03-07 | 2006-09-14 | Nec Corp | System parameter automatic tuning method using network |
TWI428767B (en) * | 2006-06-26 | 2014-03-01 | Ibm | Method, program and apparatus for optimizing configuration parameter set of system |
-
2012
- 2012-03-14 JP JP2012058012A patent/JP5906844B2/en active Active
Also Published As
Publication number | Publication date |
---|---|
JP2013191108A (en) | 2013-09-26 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
Wang et al. | Performance prediction for apache spark platform | |
US20140359624A1 (en) | Determining a completion time of a job in a distributed network environment | |
US20170140278A1 (en) | Using machine learning to predict big data environment performance | |
CA3090095C (en) | Methods and systems to determine and optimize reservoir simulator performance in a cloud computing environment | |
BR112015019167B1 (en) | Method performed by a computer processor and system | |
US8756307B1 (en) | Translating service level objectives to system metrics | |
Zhang et al. | Optimizing cost and performance trade-offs for mapreduce job processing in the cloud | |
KR102161192B1 (en) | Method and apparatus for data mining from core trace | |
US9542294B2 (en) | Method to apply perturbation for resource bottleneck detection and capacity planning | |
US20160117199A1 (en) | Computing system with thermal mechanism and method of operation thereof | |
Bei et al. | MEST: A model-driven efficient searching approach for MapReduce self-tuning | |
Bobrek et al. | Stochastic contention level simulation for single-chip heterogeneous multiprocessors | |
US20110191094A1 (en) | System and method to evaluate and size relative system performance | |
US20180314774A1 (en) | System Performance Measurement of Stochastic Workloads | |
JP5906844B2 (en) | Computer parameter tuning program, method, and apparatus | |
JP2018014107A (en) | Approximate computing for application performance in heterogeneous systems | |
US7120567B2 (en) | Method and apparatus for determining output uncertainty of computer system models | |
Sfakianakis et al. | Trace-based workload generation and execution | |
JP2020522063A5 (en) | ||
JP2005063208A (en) | Software reliability growth model selection method, software reliability growth model selection apparatus, software reliability growth model selection program and program recording medium | |
US7505886B1 (en) | Technique for programmatically obtaining experimental measurements for model construction | |
Kraljic et al. | Energy Efficient Frequency Scaling on GPUs in Heterogeneous HPC Systems | |
JP5765266B2 (en) | Performance evaluation method, information processing apparatus, and program | |
US11341023B2 (en) | Apparatus, method, and non-transitory computer-readable medium for analyzing trace information | |
TWI781767B (en) | Prediction-based method for analyzing change impact on software components |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20141112 |
|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20150728 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20150811 |
|
A521 | Written amendment |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20150907 |
|
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: 20160223 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20160307 |
|
R150 | Certificate of patent or registration of utility model |
Ref document number: 5906844 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R150 |