WO2014091733A1 - 性能予測装置及び性能予測方法 - Google Patents

性能予測装置及び性能予測方法 Download PDF

Info

Publication number
WO2014091733A1
WO2014091733A1 PCT/JP2013/007194 JP2013007194W WO2014091733A1 WO 2014091733 A1 WO2014091733 A1 WO 2014091733A1 JP 2013007194 W JP2013007194 W JP 2013007194W WO 2014091733 A1 WO2014091733 A1 WO 2014091733A1
Authority
WO
WIPO (PCT)
Prior art keywords
model
performance
output
input
performance prediction
Prior art date
Application number
PCT/JP2013/007194
Other languages
English (en)
French (fr)
Inventor
大地 木村
Original Assignee
日本電気株式会社
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 日本電気株式会社 filed Critical 日本電気株式会社
Priority to JP2014551883A priority Critical patent/JP6172160B2/ja
Publication of WO2014091733A1 publication Critical patent/WO2014091733A1/ja

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/30Monitoring
    • G06F11/34Recording or statistical evaluation of computer activity, e.g. of down time, of input/output operation ; Recording or statistical evaluation of user activity, e.g. usability assessment
    • G06F11/3447Performance evaluation by modeling
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/008Reliability or availability analysis
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/30Monitoring
    • G06F11/34Recording or statistical evaluation of computer activity, e.g. of down time, of input/output operation ; Recording or statistical evaluation of user activity, e.g. usability assessment
    • G06F11/3409Recording or statistical evaluation of computer activity, e.g. of down time, of input/output operation ; Recording or statistical evaluation of user activity, e.g. usability assessment for performance assessment
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2201/00Indexing scheme relating to error detection, to error correction, and to monitoring
    • G06F2201/815Virtual

Definitions

  • the present invention relates to performance prediction, and more particularly, to performance prediction of a virtualized information processing system.
  • the overhead generated by the virtualization technology affects the performance of the information processing system. For this reason, it is important for an information processing system to be virtualized to predict the performance of the system that accompanies virtualization prior to operation in a real environment.
  • the related information processing system performance prediction apparatus first creates a performance prediction model based on design information of each component of the system. Then, the performance prediction apparatus considers the overhead of the performance prediction model using a performance calculation formula including an overhead for each virtual machine monitor for virtualization (see, for example, Patent Document 1).
  • the performance calculation formula is stored in, for example, a database.
  • Another related performance prediction apparatus creates a storage system performance prediction model based on the model information of the components of the storage virtualization apparatus (see, for example, Patent Document 2).
  • Another related performance prediction apparatus calculates a performance prediction value of a virtualized system by using a performance evaluation function and a model including an overhead generated due to the virtualization technology (for example, Patent Document 3). See).
  • the performance prediction devices described in Patent Documents 1 to 3 create a performance model based on design information and operation details of each component of the information processing system.
  • the related performance prediction device places a load on the actual operation status of the system before moving to virtualization and a specific resource (for example, a CPU (Central Processing Unit) or a disk device). Compare the measurement results of benchmark software that measures performance. Then, the related performance prediction apparatus creates a performance model in which the operation is estimated based on the comparison result. Then, the related performance prediction apparatus predicts the performance of the system after shifting to virtualization using the performance model.
  • a specific resource for example, a CPU (Central Processing Unit) or a disk device.
  • the performance model created from the above estimation should be modified to a more accurate model in order to improve the prediction.
  • the error between the prediction results and the performance after the actual virtualization transition is important.
  • the above errors include not only performance model errors (errors) but also the effects of virtualization.
  • the performance prediction apparatuses described in Patent Documents 1 to 3 have a problem in that errors in the performance model cannot be extracted from the error except for the influence of virtualization. That is, the performance prediction apparatuses described in Patent Documents 1 to 3 have a problem that the error of the performance model is not known. Alternatively, Patent Documents 1 to 3 have a problem that information for appropriate feedback to the model creation guideline cannot be provided.
  • An object of the present invention is to provide a performance prediction apparatus and a performance prediction method capable of solving the above-described problems and providing appropriate information related to correction of a performance model.
  • a performance prediction apparatus includes an input / output measurement unit that measures input and output of an information processing system that is a prediction target, and performance of an application executed in the information processing system.
  • An application performance model storage unit that stores an application performance model that is a model
  • a virtualization impact model storage unit that stores a virtualization impact model that is a model of the impact on virtualization performance of the information processing system, and at least the virtual Predicting the output of the performance prediction model for predicting the performance of the information processing system with respect to the input measured by the input / output measuring means based on the conversion model, the predicted output and the output measured by the input / output measuring means;
  • the performance prediction model is corrected based on the corrected performance prediction model and the application And a performance prediction model correcting means for comparing the ability model.
  • the performance prediction method in one aspect of the present invention measures the input and output of the information processing system that is the prediction target, accumulates an application performance model that is a model of the performance of the application executed in the information processing system, Performance prediction for accumulating a virtualization impact model, which is a model of the impact on virtualization performance of the information processing system, and predicting the performance of the information processing system with respect to the measured input based on at least the virtualization model
  • a model output is predicted, the performance prediction model is corrected based on the predicted output and the measured output, and the performance prediction model and the application performance model are compared.
  • a recording medium having a computer-readable program recorded thereon, a process for measuring input and output of an information processing system to be predicted, and a model of performance of an application executed in the information processing system
  • FIG. 1 is a block diagram showing an example of the configuration of the performance prediction apparatus according to the first embodiment of the present invention.
  • FIG. 2 is a flowchart illustrating an example of processing according to the first embodiment.
  • FIG. 3 is an explanatory diagram illustrating an example of an application performance model used in the first embodiment.
  • FIG. 4 is an explanatory diagram illustrating an example of an application performance model used in the first embodiment.
  • FIG. 5 is an explanatory diagram illustrating an example of an application performance model used in the first embodiment.
  • FIG. 6 is a block diagram illustrating an example of another configuration of the performance prediction apparatus according to the first embodiment.
  • FIG. 7 is a block diagram illustrating an example of the configuration of the performance prediction apparatus according to the second embodiment.
  • FIG. 8 is a flowchart illustrating an example of processing according to the second embodiment.
  • FIG. 9 is a block diagram illustrating an example of the configuration of the performance prediction apparatus according to the third embodiment.
  • FIG. 1 is a block diagram illustrating an example of a functional configuration of a performance prediction apparatus 10 according to the first embodiment of the present invention.
  • the performance prediction apparatus 10 includes an input / output measurement unit 101, an application performance model storage unit 102, a virtualization influence model storage unit 103, a performance prediction unit 104, an application performance model correction unit 105, and a correction location comparison unit 106. including.
  • the input / output measuring unit 101 measures input and output of an information processing system (hereinafter referred to as “prediction target system”) that is a target for predicting performance (not shown).
  • prediction target system an information processing system
  • the access means to the prediction target system of the performance prediction apparatus 10 of the present embodiment is not particularly limited.
  • the access means only needs to allow the performance prediction apparatus 10 to communicate with the prediction target system, and may be, for example, the Internet or LAN (Local Area Network).
  • the performance prediction apparatus 10 may directly measure the input and output of the prediction target system, or may indirectly measure via a measuring instrument or the like.
  • the application performance model storage unit 102 stores a performance model (application performance model) of an application executed in the prediction target system.
  • the application performance model accumulation unit 102 is not particularly limited in the model accumulation method.
  • the application performance model storage unit 102 may be a database storing models (hereinafter referred to as “DB”).
  • the application performance model handled by the performance prediction apparatus 10 of the present embodiment is not particularly limited.
  • the application performance model may be a model using a queue or Petri net that imitates the operation of each component of the application.
  • the application performance model may be a model in which an output is determined based on calculation or simulation according to a predetermined procedure with respect to the received input.
  • the input of the application performance model is, for example, the number of requests processed by the prediction target system within a unit time.
  • the output of the application performance model is, for example, the throughput, response time, or resource usage rate of the prediction target system.
  • the input and output of the application performance model is not limited to these.
  • the application performance model may use the independent variable as an input and the dependent variable as an output.
  • the model storage method is not particularly limited.
  • the user may store the model in the application performance model storage unit 102 in advance.
  • the application performance model accumulation unit 102 may extract and accumulate application performance models from a predetermined DB based on information on the prediction target system in advance.
  • the application performance model storage unit 102 may store a model created by the designer of the prediction target system based on the design information.
  • the application performance model storage unit 102 may create an application performance model with reference to the model.
  • the virtualization impact model storage unit 103 stores a performance impact model (virtualization impact model) based on the virtualization of the prediction target system.
  • the virtualization influence model accumulation unit 103 is not particularly limited in the model accumulation method.
  • the virtualization influence model accumulation unit 103 may be a DB that accumulates models.
  • the virtualization influence model storage unit 103 may store a virtualization model created by a user who performs virtualization.
  • the virtualization influence model is a model obtained by adding the influence of virtualization to each component of the application performance model or the output of the application performance model. That is, the virtualization influence model is a model obtained by correcting (changing) the application performance model based on the influence of virtualization.
  • the virtualization impact model is a model in which an increase amount due to virtualization overhead is added to the processing time or resource usage rate per request of each component of the application performance model.
  • the virtualization influence model is a model in which the application performance model is changed so that the CPU is used in addition to the disk.
  • the virtualization impact model may be a model that explicitly mimics the operation of the virtual machine monitor, or a model in which the difference in performance between the non-virtualized environment and the virtualized environment is modeled by machine learning.
  • the performance prediction unit 104 receives an application performance model corresponding to the prediction target system from the application performance model storage unit 102. In addition, the performance prediction unit 104 receives the virtualization influence model corresponding to the prediction target system from the virtualization influence model accumulation unit 103. Then, the performance prediction unit 104 predicts (calculates) an output for the input measured by the input / output measurement unit 101 based on the virtualization influence model and the application performance model.
  • the application performance model correction unit 105 determines whether or not the model needs to be corrected based on the input and output of the prediction target system measured by the input / output measurement unit 101 and the output predicted by the performance prediction unit 104. When it is determined that correction is necessary, the application performance model correction unit 105 corrects the application performance model.
  • the difference (error) between the output measured by the input / output measurement unit 101 and the output predicted by the performance prediction unit 104 is an error from the prediction of the performance of the entire system including the influence of virtualization. Therefore, the application performance model correction unit 105 corrects the application performance model based on an error from the prediction of the performance of the entire system including the influence of virtualization.
  • the correction part comparison unit 106 includes a correction part in the corrected application performance model corrected by the application performance model correction part 105 and a part corresponding to the application performance model before correction stored in the application performance model storage part 102. Compare. This comparison result is information regarding correction of the application performance model. That is, the corrected portion comparison unit 106 can calculate the comparison result of the corrected portions based on the model error.
  • correction part comparison unit 106 may display the comparison result or may output the comparison result to another device (not shown).
  • FIG. 2 is a flowchart showing an example of processing of the performance prediction apparatus 10.
  • Application performance model storage unit 102 stores an application performance model in advance.
  • the virtualization influence model storage unit 103 stores the virtualization influence model in advance.
  • the input / output measuring unit 101 measures the input and output of the prediction target system (step S201).
  • the performance prediction unit 104 predicts an output for the input measured by the input / output measurement unit 101 based on the virtualization influence model corresponding to the prediction target system and the application performance model (step S202).
  • the application performance model correction unit 105 determines whether or not the application performance model needs to be corrected (step S203).
  • step S203 If the application performance model correction unit 105 determines that the correction is not necessary (step S203, Yes), the performance prediction apparatus 10 moves the process to step S205.
  • step S203 When the application performance model correction unit 105 determines that correction is necessary (No in step S203), the performance prediction apparatus 10 moves the process to step S204.
  • the application performance model correction unit 105 may set conditions for determining that the application performance model need not be corrected in accordance with the prediction target system.
  • the application performance model correction unit 105 may use one of the following conditions.
  • Condition 1-1 The error between the output of the prediction target system measured by the input / output measurement unit 101 and the output predicted by the performance prediction unit 104 is less than a predetermined threshold.
  • Condition 1-2 The error between the output of the prediction target system measured by the input / output measurement unit 101 and the output predicted by the performance prediction unit 104 does not change even after a certain number of corrections. (That is, it can be assumed that the correction is in equilibrium.)
  • Condition 1-3 Correction was made a predetermined number of times.
  • step S204 the application performance model correction unit 105 corrects the application performance model based on the input and output of the prediction target system measured by the input / output measurement unit 101 and the output predicted by the performance prediction unit 104.
  • the application performance model correction unit 105 corrects the application performance model so that the output predicted by the performance prediction unit 104 approaches the output of the prediction target system measured by the input / output measurement unit 101.
  • the application performance model correcting unit 105 is not particularly limited in the method used for correcting the application performance model.
  • the application performance model correction unit 105 may use a learning or approximation method.
  • the application performance model correction unit 105 uses a difference (error) between the output of the prediction target system measured by the input / output measurement unit 101 and the output predicted by the performance prediction unit 104 as an evaluation function. Then, the application performance model correcting unit 105 uses the reinforcement learning, the genetic algorithm, or the Monte Carlo method so as to improve the evaluation function (here, the error is reduced). (Processing time per request of each component in the case of a matrix) is corrected.
  • the application performance model correction unit 105 corrects the parameters of the application performance model using a predetermined method so as to improve the evaluation function.
  • FIG. 3 is a diagram showing an example of an application performance model using a queue.
  • Requests input to the model shown in FIG. 3 are distributed to queue 301 with probability p 1 , queue 302 with probability p 2 , and queue 303 with probability p 3 .
  • the processing times of the queues 301 to 303 are D 1 , D 2 , and D 3 , respectively.
  • the application performance model correction unit 105 corrects the values of these probabilities p 1 to p 3 and the processing times D 1 to D 3 .
  • 4 and 5 are examples of an application performance model for explaining another modification.
  • the application performance model modification unit 105 modifies the application performance model using the queue shown in FIG. 4 to the application performance model shown in FIG. 5 by adding the queue to be processed and changing the processing distribution path.
  • the application performance model correction unit 105 adds a component, but it may be deleted or changed.
  • the related performance prediction apparatus cannot directly measure partial elements of the prediction target system corresponding to the input / output of the application performance model.
  • the performance prediction apparatus 10 of the present embodiment can correct the application performance model using the evaluation function based on the difference between the output of the prediction target system and the predicted output.
  • the performance prediction unit 104 predicts the output again using the corrected application performance model in step S202.
  • the performance prediction apparatus 10 repeats this operation until the application performance model correction unit 105 determines that correction is not necessary.
  • the correction part comparison unit 106 corresponds to the correction part of the application performance model after correction corrected in step S204 and the application performance model before correction stored in the application performance model storage part 102. Are compared (step S205).
  • correction part comparison unit 106 operates as follows, for example.
  • the correction part comparison unit 106 compares the value before correction and the value after correction of the corrected parameter.
  • the corrected part comparison unit 106 before and after the correction of the changed / added / deleted part And compare.
  • the corrected part comparison unit 106 may display the comparison result. Or the correction location comparison part 106 may output a comparison result to the other apparatus which is not shown in figure.
  • the performance prediction apparatus 10 can calculate an error from the prediction of the performance of the entire system including the influence of virtualization, and can provide information related to the correction of the application performance model based on the error. An effect can be obtained.
  • the performance prediction unit 104 of the performance prediction apparatus 10 predicts the output of the application performance model based on the input of the prediction target system. Then, the application performance model correction unit 105 obtains an error between the input and output of the prediction target system and the output predicted by the performance prediction unit 104. That is, the performance prediction apparatus 10 calculates an error from the prediction of the performance of the entire system including the influence of virtualization. Then, the application performance model correction unit 105 of the performance prediction apparatus 10 corrects the application performance model based on the error. Then, the corrected part comparison unit 106 of the performance prediction apparatus 10 compares the corrected part of the corrected application performance model with the corresponding part of the application performance model before correction. And the correction location comparison part 106 of the performance prediction apparatus 10 is for displaying or outputting a comparison result.
  • prediction target system designer can easily improve the model by, for example, feeding back information provided by the performance prediction apparatus 10.
  • the configuration of the performance prediction apparatus 10 is not limited to the configuration described so far.
  • the performance prediction device 10 may be an external storage device that connects the application performance model storage unit 102 or the virtualization influence model storage unit 103 via a network or a bus.
  • the performance prediction apparatus 10 may divide each configuration into a plurality of configurations.
  • the corrected portion comparison unit 106 may be divided into a configuration for comparing the corrected portions and a configuration for displaying the comparison result.
  • the performance prediction apparatus 10 may have a plurality of configurations as one configuration.
  • the performance prediction device 10 may be realized as a computer device including a CPU (Central Processing Unit), a ROM (Read Only Memory), and a RAM (Random Access Memory).
  • the performance prediction apparatus 10 may be realized as a computer apparatus including an input / output connection circuit (IOC: Input / Output Circuit) and a network interface circuit (NIC: Network Interface Circuit) in addition to the above configuration.
  • IOC Input / Output Circuit
  • NIC Network Interface Circuit
  • FIG. 6 is a block diagram illustrating an example of a configuration of a performance prediction device 60 that is another configuration of the performance prediction device 10 of the present embodiment.
  • the performance prediction device 60 includes a CPU 610, a ROM 620, a RAM 630, an internal storage device 640, an IOC 650, and a NIC 680, and constitutes a computer.
  • CPU 610 reads a program from ROM 620.
  • the CPU 610 controls the RAM 630, the internal storage device 640, the IOC 650, and the NIC 680 based on the read program. And CPU610 controls these structures and implement
  • Each configuration includes an input / output measurement unit 101, an application performance model storage unit 102, a data write / read control unit of the virtualization influence model storage unit 103, a performance prediction unit 104, and an application performance model correction unit 105. , And the corrected portion comparison unit 106.
  • the CPU 610 uses the RAM 630 as a temporary program storage when realizing each function.
  • the CPU 610 may operate by reading a program included in the storage medium 700 storing the program so as to be readable by a computer into the RAM 830 using a storage medium reading device (not shown).
  • the CPU 810 may use a non-transitory memory such as the ROM 810 or the storage medium 890, or may use a volatile memory such as the RAM 830.
  • the CPU 610 may receive a program from an external device (not shown) via the NIC 680.
  • ROM 620 stores programs executed by CPU 610 and fixed data.
  • the ROM 620 is, for example, a P-ROM (Programmable-ROM) or a flash ROM.
  • the RAM 630 temporarily stores programs executed by the CPU 610 and data.
  • the RAM 630 is, for example, a D-RAM (Dynamic-RAM).
  • the internal storage device 640 stores data and / or programs stored in the performance prediction device 60 for a long time. Further, the internal storage device 640 may operate as a temporary storage device for the CPU 610. Further, the internal storage device 640 may operate as the application performance model storage unit 102 or the virtualization influence model storage unit 103.
  • the internal storage device 640 is, for example, a hard disk device, a magneto-optical disk device, an SSD (Solid State Drive), or a disk array device.
  • the IOC 650 mediates data between the CPU 610, the input device 660, and the display device 670.
  • the IOC 650 is, for example, an IO interface card or a USB (Universal Serial Bus) card.
  • the input device 660 is an input unit that receives an input instruction from an operator of the performance prediction device 60.
  • the input device 660 is, for example, a keyboard, a mouse, or a touch panel.
  • the display device 670 is a display unit of the performance prediction device 60.
  • the display device 670 is a liquid crystal display, for example.
  • the display device 670 may display the comparison result as a part of the correction part comparison unit 106.
  • the NIC 680 relays the exchange of data with the prediction target system and other devices via the network.
  • the NIC 680 is, for example, a LAN card.
  • the performance prediction device 60 may output the comparison result of the correction portion comparison unit 106 to another device via the NIC 680.
  • the performance prediction device 60 configured in this way can obtain the same effects as the performance prediction device 10.
  • the reason is that the CPU 610 of the performance prediction device 60 can realize the same function as the performance prediction device 10 based on the program.
  • FIG. 7 is a block diagram showing an example of the configuration of the performance prediction apparatus 11 according to the second exemplary embodiment of the present invention.
  • the performance prediction apparatus 11 includes an input / output measurement unit 101, an application performance model storage unit 102, a virtualization influence model storage unit 103, a performance prediction unit 114, a black box adjustment unit 107, and an application performance model comparison unit 108. including.
  • the performance prediction apparatus 11 of the present embodiment may be realized by a computer apparatus including the CPU 610 shown in FIG.
  • the performance prediction unit 114 predicts the output of the black box with respect to the input measured by the input / output measurement unit 101 based on the virtualization influence model of the prediction target system accumulated by the virtualization influence model accumulation unit 103 and the black box. .
  • the black box expresses the performance of the application executed in the information processing system.
  • the black box is a mechanism (model) that can determine an appropriate output for the input based on learning or regression.
  • a black box may use a neural network or a hidden Markov model.
  • the black box may use approximate or nonparametric regression using a polynomial function.
  • random values may be given as initial values for the parameters of the black box (for example, each synaptic load of the neural network or each coefficient of polynomial approximation).
  • the value of the black box parameter may be given in advance so as to imitate the behavior of the application to be expressed.
  • application performance model and the black box may be models having similar functions. However, the application performance model and the black box differ in the functions they are interested in.
  • Application performance model is a model whose behavior is defined in advance, such as imitating the behavior of each component of the application. That is, the application performance model is a model based on the operation of the application.
  • the operation of the black box changes so as to determine an appropriate output for the input. That is, the black box is a model based on the relationship between input and output.
  • the performance prediction apparatus 11 of this embodiment does not specifically limit the structure holding a black box.
  • a storage unit (not shown) may store the black box.
  • the black box adjustment unit 107 holds a black box.
  • the black box adjustment unit 107 determines whether black box adjustment (correction) is necessary based on the input and output of the prediction target system measured by the input / output measurement unit 101 and the output predicted by the performance prediction unit 104. . Then, the black box adjustment unit 107 adjusts the black box when adjustment is necessary.
  • the application performance model comparison unit 108 reads the application performance model stored in the application performance model storage unit 102.
  • the application performance model comparison unit 108 compares the behavior (output) with respect to the input of the prediction target system measured by the input / output measurement unit 101 for the adjusted black box and the read application performance model.
  • the black box is a model based on the relationship between input and output. Black box adjustment is output adjustment. Therefore, the comparison of the output of the present embodiment corresponds to the comparison of the corrected portions of the first embodiment.
  • FIG. 8 is a flowchart showing an example of processing of the performance prediction apparatus 11.
  • the same processes as those in the first embodiment are denoted by the same reference numerals, and detailed description thereof is omitted.
  • step S402 the performance prediction unit 114 predicts the output of the black box for the input measured by the input / output measurement unit 101 based on the following two.
  • step S403 the black box The adjustment unit 107 determines whether black box adjustment is necessary. When the black box adjustment unit 107 determines that adjustment is unnecessary (No in step S403), the performance prediction apparatus 11 moves the process to step S405. When the black box adjustment unit 107 determines that adjustment is necessary (step S403, Yes), the performance prediction apparatus 11 moves the process to step S404.
  • the black box adjustment unit 107 may set a condition for determining that adjustment of the black box is not required in accordance with the prediction target system.
  • the black box adjustment unit 107 may use one of the following conditions.
  • Condition 2-1 The output of the prediction target system measured by the input / output measurement unit 101 is compared with the output predicted by the performance prediction unit 114, and the difference (error) is less than a predetermined threshold. (That is, the model of the prediction target system including the black box can predict the behavior of the prediction target system within a predetermined accuracy.)
  • Condition 2-2 The error between the output of the prediction target system measured by the input / output measurement unit 101 and the output predicted by the performance prediction unit 114 does not change even after a certain number of adjustments. (That is, the adjustment can be considered to be in equilibrium.)
  • Condition 2-3 Adjustment was performed a predetermined number of times.
  • step S404 the black box adjustment unit 107 adjusts the black box based on the input and output of the prediction target system measured by the input / output measurement unit 101 and the output predicted by the performance prediction unit 114.
  • the black box adjustment unit 107 learns or approximates the black box so that the output predicted by the performance prediction unit 114 approaches the output of the prediction target system measured by the input / output measurement unit 101. Use to adjust.
  • the black box adjustment unit 107 uses a difference (error) between the output of the prediction target system measured by the input / output measurement unit 101 and the output predicted by the performance prediction unit 114 as an evaluation function. Then, the black box adjustment unit 107 corrects (corrects) the parameters of the black box using reinforcement learning, a genetic algorithm, or the Monte Carlo method so as to improve the evaluation function (the error is reduced).
  • the parameter of the black box is, for example, each synaptic load in the case of the neural network or each coefficient in the case of polynomial approximation.
  • the black box adjustment unit 107 corrects the parameters of the black box using a predetermined method so as to improve the evaluation function.
  • the performance prediction apparatus 11 can adjust the black box using the evaluation function based on the difference between the output of the prediction target system and the predicted output as described above.
  • the performance prediction unit 114 predicts the output using the corrected black box in step S402.
  • the performance prediction apparatus 11 repeats this operation until the black box adjustment unit 107 determines that correction is not necessary.
  • step S405 the application performance model comparison unit 108 reads out the black box determined not to require adjustment in step S403 and the application performance model stored in the application performance model storage unit 102. Then, the application performance model comparison unit 108 compares the behavior (output) of the read black box and the application performance model with respect to the input of the prediction target system measured by the input / output measurement unit 101.
  • the application performance model comparison unit 108 compares the output of the black box with respect to the input of the prediction target system and the output of the application performance model.
  • the application performance model comparison unit 108 may display the comparison result. Alternatively, the application performance model comparison unit 108 may transmit the comparison result to another device (not shown).
  • the performance prediction apparatus 11 of this embodiment has the effect of the first embodiment.
  • the performance prediction apparatus 11 according to the present embodiment further has an effect of providing information related to the behavior of the application performance model with respect to the input of the prediction target system even when the information cannot be correctly predicted by simply correcting the model. .
  • the performance prediction unit 114 of the performance prediction apparatus 11 predicts the output based on the virtualization influence model and the black box, as compared with the performance prediction unit 104 of the first embodiment. Then, the black box adjustment unit 107 adjusts the black box based on the measured input and output and the predicted output. Then, the application performance model comparison unit 108 compares the behavior (output) of the black box and the application performance model. Thus, the performance prediction apparatus 11 uses a black box. For this reason, the performance prediction apparatus 11 can predict the output with respect to the input of the prediction target system even when the application performance model cannot be correctly predicted.
  • the performance prediction apparatus 10 of the first embodiment uses a modified application performance model obtained by modifying an application performance model.
  • the performance prediction device 11 of the second embodiment uses a black box.
  • the application performance model and the black box have different functions to be noticed as models, but models with similar functions may be used.
  • both the application performance model and the black box can be said to be models for predicting the performance of the prediction target system.
  • the application performance model and the black box are collectively referred to as the “performance prediction model”. Therefore, it can be said that the performance prediction unit 104 and the performance prediction unit 114 have the same configuration in that the performance of the performance prediction model is predicted.
  • the application performance model correction unit 105 and the black box adjustment unit 107 can be said to have the same configuration in that the performance prediction model is corrected (adjusted).
  • the corrected portion comparison unit 106 and the application performance model comparison unit 108 have the same configuration in that the corrected portions of the performance prediction model are compared (and displayed).
  • the performance prediction apparatus 10 and the performance prediction apparatus 11 may collect a some structure as already demonstrated.
  • FIG. 9 is a diagram illustrating an example of the configuration of the performance prediction apparatus 12 according to the third embodiment.
  • the performance prediction apparatus 12 of this embodiment includes an input / output measurement unit 101, an application performance model storage unit 102, a virtualization influence model storage unit 103, and a performance prediction model correction comparison unit 109.
  • the performance prediction apparatus 12 of the present embodiment may be realized by a computer apparatus including the CPU 610 shown in FIG.
  • the performance prediction model correction comparison unit 109 corrects the performance prediction model based on the following signals and models, and compares the corrected portions.
  • the performance prediction model correction / comparison unit 109 is not particularly limited with respect to holding the performance prediction model.
  • the performance prediction model correction / comparison unit 109 may hold the performance prediction model or may hold it in a storage unit (not shown). Further, if the performance prediction model correction comparison unit 109 holds the performance prediction model before the prediction, there is no limitation on the method of holding the performance prediction model. For example, the performance prediction model modification comparison unit 109 may create a performance prediction model based on the prediction target system information, the application performance model, and the virtualization influence model. Alternatively, the performance prediction model correction / comparison unit 109 may receive and hold a performance prediction model from a device operated by the prediction target system designer in advance.
  • the performance prediction model correction comparison unit 109 operates as follows.
  • the performance prediction model modification comparison unit 109 predicts the output of the performance prediction model based on the input measured by the input / output measurement unit 101 and at least the virtualization influence model.
  • the performance prediction model correction comparison unit 109 determines whether or not the performance prediction model needs to be corrected (adjusted) based on the predicted output and the output measured by the input / output measurement unit 101.
  • the performance prediction model correction comparison unit 109 corrects the performance prediction model. Then, the performance prediction model correction comparison unit 109 predicts an output based on the corrected performance prediction model. Then, the performance prediction model correction comparison unit 109 repeats this operation until it determines that correction is not necessary.
  • the performance prediction model correction comparison unit 109 compares the corrected portion or output of the corrected performance prediction model with the corresponding portion or output of the application performance model stored in the application performance model storage unit 102. . Furthermore, the performance prediction model correction comparison unit 109 may display or output the comparison result.
  • the performance prediction model correction comparison unit 109 includes functions (hereinafter referred to as a first function) of the performance prediction unit 104, the application performance model correction unit 105, and the correction part comparison unit 106 illustrated in FIG. May be included).
  • the performance prediction model correction / comparison unit 109 may include the functions (hereinafter, referred to as a second function) of the performance prediction unit 114, the black box adjustment unit 107, and the application performance model comparison unit 108 illustrated in FIG. good.
  • the performance prediction model correction / comparison unit 109 may include the first function and the second function described above, and switch the function to be used based on the prediction situation.
  • the performance prediction model correction comparison unit 109 can compare the correction points in more detail than the second function. On the other hand, if the second function is used, the performance prediction model correction comparison unit 109 can predict more cases than the first function.
  • the performance prediction model correction comparison unit 109 first operates using the first function. If it is determined that the application performance model cannot be used for prediction, the performance prediction model correction / comparison unit 109 may perform prediction using the second function.
  • the performance prediction device 12 of the present embodiment can achieve the same effects as the performance prediction device 10 and the performance prediction device 11.
  • the performance prediction model correction comparison unit 109 of the performance prediction device 12 predicts the output of the performance prediction model based on the input of the input / output measurement unit 101, and corrects the performance prediction model based on the measured output and the predicted output. This is because the corrected parts can be compared.
  • the performance prediction device 12 includes the same functions as those in the first embodiment or the second embodiment, and therefore can operate in the same manner as in the first embodiment or the second embodiment. .
  • (Appendix 1) Input / output measuring means for measuring the input and output of the information processing system to be predicted;
  • Application performance model storage means for storing an application performance model that is a model of the performance of an application executed in the information processing system;
  • Virtualization impact model accumulating means for accumulating a virtualization impact model that is a model of the impact on the virtualization performance of the information processing system; Predicting the output of a performance prediction model for predicting the performance of the information processing system with respect to the input measured by the input / output measuring means based on at least the virtualization model, and measuring the predicted output and the input / output measuring means
  • a performance prediction apparatus comprising: a performance prediction model correction comparing unit that corrects the performance prediction model based on the output and compares the corrected performance prediction model with the application performance model.
  • the performance prediction model correction comparison means Performance prediction means for predicting the output of the application performance model as the performance prediction model for the input measured by the input / output measurement means based on the virtualization impact model and the application performance model; Based on the input and output of the information processing system measured by the input / output measuring unit and the output predicted by the performance predicting unit, an application performance model after correction, which is a modification of the application performance model as the performance prediction model, Application performance model correction means to be created, A corrected location comparing means for comparing the corrected location of the application performance model after the correction with the corresponding location of the application performance model before correction accumulated by the application performance model accumulating means,
  • the performance prediction apparatus according to supplementary note 1, characterized by including:
  • the performance prediction model correction comparison means Based on the virtualization influence model and a black box that is a performance prediction model that expresses the performance of an application executed in the information processing system, performance prediction that predicts an output for the input measured by the input / output measurement unit Means, Black box adjustment means for adjusting the black box based on the input and output of the information processing system measured by the input / output measurement means, and the output predicted by the performance prediction means;
  • Application performance model comparing means for comparing an output with respect to an input measured by the input / output means in the black box adjusted by the black box adjusting means and the application performance model;
  • the performance prediction apparatus according to supplementary note 1, characterized by including:
  • the performance prediction model correction comparison means The correction of the performance prediction model is repeated until the difference between the predicted output and the measured output is less than a predetermined value, until the change in the difference is less than a predetermined value, or until a predetermined number of times.
  • the performance prediction apparatus according to any one of 1 to appendix 3.
  • (Appendix 5) Measure the input and output of the information processing system to be predicted, Accumulating an application performance model that is a performance model of an application executed in the information processing system; Storing a virtualization impact model that is a model of the impact on the virtualization performance of the information processing system; Predicting the output of a performance prediction model for predicting the performance of the information processing system with respect to the measured input based on at least the virtualization model; Modify the performance prediction model based on the predicted output and the measured output, A performance prediction method for comparing the performance prediction model with the application performance model.
  • (Appendix 6) A process of measuring the input and output of the information processing system to be predicted; A process of storing an application performance model that is a model of the performance of an application executed in the information processing system; A process of storing a virtualization impact model that is a model of the impact on the virtualization performance of the information processing system; A process of predicting an output of a performance prediction model for predicting performance of the information processing system with respect to the measured input based on at least the virtualization model; Processing for correcting the performance prediction model based on the predicted output and the measured output; A computer-readable recording medium recorded with a program for causing a computer to execute processing for comparing the performance prediction model and the application performance model.
  • Performance prediction unit 301 Queue 302 Queue 303 Queue 610 CPU 620 ROM 630 RAM 640 Internal storage device 650 IOC 660 Input device 670 Display device 680 NIC 700 storage media

Landscapes

  • Engineering & Computer Science (AREA)
  • General Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Bioinformatics & Computational Biology (AREA)
  • Evolutionary Biology (AREA)
  • Computer Hardware Design (AREA)
  • Life Sciences & Earth Sciences (AREA)
  • Quality & Reliability (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Bioinformatics & Cheminformatics (AREA)
  • Debugging And Monitoring (AREA)
  • Stored Programmes (AREA)

Abstract

 性能予測モデルの修正に関する適切な情報を提供できる。 本発明の性能予測装置は、予測対象である情報処理システムの入力及び出力を計測する入出力計測手段と、情報処理システムで実行されるアプリケーションのアプリケーション性能モデルを蓄積するアプリケーション性能モデル蓄積手段と、情報処理システムの仮想化の性能への影響の仮想化影響モデルを蓄積する仮想化影響モデル蓄積手段と、少なくとも仮想化モデルを基に入出力計測手段が計測した入力に対する情報処理システムの性能を予測するための性能予測モデルの出力を予測し、予測した出力と入出力計測手段が計測した出力とを基に性能予測モデルを修正し、修正後の性能予測モデルとアプリケーション性能モデルとを比較する性能予測モデル修正比較手段とを含む。

Description

性能予測装置及び性能予測方法
 本発明は、性能予測に関し、特に、仮想化する情報処理システムの性能予測に関する。
 仮想化技術のために発生するオーバーヘッドは、情報処理システムの性能に影響を及ぼす。そのため、仮想化しようとする情報処理システムにとって、実環境での運用前に、仮想化に伴うシステムの性能の予測が重要である。
 関連する情報処理システムの性能予測装置は、例えば、まず、システムの各構成要素の設計情報を基に、性能予測モデルを作成する。そして、性能予測装置は、仮想化のための仮想マシンモニタ毎のオーバーヘッドを含んだ性能計算式を用いて、性能予測モデルのオーバーヘッドを考慮する(例えば、特許文献1を参照)。なお、性能計算式は、例えば、データベースに記憶されている。
 別の関連する性能予測装置は、ストレージ仮想化装置の構成要素のモデル情報を基に、ストレージシステムの性能予測モデルを作成する(例えば、特許文献2を参照)。
 また、別の関連する性能予測装置は、仮想化技術のために発生するオーバーヘッドを含んだ性能評価関数及びモデルを用いて、仮想化されたシステムの性能予測値を算出する(例えば、特許文献3を参照)。
特開2012-146015号公報 特開2006-146354号公報 特開2010-009160号公報
 特許文献1~3に記載の性能予測装置は、情報処理システムの各構成要素の設計情報及び動作の詳細を基に、性能モデルを作成する。
 しかしながら、システムの詳細が明らかではない場合及び/又はシステムが複雑でモデル化に時間が掛かる場合、特許文献1~3に記載の性能予測装置は、設計情報及び動作の詳細を基にした精緻な性能モデルを作成できない。
 このような場合、例えば、関連する性能予想装置は、仮想化に移行する前のシステムの実際の稼働状況と、特定のリソース(例えば、CPU(Central Processing Unit)又はディスク装置)に負荷を掛けて性能を測るベンチマークソフトの測定結果とを比較する。そして、関連する性能予測装置は、比較結果を基に、動作を推定した性能モデルを作成する。そして、関連する性能予測装置は、その性能モデルを用いて、仮想化に移行した後のシステムの性能を予測する。
 上記の推定から作成した性能モデルは、予測を改善するために、より精度の良いモデルへの修正が望ましい。この修正のためのフィードバックとして、予測結果と実際の仮想化移行後の性能の間の誤差が、重要である。しかしながら、上記の誤差は、性能モデルの誤り(誤差)だけではなく、仮想化の影響を含む。特許文献1~3に記載の性能予測装置は、上記誤差から仮想化の影響を除いて、性能モデルの誤りを抜き出せないという問題点があった。すなわち、特許文献1~3に記載の性能予測装置は、性能モデルの誤差が分からないという問題点があった。あるいは、特許文献1~3は、モデル作成指針への適切なフィードバックのための情報を提供できないという問題点があった。
 本発明の目的は、上述の課題を解決し、性能モデルの修正に関する適切な情報を提供できる性能予測装置及び性能予測方法を提供することにある。
 上記目的を達成するため、本発明の一態様における性能予測装置は、予測対象である情報処理システムの入力及び出力を計測する入出力計測手段と、前記情報処理システムで実行されるアプリケーションの性能のモデルであるアプリケーション性能モデルを蓄積するアプリケーション性能モデル蓄積手段と、前記情報処理システムの仮想化の性能への影響のモデルである仮想化影響モデルを蓄積する仮想化影響モデル蓄積手段と、少なくとも前記仮想化モデルを基に前記入出力計測手段が計測した入力に対する前記情報処理システムの性能を予測するための性能予測モデルの出力を予測し、前記予測した出力と前記入出力計測手段が計測した出力とを基に前記性能予測モデルを修正し、前記修正後の性能予測モデルと前記アプリケーション性能モデルとを比較する性能予測モデル修正比較手段とを含む。
 また、本発明の一態様における性能予測方法は、予測対象である情報処理システムの入力及び出力を計測し、前記情報処理システムで実行されるアプリケーションの性能のモデルであるアプリケーション性能モデルを蓄積し、前記情報処理システムの仮想化の性能への影響のモデルである仮想化影響モデルを蓄積し、少なくとも前記仮想化モデルを基に前記計測した入力に対する前記情報処理システムの性能を予測するための性能予測モデルの出力を予測し、前記予測した出力と前記計測した出力とを基に前記性能予測モデルを修正し、前記性能予測モデルと前記アプリケーション性能モデルとを比較する。
 また、本発明の一態様におけるコンピュータ読み取り可能にプログラムを記録した記録媒体は、予測対象である情報処理システムの入力及び出力を計測する処理と、前記情報処理システムで実行されるアプリケーションの性能のモデルであるアプリケーション性能モデルを蓄積する処理と、前記情報処理システムの仮想化の性能への影響のモデルである仮想化影響モデルを蓄積する処理と、少なくとも前記仮想化モデルを基に前記計測した入力に対する前記情報処理システムの性能を予測するための性能予測モデルの出力を予測する処理と、前記予測した出力と前記計測した出力とを基に前記性能予測モデルを修正する処理と、前記性能予測モデルと前記アプリケーション性能モデルとを比較する処理とをコンピュータに実行させるプログラムを記憶する。
 本発明によれば、性能モデルの修正に関する情報を適切に提供できる。
図1は、本発明における第1の実施形態に係る性能予測装置の構成の一例を示すブロック図である。 図2は、第1の実施形態に係る処理の一例を示すフローチャートである。 図3は、第1の実施形態で用いるアプリケーション性能モデルの一例を示す説明図である。 図4は、第1の実施形態で用いるアプリケーション性能モデルの一例を示す説明図である。 図5は、第1の実施形態で用いるアプリケーション性能モデルの一例を示す説明図である。 図6は、第1の実施形態の性能予測装置の別の構成の一例を示すブロック図である。 図7は、第2の実施形態に係る性能予測装置の構成の一例を示すブロック図である。 図8は、第2の実施形態に係る処理の一例を示すフローチャートである。 図9は、第3の実施形態に係る性能予測装置の構成の一例を示すブロック図である。
 以下に、図面を参照して、本発明の実施形態について例示的に説明する。
 ただし、以下の説明において、図面に記載された構成要素は、単なる例示であり、本発明の技術範囲をそれらに限定する趣旨のものではない。
 また、各図面において同様の構成には同じ番号を付し、その繰り返しの説明を省略する場合がある。
 [第1の実施形態]
 図1は、本発明における第1の実施形態に係る性能予測装置10の機能構成の一例を示すブロック図である。
 性能予測装置10は、入出力計測部101と、アプリケーション性能モデル蓄積部102と、仮想化影響モデル蓄積部103と、性能予測部104と、アプリケーション性能モデル修正部105と、修正箇所比較部106とを含む。
 入出力計測部101は、図示しない性能を予測する対象である情報処理システム(以下、「予測対象システム」と言う)の入力及び出力を計測する。
 ここで、本実施形態の性能予測装置10の予測対象システムへのアクセス手段は、特に制限はない。アクセス手段は、性能予測装置10が予測対象システムと通信できれば良く、例えば、インターネット、又は、LAN(Local Area Network)でも良い。
 また、性能予測装置10は、直接的に予測対象システムの入力及び出力を計測しても良く、測定器などを介して間接的に計測しても良い。
 アプリケーション性能モデル蓄積部102は、予測対象システムで実行されるアプリケーションの性能のモデル(アプリケーション性能モデル)を蓄積する。アプリケーション性能モデル蓄積部102は、モデルの蓄積手法に特に制限はない。例えば、アプリケーション性能モデル蓄積部102は、モデルの蓄積するデータベース(以下、「DB」とする。)でも良い。
 なお、本実施形態の性能予測装置10が扱うアプリケーション性能モデルは、特に制限はない。例えば、アプリケーション性能モデルは、アプリケーションの各構成要素の動作を模倣した待ち行列又はペトリネットを用いたモデルでも良い。あるいは、アプリケーション性能モデルは、受け取った入力に対して、予め定められた手順に則った計算又はシミュレーションを基に出力が決定されるモデルで良い。
 ここで、アプリケーション性能モデルの入力とは、例えば、単位時間内に予測対象システムが処理するリクエスト数である。また、アプリケーション性能モデルの出力とは、例えば、予測対象システムのスループット、応答時間、又は、リソース使用率である。
 ただし、アプリケーション性能モデルの入力及び出力は、これらに限定されない。例えば、独立変数と従属変数の関係としてモデルを記述する場合、アプリケーション性能モデルは、その独立変数を入力とし、従属変数を出力としても良い。
 また、アプリケーション性能モデル蓄積部102は、予測の前に予めアプリケーション性能モデルを蓄積しておけば、モデルの蓄積の方法に特に制限はない。例えば、予め、利用者が、アプリケーション性能モデル蓄積部102に、モデルを蓄積しても良い。あるいは、アプリケーション性能モデル蓄積部102は、予め、予測対象システムの情報を基に、所定のDBからアプリケーション性能モデルを取り出し、蓄積しても良い。
 また、蓄積するアプリケーション性能モデルの作成についても、特に制限はない。例えば、アプリケーション性能モデル蓄積部102は、予測対象システムの設計者が、設計情報を基に作成したモデルを蓄積しても良い。あるいは、過去に作成したアプリケーション性能モデルがある場合、アプリケーション性能モデル蓄積部102は、そのモデルを参照して、アプリケーション性能モデルを作成しても良い。
 仮想化影響モデル蓄積部103は、予測対象システムの仮想化に基づく、性能への影響のモデル(仮想化影響モデル)を蓄積する。仮想化影響モデル蓄積部103は、モデルの蓄積手法に特に制限はない。例えば、仮想化影響モデル蓄積部103は、モデルを蓄積するDBでも良い。あるいは、仮想化影響モデル蓄積部103は、仮想化を実施する利用者が作成した仮想化モデルを蓄積しても良い。
 ここで、仮想化影響モデルは、アプリケーション性能モデルの各構成要素、又は、アプリケーション性能モデルの出力に、仮想化の影響を加えたモデルである。つまり、仮想化影響モデルは、仮想化の影響を基に、アプリケーション性能モデルを修正(変更)したモデルである。
 例えば、仮想化影響モデルは、アプリケーション性能モデルの各構成要素の1リクエスト当たりの処理時間又はリソース使用率に、仮想化のオーバーヘッドのための増加量を加えたモデルである。
 あるいは、例えば、ある構成要素のディスクの使用を仮想化する場合、仮想化のエミュレーションのために、ディスクだけでなくCPUが、使用される。そのため、仮想化影響モデルは、ディスクに加え、CPUが使用されるようにアプリケーション性能モデルを変更したモデルである。
 また、仮想化影響モデルは、仮想マシンモニタの動作を明示的に模倣したモデルでも良いし、非仮想化環境と仮想化環境での性能の違いを機械学習でモデル化したモデルでも良い。
 性能予測部104は、予測対象システムに対応するアプリケーション性能モデルを、アプリケーション性能モデル蓄積部102から受け取る。また、性能予測部104は、予測対象システムに対応する仮想化影響モデルを、仮想化影響モデル蓄積部103から受け取る。そして、性能予測部104は、仮想化影響モデルとアプリケーション性能モデルとを基に、入出力計測部101が計測した入力に対して出力を予測(算出)する。
 アプリケーション性能モデル修正部105は、入出力計測部101が計測した予測対象システムの入力及び出力、並びに、性能予測部104が予測した出力を基に、モデルの修正が必要か否かを判断する。そして、修正が必要と判断した場合、アプリケーション性能モデル修正部105は、アプリケーション性能モデルを修正する。ここで、入出力計測部101が計測した出力と性能予測部104が予測した出力との差(誤差)は、仮想化の影響も含んだシステム全体の性能の予測からの誤差である。従って、アプリケーション性能モデル修正部105は、仮想化の影響も含んだシステム全体の性能の予測からの誤差を基に、アプリケーション性能モデルを修正する。
 修正箇所比較部106は、アプリケーション性能モデル修正部105が修正した修正後のアプリケーション性能モデルにおける修正箇所と、アプリケーション性能モデル蓄積部102が蓄積している修正前のアプリケーション性能モデルの対応する箇所とを比較する。この比較結果は、アプリケーション性能モデルの修正に関する情報である。つまり、修正箇所比較部106は、モデルの誤差を基に、修正した修正箇所の比較結果を算出できる。
 なお、修正箇所比較部106は、比較結果を表示しても良く、図示しない他の装置に比較結果を出力しても良い。
 次に、性能予測装置10の動作について、図面を参照して説明する。
 図2は、性能予測装置10の処理の一例を示すフローチャートである。
 アプリケーション性能モデル蓄積部102は、予め、アプリケーション性能モデルを蓄積する。また、仮想化影響モデル蓄積部103は、予め、仮想化影響モデルを蓄積する。
 入出力計測部101は、予測対象システムの入力及び出力を計測する(ステップS201)。
 次に、性能予測部104は、予測対象システムに対応する仮想化影響モデルと、アプリケーション性能モデルとを基に、入出力計測部101が計測した入力に対する出力を予測する(ステップS202)。
 次に、アプリケーション性能モデル修正部105は、アプリケーション性能モデルの修正が必要か否かを判断する(ステップS203)。
 アプリケーション性能モデル修正部105が、修正不要と判断すると(ステップS203、Yes)、性能予測装置10は、ステップS205に処理を移動する。
 アプリケーション性能モデル修正部105が、修正必要と判断すると(ステップS203、No)、性能予測装置10は、ステップS204に処理を移動する。
 ここで、アプリケーション性能モデル修正部105は、アプリケーション性能モデルの修正が必要でないと判断する条件を、予測対象システムに合わせて設定すれば良い。例えば、アプリケーション性能モデル修正部105は、次の条件のいずれかを用いればよい。
 条件1-1:入出力計測部101が計測した予測対象システムの出力と性能予測部104が予測した出力との誤差が、予め定められた閾値未満である。
 条件1-2:入出力計測部101が計測した予測対象システムの出力と性能予測部104が予測した出力との誤差が、ある一定回数の修正を経ても変化しない。(すなわち、修正が平衡状態にあるとみなせる。)
 条件1-3:予め定められた回数修正した。
 ステップS204において、アプリケーション性能モデル修正部105は、入出力計測部101が計測した予測対象システムの入力及び出力、並びに、性能予測部104が予測した出力を基に、アプリケーション性能モデルを修正する。
 具体的には、アプリケーション性能モデル修正部105は、性能予測部104が予測した出力が、入出力計測部101が計測した予測対象システムの出力に近づくように、アプリケーション性能モデルを修正する。アプリケーション性能モデル修正部105は、アプリケーション性能モデルの修正として用いる手法に、特に制限はない。例えば、アプリケーション性能モデル修正部105は、学習又は近似手法を用いても良い。
 例えば、具体的な一例を説明すると次のようになる。
 アプリケーション性能モデル修正部105は、評価関数として、入出力計測部101が計測した予測対象システムの出力と性能予測部104が予測する出力との差(誤差)を用いる。そして、アプリケーション性能モデル修正部105は、評価関数を改善する(ここでは、誤差が小さくなる)ように、強化学習、遺伝的アルゴリズム、又はモンテカルロ法を用いて、アプリケーション性能モデルのパラメータ(例えば、待ち行列の場合の各構成要素の1リクエスト当たりの処理時間)を修正する。
 つまり、アプリケーション性能モデル修正部105は、評価関数を改善するように、所定の手法を用いて、アプリケーション性能モデルのパラメータを修正する。
 図3は、待ち行列を用いたアプリケーション性能モデルの一例を示す図である。
 図3に示すモデルに入力されたリクエストは、確率pで待ち行列301に、確率pで待ち行列302に、確率pで待ち行列303に、振り分けられる。待ち行列301~303の処理時間は、それぞれD、D、Dである。アプリケーション性能モデル修正部105は、これらの確率p~p及び処理時間D~Dの値を修正する。
 図4及び図5は、別の修正を説明するためのアプリケーション性能モデルの一例である。
 アプリケーション性能モデル修正部105は、処理する待ち行列を追加及び処理の振り分け経路を変更して、図4に示す待ち行列を用いたアプリケーション性能モデルを、図5に示すアプリケーション性能モデルに修正する。なお、この説明において、アプリケーション性能モデル修正部105は、構成要素を追加しているが、削除又は変更しても良い。
 仮想化環境では、仮想化の影響のために、関連する性能予測装置は、直接的には、アプリケーション性能モデルの入出力に対応する予測対象システムの部分的な要素を計測できない。しかし、上記のように、本実施形態の性能予測装置10は、予測対象システムの出力と予測した出力との差に基づく評価関数を用いて、アプリケーション性能モデルを修正できる。
 ステップS204でアプリケーション性能モデル修正部105が、アプリケーション性能モデルを修正した後、性能予測部104は、ステップS202において、修正後のアプリケーション性能モデルを用いて、出力を再び予測する。
 性能予測装置10は、アプリケーション性能モデル修正部105が、修正の必要がないと判断するまで、この動作を繰り返す。
 修正が必要ない場合、修正箇所比較部106は、ステップS204で修正した修正後のアプリケーション性能モデルの修正箇所と、アプリケーション性能モデル蓄積部102が蓄積している修正前のアプリケーション性能モデルの対応する箇所とを比較する(ステップS205)。
 具体的に説明すると、修正箇所比較部106は、例えば、次のように動作する。
 図3を用いて説明した処理の振り分けの確率又は待ち行列の処理時間のパラメータを修正した場合、修正箇所比較部106は、修正したパラメータの修正前の値と修正後の値とを比較する。また、図4と図5を用いて説明した処理経路を変更又は処理する待ち行列を追加・変更・削除した場合、修正箇所比較部106は、変更・追加・削除した箇所について修正前と修正後とを比較する。
 なお、修正箇所比較部106は、比較結果を表示しても良い。あるいは、修正箇所比較部106は、図示しない他の装置に、比較結果を出力しても良い。
 次に、本実施形態の効果について説明する。
 上記のとおり、本実施形態の性能予測装置10は、仮想化の影響も含んだシステム全体の性能の予測からの誤差を算出し、その誤差を基に、アプリケーション性能モデルの修正に関する情報を提供できる効果を得ることができる。
 その理由は、次のとおりである。
 本実施形態の性能予測装置10の性能予測部104は、予測対象システムの入力を基に、アプリケーション性能モデルの出力を予測する。そして、アプリケーション性能モデル修正部105は、予測対象システムの入力及び出力、並びに、性能予測部104が予測した出力との誤差を求める。つまり、性能予測装置10は、仮想化の影響を含んだシステム全体の性能の予測からの誤差を算出する。そして、性能予測装置10のアプリケーション性能モデル修正部105は、誤差を基に、アプリケーション性能モデルを修正する。そして、性能予測装置10の修正箇所比較部106は、修正したアプリケーション性能モデルの修正箇所と、修正前のアプリケーション性能モデルの対応する箇所とを比較する。そして、性能予測装置10の修正箇所比較部106は、比較結果を表示又は出力するためである。
 なお、予測対象システム設計者は、例えば、性能予測装置10が提供する情報をフィードバックして、モデルを容易に改善できる。
 <変形例>
 性能予測装置10の構成は、これまで説明した構成に限らない。
 例えば、性能予測装置10は、アプリケーション性能モデル蓄積部102又は仮想化影響モデル蓄積部103を、ネットワーク又はバスを介して接続する外部の記憶装置としても良い。
 また、性能予測装置10は、各構成を複数の構成に分けても良い。
 例えば、修正箇所比較部106は、修正箇所を比較する構成と比較結果を表示する構成とに分けても良い。
 また、性能予測装置10は、複数の構成を1つの構成としても良い。
 例えば、性能予測装置10は、CPU(Central Processing Unit)と、ROM(Read Only Memory)と、RAM(Random Access Memory)と含むコンピュータ装置として実現しても良い。性能予測装置10は、上記の構成に加え、さらに、入出力接続回路(IOC:Input / Output Circuit)と、ネットワークインターフェース回路(NIC:Network Interface Circuit)とを含むコンピュータ装置として実現しても良い。
 図6は、本実施形態の性能予測装置10の別の構成である性能予測装置60の構成の一例を示すブロック図である。
 性能予測装置60は、CPU610と、ROM620と、RAM630と、内部記憶装置640と、IOC650と、NIC680とを含み、コンピュータを構成している。
 CPU610は、ROM620からプログラムを読み込む。そして、CPU610は、読み込んだプログラムに基づいて、RAM630と、内部記憶装置640と、IOC650と、NIC680とを制御する。そして、CPU610は、これらの構成を制御し、図1に示す性能予測装置10の各構成としての機能を実現する。各構成とは、入出力計測部101と、アプリケーション性能モデル蓄積部102と、仮想化影響モデル蓄積部103のデータ書き込みと読み出しの制御部分と、性能予測部104と、アプリケーション性能モデル修正部105と、修正箇所比較部106とである。CPU610は、各機能を実現する際に、RAM630をプログラムの一時記憶として使用する。
 また、CPU610は、コンピュータで読み取り可能にプログラムを記憶した記憶媒体700が含むプログラムを、図示しない記憶媒体読み取り装置を用いてRAM830に読み込んで、動作しても良い。このように、CPU810は、ROM810又は記憶媒体890のような不揮発性メモリ(non-transitory memory)を用いても良い、RAM830のような揮発性メモリ(transitory memory)を用いても良い。
 あるいは、CPU610は、NIC680を介して、図示しない外部の装置からプログラムを受け取っても良い。
 ROM620は、CPU610が実行するプログラム及び固定的なデータを記憶する。ROM620は、例えば、P-ROM(Programmable-ROM)又はフラッシュROMである。
 RAM630は、CPU610が実行するプログラム及びデータを一時的に記憶する。RAM630は、例えば、D-RAM(Dynamic-RAM)である。
 内部記憶装置640は、性能予測装置60が長期的に保存するデータ及び/又はプログラムを記憶する。また、内部記憶装置640は、CPU610の一時記憶装置として動作しても良い。さらに、内部記憶装置640は、アプリケーション性能モデル蓄積部102又は仮想化影響モデル蓄積部103として動作しても良い。内部記憶装置640は、例えば、ハードディスク装置、光磁気ディスク装置、SSD(Solid State Drive)又はディスクアレイ装置である。
 IOC650は、CPU610と、入力機器660及び表示機器670とのデータを仲介する。IOC650は、例えば、IOインターフェースカード又はUSB(Universal Serial Bus)カードである。
 入力機器660は、性能予測装置60の操作者からの入力指示を受け取る入力部である。入力機器660は、例えば、キーボード、マウス又はタッチパネルである。
 表示機器670は、性能予測装置60の表示部である。表示機器670は、例えば、液晶ディスプレイである。表示機器670は、修正箇所比較部106の一部として、比較結果を表示しても良い。
 NIC680は、ネットワークを介した予測対象システム及び他の装置とのデータのやり取りを中継する。NIC680は、例えば、LANカードである。性能予測装置60は、修正箇所比較部106の比較結果を、NIC680を介して他の装置に出力しても良い。
 このように構成された性能予測装置60は、性能予測装置10と同様の効果を得ることができる。
 その理由は、性能予測装置60のCPU610が、プログラムに基づいて性能予測装置10と同様の機能を実現できるためである。
 [第2の実施形態]
 図7は、本発明の第2の実施形態に係る性能予測装置11の構成の一例を示すブロック図である。
 性能予測装置11は、入出力計測部101と、アプリケーション性能モデル蓄積部102と、仮想化影響モデル蓄積部103と、性能予測部114と、ブラックボックス調整部107と、アプリケーション性能モデル比較部108とを含む。
 本実施形態の図面において、第1の実施形態と同様の構成及び動作は、同じ符号を付し、その詳しい説明を省略する。
 そのため、以下の説明では、本実施形態の特徴となる、第1の実施形態と異なる部分について詳細に説明する。
 なお、本実施形態の性能予測装置11は、性能予測装置10と同様に、図6に示すCPU610などを含むコンピュータ装置で実現されても良い。
 性能予測部114は、仮想化影響モデル蓄積部103が蓄積する予測対象システムの仮想化影響モデルと、ブラックボックスとを基に、入出力計測部101が計測した入力に対するブラックボックスの出力を予測する。
 ここで、ブラックボックスとは、情報処理システムで実行されるアプリケーションの性能を表現するものである。そして、ブラックボックスは、学習又は回帰などを基に、入力に対して適当な出力を決定することができる仕組み(モデル)である。
 例えば、ブラックボックスは、ニューラルネットワーク又は隠れマルコフモデルを用いても良い。あるいは、ブラックボックスは、多項式関数を用いた近似又はノンパラメトリック回帰を用いても良い。
 また、ブラックボックスのパラメータ(例えば、ニューラルネットワークの各シナプス荷重又は多項式近似の各係数)は、初期値としてランダムな値が与えられても良い。あるいは、ブラックボックスのパラメータは、予め、表現するアプリケーションの振る舞いを模倣するように値が与えられても良い。
 なお、アプリケーション性能モデルとブラックボックスは、同様の機能を備えたモデルでも良い。ただ、アプリケーション性能モデルとブラックボックスは、注目する機能が異なる。
 具体的に説明すると、次のようになる。
 アプリケーション性能モデルは、アプリケーションの各構成要素の動作を模倣など、予め動作が定義されたモデルである。つまり、アプリケーション性能モデルは、アプリケーションの動作を基にしたモデルである。
 これに対し、ブラックボックスは、入力に対して適当な出力を決定するように動作が変化する。つまり、ブラックボックスは、入力と出力との関係を基にしたモデルである。
 なお、本実施形態の性能予測装置11は、ブラックボックスを保持する構成を特に限定しない。例えば、図示しない記憶部が、ブラックボックスを記憶しても良い。ただし、以下では、ブラックボックス調整部107が、ブラックボックスを保持するとして説明する。
 ブラックボックス調整部107は、入出力計測部101が計測した予測対象システムの入力及び出力、並びに、性能予測部104が予測した出力を基に、ブラックボックスの調整(修正)の要否を判定する。そして、ブラックボックス調整部107は、調整が必要な場合、ブラックボックスを調整する。
 アプリケーション性能モデル比較部108は、アプリケーション性能モデル蓄積部102が蓄積するアプリケーション性能モデルを読み出す。アプリケーション性能モデル比較部108は、調整されたブラックボックスと、読み出したアプリケーション性能モデルとについて、入出力計測部101が計測した予測対象システムの入力に対する振る舞い(出力)を比較する。
 なお、ブラックボックスは、入力と出力との関係を基にしたモデルである。ブラックボックスの調整は、出力の調整である。そのため、本実施形態の出力の比較は、第1の実施形態の修正箇所の比較に相当する。
 次に、性能予測装置11の動作について、図面を参照して説明する。
 図8は、性能予測装置11の処理の一例を示すフローチャートである。なお、図8において、第1の実施形態と同様の処理には同じ番号を付し、その詳細な説明を省略する。
 ステップS402において、性能予測部114は、次の2つを基に、入出力計測部101が計測した入力に対するブラックボックスの出力を予測する。
 (1)仮想化影響モデル蓄積部103が蓄積している予測対象システムに対応する仮想化影響モデル
 (2)ブラックボックス調整部107が保持する予測対象システムに対応するブラックボックス
 ステップS403において、ブラックボックス調整部107は、ブラックボックスの調整の要否を判断する。そして、ブラックボックス調整部107が、調整不要と判断すると(ステップS403、No)、性能予測装置11は、ステップS405に処理を移動する。ブラックボックス調整部107が、調整必要と判断すると(ステップS403、Yes)、性能予測装置11は、ステップS404に処理を移動する。
 ここで、ブラックボックス調整部107は、ブラックボックスの調整を要しないと判断する条件を、予測対象システムに合わせて設定すれば良い。例えば、ブラックボックス調整部107は、次の条件のいずれかを用いればよい。
 条件2-1:入出力計測部101が計測した予測対象システムの出力と、性能予測部114が予測した出力とを比較し、その差(誤差)が、予め定められた閾値未満である。(すなわち、ブラックボックスを含む予測対象システムのモデルが、予め定められた精度内で予測対象システムの振る舞いを予測できている。)
 条件2-2:入出力計測部101が計測した予測対象システムの出力と、性能予測部114が予測した出力との誤差が、ある一定回数の調整を経ても変化しない。(すなわち、調整が平衡状態にあるとみなせる。)
 条件2-3:予め定められた回数調整した。
 ステップS404において、ブラックボックス調整部107は、入出力計測部101が計測した予測対象システムの入力及び出力、並びに、性能予測部114が予測した出力を基に、ブラックボックスを調整する。
 具体的には、ブラックボックス調整部107は、性能予測部114が予測した出力を、入出力計測部101が計測した予測対象システムの出力に近づけるように、ブラックボックスを学習、又は、近似などを用いて調整する。
 例えば、ブラックボックス調整部107は、評価関数として、入出力計測部101が計測した予測対象システムの出力と性能予測部114が予測した出力の差(誤差)を用いる。そして、ブラックボックス調整部107は、評価関数を改善する(誤差が小さくなる)ように、強化学習、遺伝的アルゴリズム、又はモンテカルロ法を用いて、ブラックボックスのパラメータを補正(修正)する。ここで、ブラックボックスのパラメータは、例えば、ニューラルネットワークの場合の各シナプス荷重、又は、多項式近似の場合の各係数である。
 つまり、ブラックボックス調整部107は、評価関数を改善するように、所定の手法を用いて、ブラックボックスのパラメータを補正する。
 仮想化環境では、仮想化の影響のために、関連する性能を測定する装置は、ブラックボックスの入出力に対応する予測対象システムの部分的な要素を直接計測できない。しかし、本実施形態の性能予測装置11は、上記のように、予測対象システムの出力と予測した出力との差を基にした評価関数を用いて、ブラックボックスを調整できる。
 ステップS404でブラックボックス調整部107がブラックボックスを調整した後、性能予測部114は、ステップS402において、補正後のブラックボックスを用いて出力を予測する。
 性能予測装置11は、ブラックボックス調整部107が、補正の必要がないと判断するまで、この動作を繰り返す。
 ステップS405において、アプリケーション性能モデル比較部108は、ステップS403で調整が必要とないと判断されたブラックボックスと、アプリケーション性能モデル蓄積部102が蓄積しているアプリケーション性能モデルとを読み出す。そして、アプリケーション性能モデル比較部108は、読み出したブラックボックスと、アプリケーション性能モデルとの、入出力計測部101が計測した予測対象システムの入力に対する振る舞い(出力)を比較する。
 具体的には、アプリケーション性能モデル比較部108は、予測対象システムの入力に対するブラックボックスの出力とアプリケーション性能モデルの出力とを比較する。
 アプリケーション性能モデル比較部108は、比較結果を表示しても良い。あるいは、アプリケーション性能モデル比較部108は、比較結果を図示しない他の装置に送信しても良い。
 次に、第2の実施形態の効果について説明する。
 本実施形態の性能予測装置11は、第1の実施形態の効果を奏する。本実施形態の性能予測装置11は、さらに、予測対象システムの入力に対するアプリケーション性能モデルの本来あるべき振る舞いに関する情報を、当該モデルの単なる修正だけでは正しく予測できない場合であっても提供できる効果を奏する。
 その理由は、次のとおりである。
 本実施形態に係る性能予測装置11の性能予測部114は、第1の実施形態の性能予測部104と比べ、仮想化影響モデルとブラックボックスとを基に出力を予測する。そして、ブラックボックス調整部107は、計測した入力及び出力並びに予測した出力を基に、ブラックボックスを調整する。そして、アプリケーション性能モデル比較部108は、ブラックボックスとアプリケーション性能モデルの振る舞い(出力)を比較する。このように性能予測装置11は、ブラックボックスを用いる。そのため、性能予測装置11は、アプリケーション性能モデルの修正では正しく予測できないような場合でも、予測対象システムの入力に対しての出力を予測できるからである。
 [第3の実施形態]
 第1の実施形態の性能予測装置10は、アプリケーション性能モデルを修正した修正後のアプリケーション性能モデルを用いた。一方、第2の実施形態の性能予測装置11は、ブラックボックスを用いた。
 既に説明したとおり、アプリケーション性能モデルとブラックボックスは、モデルとして注目する機能が異なるが、同様の機能を備えたモデルでも良い。
 つまり、アプリケーション性能モデル及びブラックボックスは、どちらも、予測対象システムの性能を予測するためのモデルと言える。(以下、アプリケーション性能モデルとブラックボックスをまとめて、「性能予測モデル」と言う。)
 そのため、性能予測部104及び性能予測部114は、性能予測モデルの性能を予測する点で同様の構成と言える。
 また、アプリケーション性能モデル修正部105及びブラックボックス調整部107は、性能予測モデルを修正(調整)する点で同様の構成と言える。
 さらに、修正箇所比較部106とアプリケーション性能モデル比較部108は、性能予測モデルの修正箇所を比較(及び表示)する点で同様の構成といえる。
 また、性能予測装置10及び性能予測装置11は、既に説明したとおり、複数の構成をまとめても良い。
 そこで、本発明の最小構成である第3の実施形態に係る性能予測装置12について、図面を参照して説明する。
 図9は、第3の実施形態に係る性能予測装置12の構成の一例を示す図である。
 本実施形態の性能予測装置12は、入出力計測部101と、アプリケーション性能モデル蓄積部102と、仮想化影響モデル蓄積部103と、性能予測モデル修正比較部109とを含む。
 なお、本実施形態の性能予測装置12は、性能予測装置10と同様に、図6に示すCPU610などを含むコンピュータ装置で実現されても良い。
 図9において、第1の実施形態及び第2の実施形態と同様に構成には同じ番号を付し、その詳細な説明を省略する。
 性能予測モデル修正比較部109は、次に示す信号とモデルを基に、性能予測モデルを修正し、修正箇所を比較する。
 (1)入出力計測部101が計測した予測対象システムの入力及び出力
 (2)アプリケーション性能モデル蓄積部102が蓄積するアプリケーション性能モデル
 (3)仮想化影響モデル蓄積部103が蓄積する仮想化影響モデル
 なお、性能予測モデル修正比較部109は、性能予測モデルの保持に関して特に制限はない。
 例えば、性能予測モデル修正比較部109は、性能予測モデルを保持しても良く、図示しない記憶部に保持しても良い。また、性能予測モデル修正比較部109は、予測の前に、性能予測モデルを保持すれば、性能予測モデルの保持の手法についても制限はない。例えば、性能予測モデル修正比較部109は、予測対象システムの情報、アプリケーション性能モデル及び仮想化影響モデルを基に、性能予測モデルを作成しても良い。あるいは、性能予測モデル修正比較部109は、予め、予測対象システム設計者の操作する装置から、性能予測モデルを受け取って、保持しても良い。
 以下の説明において、性能予測モデル修正比較部109は、既に、性能予測モデルを保持しているとする。
 具体的には、性能予測モデル修正比較部109は、次のように動作する。
 まず、性能予測モデル修正比較部109は、入出力計測部101が計測した入力と少なくとも仮想化影響モデルとを基に、性能予測モデルの出力を予測する。
 次に、性能予測モデル修正比較部109は、予測した出力と、入出力計測部101が計測した出力とを基に、性能予測モデルを修正(調整)の要否を判定する。
 修正が必要な場合、性能予測モデル修正比較部109は、性能予測モデルを修正する。そして、性能予測モデル修正比較部109は、修正後の性能予測モデルを基に、出力を予測する。そして、性能予測モデル修正比較部109は、修正が必要ないと判定するまで、この動作を繰り返す。
 修正が必要ない場合、性能予測モデル修正比較部109は、修正後の性能予測モデルの修正箇所又は出力と、アプリケーション性能モデル蓄積部102が蓄積するアプリケーション性能モデルの対応する箇所又は出力とを比較する。さらに、性能予測モデル修正比較部109は、比較結果を表示又は出力しても良い。
 より具体的には、例えば、性能予測モデル修正比較部109は、図1に示す性能予測部104と、アプリケーション性能モデル修正部105と、修正箇所比較部106との機能(以下、第1の機能と言う)を含んでも良い。あるいは、性能予測モデル修正比較部109は、図7に示す性能予測部114と、ブラックボックス調整部107と、アプリケーション性能モデル比較部108との機能(以下、第2の機能と言う)を含んでも良い。
 さらに、性能予測モデル修正比較部109は、上記の第1の機能及び第2の機能を含み、予測状況を基に、使用する機能を切り換えても良い。
 性能予測モデル修正比較部109は、第1の機能を用いると、第2の機能に比べ、より詳細に修正箇所を比較できる。一方、性能予測モデル修正比較部109は、第2の機能を用いると、第1の機能に比べ、より多くの場合に予測できる。
 そこで、例えば、性能予測モデル修正比較部109は、まず、第1の機能を用いて動作する。そして、アプリケーション性能モデルで予測できないと判定した場合、性能予測モデル修正比較部109は、第2の機能を用いて予測しても良い。
 本実施形態の性能予測装置12は、性能予測装置10及び性能予測装置11と同様の効果を実現できる。
 その理由は、次のとおりである。
 性能予測装置12の性能予測モデル修正比較部109は、入出力計測部101の入力を基に性能予測モデルの出力を予測し、計測した出力と予測した出力とを基に、性能予測モデルを修正し、修正箇所を比較できるためである。
 より具体的には、性能予測装置12は、第1の実施形態又は第2の実施形態と同様の機能を含むため、第1の実施形態又は第2の実施形態と同様に動作できるためである。
 以上、実施形態を参照して本願発明を説明したが、本願発明は上記実施形態に限定されるものではない。本願発明の構成や詳細には、本願発明のスコープ内で当業者が理解し得る様々な変更をすることができる。
 この出願は、2012年12月12日に出願された日本出願特願2012-271540を基礎とする優先権を主張し、その開示の全てをここに取り込む。
 上記の実施形態の一部又は全部は、以下の付記のようにも記載されうるが、以下には限られない。
 (付記1)
 予測対象である情報処理システムの入力及び出力を計測する入出力計測手段と、
 前記情報処理システムで実行されるアプリケーションの性能のモデルであるアプリケーション性能モデルを蓄積するアプリケーション性能モデル蓄積手段と、
 前記情報処理システムの仮想化の性能への影響のモデルである仮想化影響モデルを蓄積する仮想化影響モデル蓄積手段と、
 少なくとも前記仮想化モデルを基に前記入出力計測手段が計測した入力に対する前記情報処理システムの性能を予測するための性能予測モデルの出力を予測し、前記予測した出力と前記入出力計測手段が計測した出力とを基に前記性能予測モデルを修正し、前記修正後の性能予測モデルと前記アプリケーション性能モデルとを比較する性能予測モデル修正比較手段と
 を含む性能予測装置。
 (付記2)
 前記性能予測モデル修正比較手段が、
 前記仮想化影響モデルと、前記アプリケーション性能モデルとを基に、前記入出力計測手段が計測した前記入力に対する前記性能予測モデルとしてのアプリケーション性能モデルの出力を予測する性能予測手段と、
 前記入出力計測手段が計測した前記情報処理システムの入力及び出力、並びに、前記性能予測手段が予測する出力を基に、前記性能予測モデルとしてのアプリケーション性能モデルを修正した修正後のアプリケーション性能モデルを作成するアプリケーション性能モデル修正手段と、
 前記修正後のアプリケーション性能モデルの修正箇所と、前記アプリケーション性能モデル蓄積手段が蓄積している修正前のアプリケーション性能モデルの対応箇所とを比較する修正箇所比較手段と、
 を含むことを特徴とする付記1に記載の性能予測装置。
 (付記3)
 前記性能予測モデル修正比較手段が、
 前記仮想化影響モデルと、前記情報処理システムで実行されるアプリケーションの性能を表現する性能予測モデルであるブラックボックスとを基に、前記入出力計測手段が計測した前記入力に対する出力を予測する性能予測手段と、
 前記入出力計測手段が計測した前記情報処理システムの入力及び出力、並びに、前記性能予測手段が予測した出力を基に、前記ブラックボックスを調整するブラックボックス調整手段と、
 前記ブラックボックス調整手段が調整したブラックボックスと、前記アプリケーション性能モデルとにおける、前記入出力手段が計測した入力に対する出力を比較するアプリケーション性能モデル比較手段と、
 を含むことを特徴とする付記1に記載の性能予測装置。
 (付記4)
 前記性能予測モデル修正比較手段が、
 前記予測した出力と前記計測した出力との差が所定の値未満と成るまで、前記差の変化が所定の値未満となるまで、又は、所定の回数まで、前記性能予測モデルの修正を繰り返す
 付記1乃至付記3のいずれか1項に記載の性能予測装置。
 (付記5)
 予測対象である情報処理システムの入力及び出力を計測し、
 前記情報処理システムで実行されるアプリケーションの性能のモデルであるアプリケーション性能モデルを蓄積し、
 前記情報処理システムの仮想化の性能への影響のモデルである仮想化影響モデルを蓄積し、
 少なくとも前記仮想化モデルを基に前記計測した入力に対する前記情報処理システムの性能を予測するための性能予測モデルの出力を予測し、
 前記予測した出力と前記計測した出力とを基に前記性能予測モデルを修正し、
 前記性能予測モデルと前記アプリケーション性能モデルとを比較する
 性能予測方法。
 (付記6)
 予測対象である情報処理システムの入力及び出力を計測する処理と、
 前記情報処理システムで実行されるアプリケーションの性能のモデルであるアプリケーション性能モデルを蓄積する処理と、
 前記情報処理システムの仮想化の性能への影響のモデルである仮想化影響モデルを蓄積する処理と、
 少なくとも前記仮想化モデルを基に前記計測した入力に対する前記情報処理システムの性能を予測するための性能予測モデルの出力を予測する処理と、
 前記予測した出力と前記計測した出力とを基に前記性能予測モデルを修正する処理と、
 前記性能予測モデルと前記アプリケーション性能モデルとを比較する処理とをコンピュータに実行させるプログラム記録したコンピュータ読み取り可能な記録媒体。
 10  性能予測装置
 11  性能予測装置
 12  性能予測装置
 60  性能予測装置
 101  入出力計測部
 102  アプリケーション性能モデル蓄積部
 103  仮想化影響モデル蓄積部
 104  性能予測部
 105  アプリケーション性能モデル修正部
 106  修正箇所比較部
 107  ブラックボックス調整部
 108  アプリケーション性能モデル比較部
 109  性能予測モデル修正比較部
 114  性能予測部
 301  待ち行列
 302  待ち行列
 303  待ち行列
 610  CPU
 620  ROM
 630  RAM
 640  内部記憶装置
 650  IOC
 660  入力機器
 670  表示機器
 680  NIC
 700  記憶媒体

Claims (6)

  1.  予測対象である情報処理システムの入力及び出力を計測する入出力計測手段と、
     前記情報処理システムで実行されるアプリケーションの性能のモデルであるアプリケーション性能モデルを蓄積するアプリケーション性能モデル蓄積手段と、
     前記情報処理システムの仮想化の性能への影響のモデルである仮想化影響モデルを蓄積する仮想化影響モデル蓄積手段と、
     少なくとも前記仮想化モデルを基に前記入出力計測手段が計測した入力に対する前記情報処理システムの性能を予測するための性能予測モデルの出力を予測し、前記予測した出力と前記入出力計測手段が計測した出力とを基に前記性能予測モデルを修正し、前記修正後の性能予測モデルと前記アプリケーション性能モデルとを比較する性能予測モデル修正比較手段と
     を含む性能予測装置。
  2.  前記性能予測モデル修正比較手段が、
     前記仮想化影響モデルと、前記アプリケーション性能モデルとを基に、前記入出力計測手段が計測した前記入力に対する前記性能予測モデルとしてのアプリケーション性能モデルの出力を予測する性能予測手段と、
     前記入出力計測手段が計測した前記情報処理システムの入力及び出力、並びに、前記性能予測手段が予測する出力を基に、前記性能予測モデルとしてのアプリケーション性能モデルを修正した修正後のアプリケーション性能モデルを作成するアプリケーション性能モデル修正手段と、
     前記修正後のアプリケーション性能モデルの修正箇所と、前記アプリケーション性能モデル蓄積手段が蓄積している修正前のアプリケーション性能モデルの対応箇所とを比較する修正箇所比較手段と、
     を含むことを特徴とする請求項1に記載の性能予測装置。
  3.  前記性能予測モデル修正比較手段が、
     前記仮想化影響モデルと、前記情報処理システムで実行されるアプリケーションの性能を表現する性能予測モデルであるブラックボックスとを基に、前記入出力計測手段が計測した前記入力に対する出力を予測する性能予測手段と、
     前記入出力計測手段が計測した前記情報処理システムの入力及び出力、並びに、前記性能予測手段が予測した出力を基に、前記ブラックボックスを調整するブラックボックス調整手段と、
     前記ブラックボックス調整手段が調整したブラックボックスと、前記アプリケーション性能モデルとにおける、前記入出力手段が計測した入力に対する出力を比較するアプリケーション性能モデル比較手段と、
     を含むことを特徴とする請求項1に記載の性能予測装置。
  4.  前記モデル修正比較手段が、
     前記予測した出力と前記計測した出力との差が所定の値未満と成るまで、前記差の変化が所定の値未満となるまで、又は、所定の回数まで、前記性能予測モデルの修正を繰り返す
     請求項1乃至請求項3のいずれか1項に記載の性能予測装置。
  5.  予測対象である情報処理システムの入力及び出力を計測し、
     前記情報処理システムで実行されるアプリケーションの性能のモデルであるアプリケーション性能モデルを蓄積し、
     前記情報処理システムの仮想化の性能への影響のモデルである仮想化影響モデルを蓄積し、
     少なくとも前記仮想化モデルを基に前記計測した入力に対する前記情報処理システムの性能を予測するための性能予測モデルの出力を予測し、
     前記予測した出力と前記計測した出力とを基に前記性能予測モデルを修正し、
     前記性能予測モデルと前記アプリケーション性能モデルとを比較する
     性能予測方法。
  6.  予測対象である情報処理システムの入力及び出力を計測する処理と、
     前記情報処理システムで実行されるアプリケーションの性能のモデルであるアプリケーション性能モデルを蓄積する処理と、
     前記情報処理システムの仮想化の性能への影響のモデルである仮想化影響モデルを蓄積する処理と、
     少なくとも前記仮想化モデルを基に前記計測した入力に対する前記情報処理システムの性能を予測するための性能予測モデルの出力を予測する処理と、
     前記予測した出力と前記計測した出力とを基に前記性能予測モデルを修正する処理と、
     前記性能予測モデルと前記アプリケーション性能モデルとを比較する処理とをコンピュータに実行させるプログラムを記録したコンピュータ読み取り可能な記録媒体。
PCT/JP2013/007194 2012-12-12 2013-12-06 性能予測装置及び性能予測方法 WO2014091733A1 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2014551883A JP6172160B2 (ja) 2012-12-12 2013-12-06 性能予測装置及び性能予測方法

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
JP2012-271540 2012-12-12
JP2012271540 2012-12-12

Publications (1)

Publication Number Publication Date
WO2014091733A1 true WO2014091733A1 (ja) 2014-06-19

Family

ID=50934041

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/JP2013/007194 WO2014091733A1 (ja) 2012-12-12 2013-12-06 性能予測装置及び性能予測方法

Country Status (2)

Country Link
JP (1) JP6172160B2 (ja)
WO (1) WO2014091733A1 (ja)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN107766201A (zh) * 2017-09-28 2018-03-06 联想(北京)有限公司 一种软件处理方法和装置、电子设备

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2002215423A (ja) * 2001-01-22 2002-08-02 Hitachi Ltd ソフトウェアモデル作成方法
US20080109390A1 (en) * 2006-11-03 2008-05-08 Iszlai Gabriel G Method for dynamically managing a performance model for a data center
WO2011052147A1 (ja) * 2009-10-30 2011-05-05 日本電気株式会社 評価モデル分析システム、評価モデル分析方法およびプログラム

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2002215423A (ja) * 2001-01-22 2002-08-02 Hitachi Ltd ソフトウェアモデル作成方法
US20080109390A1 (en) * 2006-11-03 2008-05-08 Iszlai Gabriel G Method for dynamically managing a performance model for a data center
WO2011052147A1 (ja) * 2009-10-30 2011-05-05 日本電気株式会社 評価モデル分析システム、評価モデル分析方法およびプログラム

Non-Patent Citations (2)

* Cited by examiner, † Cited by third party
Title
DAICHI KIMURA ET AL.: "Method for Making Performance Model about System which Includes Unknown Part", IPSJ SIG NOTES SYSTEM HYOKA (EVA, vol. 2011 - E, no. 3, 25 November 2011 (2011-11-25), pages 1 - 8 *
WOOD, TIMOTHY ET AL.: "Profiling and Modeling Resource Usage of Virtualized Applications", PROCEEDINGS OF THE 9TH ACM/IFIP/USENIX INTERNATIONAL CONFERENCE ON MIDDLEWARE, 2008, pages 366 - 387 *

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN107766201A (zh) * 2017-09-28 2018-03-06 联想(北京)有限公司 一种软件处理方法和装置、电子设备

Also Published As

Publication number Publication date
JP6172160B2 (ja) 2017-08-02
JPWO2014091733A1 (ja) 2017-01-05

Similar Documents

Publication Publication Date Title
TWI444844B (zh) 模擬參數校正技術
JP2015087973A (ja) 生成装置、生成方法、およびプログラム
JP6007906B2 (ja) システム性能予測方法、情報処理装置およびその制御プログラム
US8457944B2 (en) Method and device for determining requirement parameters of at least one physical hardware unit
WO2018074304A1 (ja) 情報処理方法、情報処理装置、プログラム、及び情報処理システム
US20230267164A1 (en) Systems and methods for imputing missing values in data sets
US20130144587A1 (en) Scalability evaluation device, scalability evaluation method, and scalability evaluation program
JP6172160B2 (ja) 性能予測装置及び性能予測方法
Argyris et al. A unified sampling-based framework for optimal sensor placement considering parameter and prediction inference
US20140258647A1 (en) Recording medium storing performance evaluation assistance program, performance evaluation assistance apparatus, and performance evaluation assistance method
JP2015018505A (ja) 故障予測装置
JP2017027296A (ja) 性能評価方法、性能評価プログラム及び情報処理装置
CN110737509B (zh) 热迁移处理方法及装置、存储介质和电子设备
JP2016045536A (ja) 設計支援装置
WO2015083333A1 (ja) 性能予測装置、性能予測方法、及び、コンピュータ・プログラムが格納された記憶媒体
EP4145327A1 (en) System for estimating characteristic value of material
JP2024003643A (ja) ニューラルネットワークの学習方法、コンピュータプログラム、及び余寿命予測システム
WO2021006332A1 (ja) 情報処理装置、プログラム、及び算出方法
JP6816824B2 (ja) 分散システム、データ管理装置、データ管理方法、及びプログラム
WO2013141018A1 (ja) 最適システム設計支援装置
WO2021046723A1 (zh) 传感器模型的生成方法和系统、传感器测量方法和系统
JP6726312B2 (ja) シミュレーション方法、システム、及びプログラム
US20240045388A1 (en) Management apparatus, prediction method, and prediction program
US20220261518A1 (en) Method of and system for operating storage area network simulator
JP7327623B1 (ja) 予測装置、予測方法及びプログラム

Legal Events

Date Code Title Description
121 Ep: the epo has been informed by wipo that ep was designated in this application

Ref document number: 13862441

Country of ref document: EP

Kind code of ref document: A1

ENP Entry into the national phase

Ref document number: 2014551883

Country of ref document: JP

Kind code of ref document: A

NENP Non-entry into the national phase

Ref country code: DE

122 Ep: pct application non-entry in european phase

Ref document number: 13862441

Country of ref document: EP

Kind code of ref document: A1