Load management device and load management method
The load management device uses a classification model to analyze CPU usage patterns, enabling effective real-time management and detection of computational load anomalies.
Patent Information
- Authority / Receiving Office
- JP · JP
- Patent Type
- Patents
- Current Assignee / Owner
- Filing Date
- 2026-02-12
- Publication Date
- 2026-04-08
AI Technical Summary
Conventional methods struggle to understand the execution process of information processing involved in fluctuations of processing resource usage, making it difficult to manage computational load effectively.
A load management device that utilizes a classification model, trained on CPU usage data, to analyze the correlation between sequences of state transitions, issuing warnings or resource adjustments based on detected load patterns.
Enables real-time understanding and management of computational load fluctuations, allowing for timely resource adjustments and anomaly detection.
Smart Images

Figure 0007842947000001_ABST
Abstract
Description
[Technical Field]
[0001] The present invention relates to a load management device and a load management method, and more particularly to the management of computational load. [Background technology]
[0002] In recent years, information processing performed on devices has become more sophisticated and complex in order to provide high-performance systems and services. The software implemented in such systems consists of programs with enormous amounts of source code, and the execution process of information processing has come to have a complex structure consisting of the occurrence of numerous events and their state transitions.
[0003] Furthermore, in recent years, there have been instances where the usage of processing resources such as CPU utilization in devices has increased dramatically, either intentionally or unintentionally, due to actions such as the unauthorized transmission of large volumes of short packets. In operational systems, if such a sudden increase in processing resource usage causes process failures or malfunctions, identifying the cause of the failure or malfunction, and the location of the source code where the malfunction occurred, is a complex and time-consuming process. For example, Patent Document 1 discloses a method for retrospectively identifying the location of errors and the variable values at the time using core files.
[0004] However, the technology disclosed in Patent Document 1 performs analysis based on log information and core files acquired after a failure occurs, making it difficult to grasp the load state of processing resources during operation based on the relationship of fluctuations in the usage status of processing resources corresponding to the execution process of information processing performed by the device. Therefore, when the amount of processing resources used increases rapidly in a short period of time, it is difficult to appropriately grasp the execution process of information processing involved in such an increase and to manage the computational load. [Prior art documents] [Patent Documents]
[0005] [Patent Document 1] Japanese Patent Publication No. 2005-301570 [Overview of the Initiative] [Problems that the invention aims to solve]
[0006] Thus, with conventional technologies, it has been difficult to understand the execution process of information processing that is involved in fluctuations in the usage of processing resources during operation.
[0007] This invention was made to solve the above-mentioned problems and aims to understand the execution process of information processing that is involved in fluctuations in the usage of processing resources during operation. [Means for solving the problem]
[0008] To solve the above-mentioned problems, the load management device according to the present invention comprises: an acquisition unit configured to acquire the amount of processing resources used by the device in accordance with the execution of each of a sequence of state transitions of multiple events representing the execution process for each observation unit of information processing performed by the device; a classification unit configured to take input data based on the amount of processing resources used by each of the sequence of state transitions of multiple events for each observation unit, acquired by the acquisition unit, as an unknown input, and provide it to a trained classification model that reflects the correlation between the amounts of processing resources used by each of the sequence of state transitions of multiple events, perform calculations on the trained classification model, and output a classification result regarding the degree of computational load in the device for each observation unit; and a load management unit configured to output a response to the computational load in the device in accordance with the classification result output by the classification unit.
[0009] Furthermore, the load management device according to the present invention may further include a learning unit configured to learn feature quantities representing the correlation between the amounts of processing resources used for each of the sequences of state transitions of multiple events, using a classification model, with respect to the input data based on the amount of processing resources used for each of the sequences of state transitions of multiple events for each observation unit, and using training data in which patterns of the degree of computational load in the device for each observation unit are assigned as correct labels; and a storage unit configured to store the learned classification model constructed by the learning unit.
[0010] Furthermore, the load management device according to the present invention further includes an input data creation unit configured to create matrix data representing the correlation between the amounts of processing resources used by each execution of the sequence of state transitions of multiple events for each observation unit, based on the amount of processing resources used by each execution of the sequence of state transitions of multiple events, and the classification unit may provide the matrix data created by the input data creation unit as input data to the trained classification model.
[0011] Furthermore, in the load management device according to the present invention, the load management unit may also issue a warning when, among the classification results for each observation unit output by the classification unit over a certain period of time, the total number of events included in the observation unit corresponding to the classification result showing the first pattern, which indicates that the computational load in the device is on an increasing trend, exceeds a first threshold.
[0012] Furthermore, in the load management device according to the present invention, the load management unit may, among the classification results for each observation unit output by the classification unit over a certain period of time, instruct the device to increase its processing resources if the total number of events included in the observation unit corresponding to the classification result showing the second pattern, which indicates that the computational load on the device is increasing even more than the first pattern, exceeds a second threshold.
[0013] Furthermore, in the load management device according to the present invention, the classification model may include a convolutional neural network.
[0014] Furthermore, in the load management device according to the present invention, the classification model may further include an attention mechanism configured to emphasize the features extracted by the convolutional neural network by weighting them based on the importance of a plurality of feature maps constituting the features.
[0015] To solve the above-mentioned problems, the load management method according to the present invention comprises: an acquisition step of acquiring the amount of processing resources used by the device in correspondence with the execution of each of a series of state transitions of multiple events representing the execution process for each observation unit of information processing performed by the device; a classification step of providing input data based on the amount of processing resources used by each of the sequence of state transitions of multiple events for each observation unit, acquired in the acquisition step, as an unknown input to a trained classification model that reflects the correlation between the amounts of processing resources used by each of the sequence of state transitions of multiple events, performing calculations on the trained classification model, and outputting a classification result regarding the degree of computational load in the device for each observation unit; and a load management step of outputting a response to the computational load in the device according to the classification result output in the classification step.
[0016] Furthermore, the load management method according to the present invention may further include a learning step in which a classification model learns feature quantities representing the correlation between the amounts of processing resources used in each of the sequences of state transitions of multiple events, using training data in which patterns of the degree of computational load in the device for each observation unit are attached as correct labels to the input data based on the amount of processing resources used in each of the sequences of state transitions of multiple events for each observation unit, and a storage step in which the learned classification model constructed in the learning step is stored in a storage unit.
[0017] Furthermore, the load management method according to the present invention further includes an input data creation step in which matrix data representing the correlation between the amounts of processing resources used for each execution of each sequence of state transitions of multiple events, based on the amount of processing resources used for each execution of each sequence of state transitions of multiple events for each observation unit, and the classification step may provide the matrix data created in the input data creation step as input data to the trained classification model.
[0018] Furthermore, in the load management method according to the present invention, the load management step may further issue a warning when, among the classification results for each observation unit output in the classification step over a certain period of time, the total number of events included in the observation unit corresponding to the classification result showing the first pattern, which indicates that the computational load on the device is increasing, exceeds a first threshold.
[0019] Furthermore, in the load management method according to the present invention, the load management step may further instruct the device to increase processing resources if, among the classification results for each observation unit output in the classification step over a certain period of time, the total number of events included in the observation unit corresponding to the classification result showing the second pattern, which indicates that the computational load on the device is increasing even more than the first pattern, exceeds a second threshold. [Effects of the Invention]
[0020] According to the present invention, input data based on the amount of processing resources used by each execution of a sequence of state transitions of multiple events for each observation unit is given as an unknown input to a trained classification model that reflects the correlation between the amounts of processing resources used by each execution of a sequence of state transitions of multiple events. The trained classification model is then used to perform calculations and output a classification result regarding the degree of computational load in the device for each observation unit. Therefore, the execution process of information processing involved in fluctuations in the amount of processing resources used can be grasped during operation. [Brief explanation of the drawing]
[0021] [Figure 1] Figure 1 is a block diagram showing the configuration of a load management system equipped with a load management device according to an embodiment of the present invention. [Figure 2] Figure 2 is a diagram illustrating the overview of the load management system according to this embodiment. [Figure 3] Figure 3 is a diagram illustrating the configuration of the learning unit of the load management device according to this embodiment. [Figure 4] Figure 4 is a block diagram showing the hardware configuration of the load management device according to this embodiment. [Figure 5] Figure 5 is a flowchart showing the operation of the load management device according to this embodiment. [Figure 6] Figure 6 is a flowchart showing the operation of the load management device according to this embodiment. [Modes for carrying out the invention]
[0022] Hereinafter, preferred embodiments of the present invention will be described in detail with reference to Figures 1 to 6.
[0023] [Load Management System Configuration] The load management system according to this embodiment comprises a load management device 1, one or more information processing devices (devices) 2, and an operation center 3, which are connected to each other so as to be able to communicate with each other, for example, via a communication network NW.
[0024] The information processing device 2 is a computing device that performs information processing and has an execution environment to which processing resources such as a CPU are allocated. The information processing device 2 may be implemented, for example, as a virtual machine, a physical server, or an execution environment logically configured on an operating system.
[0025] Operation Center 3 is a management base that receives warnings regarding computing load from Load Management Device 1 and manages the operation of Information Processing Device 2 based on these warnings. Operation Center 3 is used, for example, to display notifications to administrators and to make operational decisions. In addition, Operation Center 3 can increase the number of virtual CPUs of the managed Information Processing Device 2 based on instructions from Load Management Device 1 regarding resource allocation changes.
[0026] Figure 2 is a schematic diagram illustrating the execution process of information processing performed by the information processing device 2 as a sequence of state transitions of multiple events. The information processing performed by the information processing device 2 refers to a series of processes implemented by programs, processes, or threads executed on the information processing device 2, and includes, for example, application processing, service processing, or system processing. When one information processing is executed in the information processing device 2, multiple events occur as the processing progresses, indicating the start, end, waiting, or progress of internal processing.
[0027] The information processing device 2 records information as a log regarding the sequence of state transitions of events that occur in conjunction with the execution of information processing. The information processing device 2 also records information as a log regarding the amount of processing resources used in response to the execution of the sequence of event state transitions. The information processing device 2 can sample the CPU usage at the time of event occurrence. The logs regarding the sequence of event state transitions and the processing resource usage recorded by the information processing device 2 are used for processing by the load management device 1.
[0028] In this embodiment, a sequence of event state transitions is used as a unit representing the execution process of information processing in the information processing device 2. For each predetermined observation unit, the information processing device 2 acquires a sequence of multiple (M) event state transitions representing the execution process of information processing performed in the observation unit. In the following description, the sequence of event state transitions may be referred to as an "event sequence." As shown in the numerical values on the right side of Figure 2, the information processing device 2 acquires, for example, the CPU usage rate as the amount of processing resources used in response to the execution of each event sequence. Note that the amount of processing resources used may also be the memory usage or I / O waiting time for each event sequence.
[0029] In this embodiment, the observation unit refers to a unit set up to grasp the execution status of information processing in the information processing device 2 and the usage status of processing resources. The observation unit can be defined, for example, based on a predetermined time interval, a predetermined number of processing cycles, or a predetermined number of events. In this embodiment, the computational load during the execution of information processing is evaluated based on the behavior of the amount of processing resources used corresponding to multiple event sequences for each of these observation units.
[0030] [Functional blocks of the load management device] As shown in Figure 1, the load management device 1 comprises an acquisition unit 10, an input data creation unit 11, a learning unit 12, a classification unit 13, a load management unit 14, and a storage unit 15.
[0031] The acquisition unit 10 acquires the CPU utilization rate as the usage amount of the processing resources used in the information processing apparatus 2 corresponding to each execution of a series of state transitions of a plurality of events representing the execution process for each observation unit of the information processing executed by the information processing apparatus 2. Specifically, the acquisition unit 10 acquires M event series for each observation unit recorded in the information processing apparatus 2 to be managed via the network NW, and the CPU utilization rate used in the execution of each event series. The M event series are event series that occur within a time window or a transaction, and the M event series belong to the same process. The acquisition unit 10 can acquire data on the CPU utilization rate of the series of M events for each observation unit for use as training data for learning by the learning unit 12.
[0032] The acquisition unit 10, for each observation unit (hereinafter referred to as "observation unit t" k "), acquires the CPU utilization rate x m used in the execution of each of the M event series. The acquisition unit 10 acquires, for each observation unit t k (k = 1,..., K), the set having as elements the CPU utilization rates x m of the M event series acquired, as the CPU utilization rate group D k for each event series in the observation unit t k = {x1, x2,... x M}.
[0033] The input data creation unit 11 creates matrix data representing the correlation between the CPU utilization rates corresponding to each execution of a series of state transitions of a plurality of events, based on the CPU utilization rates corresponding to each execution of a series of state transitions of a plurality of events acquired by the acquisition unit 10. The matrix data created by the input data creation unit 11 is used as input data for a classification model 12A provided in the learning unit 12 and the classification unit 13 described later. More specifically, the input data creation unit 11, for each observation unit t k acquired by the acquisition unit 10, of the CPU utilization rate vectors D k = {x1, x2,... x MBased on this, matrix data is created that represents the correlation between CPU usage in the information processing device 2 due to the execution of M event sequences.
[0034] The input data creation unit 11 generates a vector D from the CPU usage data of each of the M event sequences. k Treated as such, vector D k and its transpose vector D k T Based on the product of the two, we create an M×M matrix data represented by the following equation (1).
number
[0035] In equation (1) above, × represents the cross product, and matrix X k The elements are x ij =x i x j This is the case. Furthermore, each element of the matrix data reflects the relationship of simultaneous fluctuations between multiple event sequences, based on the combination of CPU usage rates associated with the execution of M event sequences. Such matrix data is used as a feature representing the correlation between CPU usage rates in the classification model 12A described later. The input data creation unit 11 generates the matrix data of equation (1) above (hereinafter referred to as "input matrix" or "input matrix X") k The observation unit t k Create a total of K items for each (k=1,...,K) value.
[0036] The input data creation unit 11 further generates the input matrix X k Using this, the training data used by the learning unit 12 is created. More specifically, the input data creation unit 11 creates the observation unit t k The input matrix X in equation (1) above, created for each (k=1,...,K) kFor this purpose, training data is created by assigning correct labels to the following patterns of computational load in the information processing device 2: normal patterns 1 to N belonging to the first load level, which indicates a computational load within the normal range; warning patterns (first patterns) 1 to O belonging to the second load level, which indicates an increasing trend in the computational load in the information processing device 2; and dangerous patterns (second patterns) 1 to P belonging to the third load level, which indicates an even greater increasing trend than the second load level.
[0037] Normal patterns 1 to N are input matrix X k In this case, the correlation of CPU usage corresponding to each event sequence is low overall, indicating a stable computational load behavior, which is a pattern seen during normal operation. Warning patterns 1-O correspond to the input matrix X k In this pattern, the correlation of CPU usage increases among some or more event sequences, indicating an upward trend in computational load. Dangerous patterns 1-P are input matrix X k This pattern indicates a state where there is a significantly high correlation in CPU usage across multiple event sequences, resulting in a rapid increase in computational load. Each pattern corresponds to a different classification class in classification model 12A. The criteria for determining each of these load levels can be pre-set based on the configuration, operating conditions, and past execution history of the information processing device 2.
[0038] The learning unit 12 includes a classification model 12A. The learning unit 12 uses training data, which is based on the CPU usage rate corresponding to the execution of each state transition sequence of multiple events for each observation unit, and the classification model 12A learns features representing the correlation between the CPU usage rates corresponding to the execution of each state transition sequence of multiple events. More specifically, the learning unit 12 uses the input matrix X created by the input data creation unit 11. k Classification model 12A is trained using training data with correct labels assigned to it. Features are defined as the input matrix X kThese are individual numerical values that show the correlation between the CPU usage of each element included in the sequence, i.e., the execution of each event sequence.
[0039] The learning unit 12 learns patterns that distinguish between distribution states formed when the behavior of CPU usage corresponding to multiple event sequences fluctuates in relation to each other, and distribution states formed when the behavior fluctuates independently of each other, based on the combinations and distribution trends of these multiple features.
[0040] Figure 3 is a block diagram showing an example of a classification model 12A provided by the learning unit 12. As shown in Figure 3, the classification model 12A includes a convolutional neural network (CNN). The classification model 12A further includes an attention mechanism that weights features representing the correlation between CPU usage due to the execution of each event sequence extracted by the CNN based on the importance of multiple feature maps that constitute the features, thereby emphasizing the features. In this embodiment, SENet (Squeeze-and-Excitation Network) is adopted as the classification model 12A. SENet includes an attention mechanism that weights feature maps extracted by the hidden layer 121 of the CNN.
[0041] The classification model 12A consists of three main stages: a hidden layer 121 which is a feature extraction unit using a CNN, an SE block 122 which is a feature enhancement unit using SENet, and an output layer 124 which is a classification output unit. In the classification model 12A shown in Figure 3, the input layer 120 and the hidden layer 121 are configured to correspond to a CNN.
[0042] The input layer 120 uses the observation unit t. k CPU usage D for each M event sequence k ={x1,x2,...x M The input matrix X in equation (1) above, based on} k Enter the input matrix X. k This is a matrix created by the input data creation unit 11. Input matrix X kThis is input to the hidden layer 121 via the input layer 120.
[0043] The hidden layer 121 includes a convolutional layer that performs convolutional processing on the data input from the input layer 120, an activation layer that uses the ReLU function as the activation function, and a pooling layer that aggregates features, with the input matrix X k A set of feature maps consisting of multiple feature maps is extracted from the input matrix X. Furthermore, processing blocks including convolutional layers and pooling layers may be provided in L stages from the input layer 120 to the output layer 124. These input layer 120 and hidden layer 121 process the input matrix X. k The correlation between CPU usage across multiple event sequences included in the data is represented as a spatial feature.
[0044] On the other hand, the SE block 122 and the multiplier 123 are configured to support an attention mechanism that enhances features in the channel direction, taking into account the importance of the feature maps extracted by the CNN. The SE block 122 takes the feature maps output from the hidden layer 121 of the CNN as input and performs global average pooling to aggregate spatial information for each channel.
[0045] SE block 122 performs linear transformations using multiple connected layers and nonlinear transformations using an activation function (ReLU) on the aggregated input vector x, and calculates weight coefficients representing the importance of each channel for each number of feature maps extracted by the hidden layer 121 of the CNN. SE block 122 can be applied to the feature map group output from the final stage of the L-stage convolutional and pooling layers of the hidden layer 121 of the CNN, or to intermediate stages of multiple stages. The transformation process of SE block 122 is expressed by the following equation (2).
number
[0046] In equation (2) above, W is the weight matrix in the fully connected layer, b is the bias term, and f is an activation function such as the ReLU function or Sigmoid function. This allows the calculation of a weight coefficient vector y representing the importance of each channel. SE block 122 outputs the calculated weight coefficient vector y, which is then input to the subsequent multiplication unit 123.
[0047] The multiplication unit 123 further weights the features extracted by the CNN by multiplying the weight coefficients calculated by the SE block 122 by the corresponding channels in the feature map set output from the hidden layer 121 of the CNN. The multiplication unit 123 emphasizes features that contribute to classification by highlighting features of high-importance channels and suppressing features of low-importance channels.
[0048] The output layer 124 takes the feature map group, which has been further weighted by the multiplication unit 123, as input and outputs a classification result indicating the degree of computational load in the information processing device 2. Output values y1~y N ,y N+1 ~y N+O ,y N+O+1 ~y N+O+P Each output value y i (i=1~N+O+P) is the input matrix X based on CPU usage across multiple input event sequences. k This value represents the probability or likelihood of belonging to each classification class, and is output as a normalized value using, for example, the Softmax function. In this case, each output value y i The value can be between 0 and 1, and the sum of all output values is 1.
[0049] Classification model 12A uses output values y1~y N The normal pattern group belonging to the first load level indicated by and the output value y N+1 ~y N+O The warning pattern group belonging to the second load level indicated by and the output value y N+O+1 ~y N+O+P By distinguishing it from the group of dangerous patterns belonging to the third loading level indicated by the input matrix X k However, it determines which class the pattern belongs to.
[0050] Here, the training data that the learning unit 12 uses to train the classification model 12A is, as mentioned above, the input matrix X k This is given as a label vector corresponding to the number of classes (N+O+P) (hereinafter referred to as "C" (=N+O+P)) consisting of pre-set normal patterns 1-N, warning patterns 1-O, and dangerous patterns 1-P.
[0051] In this embodiment, the example given is that the correct label y is given as a probability distribution for multiple classes, but it may also be expressed in one-hot notation. That is, the correct label y is y=(y1,y2,…,y C ) is expressed as, and each element y c The value can be between 0 and 1, and the sum of all elements in all correct labels is 1.
[0052] The learning unit 12 uses the input matrix X of the training data. k The values are input to the classification model 12A, and the classification model 12A calculates the estimated value vector y^(y-hat) represented by the following equation (3) through forward propagation.
number
[0053] In equation (3) above, each element y C ^ represents the input matrix X k This indicates the probability that belongs to class C. The learning unit 12 calculates the objective function based on the difference between the correct label y and the estimated value vector y^. A loss function based on multi-level cross-entropy is used as the objective function. For example, the loss L is expressed by the following equation (4).
number
[0054] In the loss function L of equation (4) above, K is the input matrix X, which is the input data used for training. k y represents the total number, and C represents the total number of classes to be classified. c (i)This is the i-th input matrix X k This shows the probability of a given answer belonging to class c. c ^ (i) This is the i-th input matrix X k This shows the predicted probabilities belonging to class c, obtained by inputting an (M×M dimension input matrix X) into a CNN.
[0055] The learning unit 12 calculates the gradient by backpropagation or the like to minimize the value of the loss L in equation (4) above, and updates the parameters of each layer included in the classification model 12A. At this time, not only the filter coefficients of the convolutional layers and the weight coefficients of the fully connected layers of the CNN, but also the weight parameters of the fully connected layers included in the SE block 122 are updated. In other words, in this embodiment, SENet, a network configuration combining a CNN (input layer 120, hidden layer 121, output layer 124) and an SE block 122, is learned integrally based on a single objective function. The learned classification model 12A is stored in the storage unit 15, which will be described later.
[0056] The classification unit 13 takes input data based on the CPU usage rate corresponding to the execution of each of the sequence of state transitions of multiple events for each observation unit, acquired by the acquisition unit 10, as unknown input, and provides it to a trained classification model 12A that reflects the correlation between the CPU usage rates corresponding to the execution of each of the sequence of state transitions of multiple events, performs calculations on the trained classification model 12A, and outputs a classification result regarding the degree of computational load in the information processing device 2 for each observation unit. More specifically, the classification unit 13 uses the CPU usage rates used in the M event sequences for each observation unit acquired by the acquisition unit 10 to create the input matrix X of equation (1) above, which is created by the input data creation unit 11. k This is provided to the trained classification model 12A as input data to be classified.
[0057] The classification unit 13 is the observation unit t. k For each K input matrix X of equation (1) above k This is then sequentially input into the pre-trained classification model 12A, and the observation unit t k Input matrix X for each input matrix kThe system can output classification results for normal patterns 1-N, warning patterns 1-O, and dangerous patterns 1-P. This allows for sequential output of classification results regarding the presence or absence of computational load anomalies in the information processing device 2 for each observation unit.
[0058] The load management unit 14 outputs a response to the computational load in the information processing device 2 according to the classification results output by the classification unit 13. More specifically, the load management unit 14 issues a warning when, among the classification results for each observation unit output by the classification unit 13 over a certain period, the total number of events included in the observation unit corresponding to the classification result showing warning pattern 1 to 0 exceeds a threshold (first threshold). The certain period is an arbitrary monitoring period depending on the operation of the information processing device 2 and the characteristics of information processing, and can be, for example, 30 minutes. Warning patterns 1 to 0 indicate a second load level in which characteristics indicating an increase in computational load have been observed, but it is not necessary to immediately increase processing resources, and the issue can be addressed by notifying the operator and strengthening monitoring.
[0059] Specifically, the load management unit 14 considers multiple observation units t included within a certain period. k Regarding each observation unit t, k The load management unit 14 refers to the classification results output by the classification unit 13 and extracts observation units whose classification results indicate warning patterns 1 to O. k Regarding the observation unit t, k The number of occurrences of events included in the data is counted, and the total number of event occurrences within a certain period is calculated. The number of event occurrences refers to the number of events that cause state transitions recorded in the log of the information processing device 2 within the observation unit, and includes the number of transitions. If the calculated total number of events exceeds a preset threshold (for example, 50,000 events), a warning is sent to the operation center 3 via the network NW. The threshold is a baseline value that is set in advance based on the distribution of event occurrences during normal operation of the information processing device 2 and past operational performance.
[0060] Furthermore, the load management unit 14, among the classification results for each observation unit output by the classification unit 13 over a certain period of time, instructs the information processing device 2 to increase its processing resources if the total number of events included in the observation units corresponding to the classification results showing dangerous patterns 1 to P, which indicate that the computational load on the information processing device 2 is increasing even more than the warning patterns (first patterns) 1 to O, exceeds a threshold (second threshold).
[0061] More specifically, the load management unit 14 similarly considers multiple observation units t included within a certain period (e.g., 30 minutes). k Regarding each observation unit t, k The classification unit 13 outputs the classification result, and the load management unit 14 extracts the observation units that show dangerous patterns 1 to P in the classification result. k Regarding the observation unit t, k The number of occurrences of events included in the data is counted, and the total number of events within a certain period is calculated. If the calculated total number of events exceeds a predetermined threshold (for example, 100,000 events), an instruction is sent via the network NW to add a virtual CPU to the information processing device 2. The load management unit 14 may also send an instruction to the operation center 3.
[0062] The load management device 1 may be configured to issue instructions to an external operation center 3 or the like to increase the number of virtual CPUs, or to directly increase the processing resources of the managed information processing device 2. For example, if the information processing device 2 operates on a virtualized environment such as a virtual machine, the load management unit 14 increases the number of virtual CPUs allocated to the information processing device 2 by sending control instructions to the virtualization infrastructure. Also, if the information processing device 2 operates on a cloud environment, the load management unit 14 can respond to an increase in computing load by changing the amount of processing resources allocated to the managed information processing device 2 via a management interface provided by the cloud environment.
[0063] The memory unit 15 stores the trained classification model 12A constructed by the learning unit 12.
[0064] [Hardware configuration of load management device] Next, an example of a hardware configuration for realizing the load management device 1 having the functions described above will be explained using Figure 4.
[0065] As shown in Figure 4, the load management device 1 can be implemented, for example, by a computer equipped with a processor 102, main memory 103, communication interface 104, auxiliary storage 105, and input / output I / O 106 connected via a bus 101, and a program to control these hardware resources. The load management device 1 also includes a display device 107 connected via the bus 101.
[0066] The processor 102 is a circuit or device that performs arithmetic processing, and can be implemented by, for example, a general-purpose central processing unit (CPU), a graphics processing unit (GPU), a field programmable gate array (FPGA), an application-specific integrated circuit (ASIC), etc. Alternatively, some or all of these may be combined to form the processor.
[0067] The main memory 103 is composed of, for example, volatile random access memory (RAM), and pre-stores programs for the processor 102 to perform various controls and calculations. The processor 102 and the main memory 103 work together to realize the various functions of the load management device 1, such as the acquisition unit 10, input data creation unit 11, learning unit 12, classification unit 13, and load management unit 14 shown in Figure 1.
[0068] The communication interface 104 is an interface circuit for networking the load management device 1 with various external electronic devices.
[0069] The auxiliary storage device 105 consists of a read / write storage medium and a drive device for reading and writing various information such as programs and data to the storage medium. The auxiliary storage device 105 can use non-volatile storage such as a hard disk or flash memory as the storage medium.
[0070] The auxiliary storage device 105 has a program storage area for storing the load management program. The auxiliary storage device 105 also has a program storage area for storing the learning program executed by the load management device 1. The storage unit 15 described in Figure 1 is realized by the auxiliary storage device 105. Furthermore, it may have, for example, a backup area for backing up the aforementioned data and programs.
[0071] The I / O106 is an input / output device that accepts signals from external devices and outputs signals to external devices.
[0072] The display device 107 is composed of an organic EL display, a liquid crystal display, or the like. The display device 107 displays information related to the classification result on the screen.
[0073] [Operation of the load management device] Next, the operation of the load management device 1 having the above-described configuration will be explained with reference to the flowcharts in Figures 5 and 6.
[0074] First, as shown in Figure 5, the acquisition unit 10 acquires data on the CPU usage rate used by the information processing device 2 by executing M event sequences for each observation unit (step S1). In step S1, the acquisition unit 10 can acquire data such as past history prepared in advance from an external server. Also, in step S1, each observation unit t kData D showing the CPU usage used by executing M event sequences (k=1,...,K). k ={x1,x2,...x M Get}.
[0075] Next, the input data creation unit 11 processes each observation unit t acquired in step S1. k CPU usage D for M event sequences (k=1,...,K) k ={x1,x2,...x M Based on}, K M×M dimensional input matrices X of the above equation (1) k The input data creation unit 11 creates the input matrix X to create the training data (step S2). k Training data is created by assigning a correct label to each of the pre-defined normal patterns 1-N, warning patterns 1-O, and dangerous patterns 1-P, corresponding to one of the classes.
[0076] Next, the learning unit 12 uses the training data created in step S2 to learn features representing the correlation between CPU usage in multiple event sequences using the classification model 12A (step S3). More specifically, the learning unit 12 uses the training data created in step S2 to perform supervised learning of the classification model 12A, which consists of a CNN and SENet equipped with SE blocks 122. The learning unit 12 calculates the gradient by backpropagation or the like to minimize the value of the loss function L in equation (4) above, and updates the parameters of each layer included in the classification model 12A. At this time, not only the filter coefficients of the convolutional layers and the weight parameters of the fully connected layers are updated, but also the weight parameters of the fully connected layers included in SE blocks 122.
[0077] The memory unit 15 stores the trained classification model 12A constructed in the learning process of step S3 (step S4). The learning processes from step S1 to step S4 are performed based on the data of each information processing device 2.
[0078] Next, referring to the flowchart shown in FIG. 6, the inference process and load management process of the load management device 1 will be described. First, the acquisition unit 10 acquires the CPU usage rate for each execution of each of the M event sequences for each observation unit recorded in the information processing device 2 to be managed (step S10). More specifically, in step S10, the acquisition unit 10 sets one processing request or one transaction from start to end, or a plurality of events occurring within a predetermined time window as one observation unit, and obtains the CPU usage rate corresponding to each of the M event sequences included in the observation unit from the information processing device 2 via the network NW.
[0079] Next, for each observation unit t k (k = 1,..., K) of the M event sequences, based on the CPU usage rate D k ={x1, x2,... x M} corresponding to each of the M event sequences, the input matrix X k of the above formula (1) is sequentially created (step S11).
[0080] Next, the classification unit 13 reads out the learned classification model 12A from the storage unit 15, and uses the input matrix X k for each observation unit t k created in step S11 as an unknown input to be classified, gives it to the learned classification model 12A that has learned the correlation between the CPU usage rates of each of the plurality of event sequences, performs the operation of the learned classification model 12A, and outputs a classification result indicating any one of the first to third load levels (step S12). <00004I>
[0081] In step S12, the classification unit 13 is based on the CPU usage rate D k (k = 1,..., K) used by each execution of each of the M event sequences of each observation unit t k ={x1, x2,... x M} and the input matrix X kBy sequentially inputting into the sequentially learned classification model 12A, a classification result indicating any one of the normal patterns 1 to N, warning patterns 1 to O, and danger patterns 1 to P corresponding to the first to third load levels is output.
[0082] Next, the load management unit 14 aggregates the classification results in step S12 over a certain period (step S13). More specifically, in step S13, the load management unit 14 aggregates a plurality of observation units t k included within a certain period (for example, 30 minutes). For each observation unit t k it discriminates the pattern of the degree of computational load indicated by the classification result in step S12 corresponding to each observation unit t k and organizes the classification results showing the same pattern. Also, for the observation units t k where the classification results indicate warning patterns 1 to O or danger patterns 1 to P, the load management unit 14 counts the number of occurrences of events included in each such observation unit t
[0083] Next, the load management unit 14 performs threshold processing based on the aggregation of the classification results in step S13 (step S14). Specifically, in step S14, when the classification result for each observation unit t k within a certain period includes warning patterns 1 to O belonging to the second load level, if the total number of events included in the observation units t k corresponding to the classification results indicating warning patterns 1 to O calculated in step S13 exceeds a threshold value (for example, 50,000 events) (step S14: YES), a warning is notified to the operation center 3 via the network NW (step S15).
[0084] Also, in step S14, when the classification result for each observation unit t k within a certain period includes danger patterns 1 to P belonging to the third load level, the load management unit 14 aggregates the observation units t kIf the total number of events included exceeds a threshold (for example, 100,000 events) (step S14: YES), the load management device 1 issues an instruction to increase the number of virtual CPUs for the managed information processing device 2 via the network NW (step S15). The load management device 1 may be configured to issue instructions to an external operation center 3 or the like to increase the number of virtual CPUs, or to directly increase the processing resources for the managed information processing device 2.
[0085] As described above, the load management device 1 according to this embodiment takes input data based on the CPU usage rate corresponding to the execution of each of the M event sequences for each observation unit as unknown input, provides it to a trained classification model 12A that reflects the correlation between the CPU usage rates corresponding to the execution of each of the multiple event sequences, performs calculations on the trained classification model 12A, and outputs a classification result regarding the degree of computational load in the managed information processing device 2 for each observation unit. Therefore, the execution process of information processing that is involved in fluctuations in the amount of processing resources used can be grasped during operation.
[0086] Furthermore, according to the load management device 1 of this embodiment, the CPU usage data for M event sequences in each observation unit is treated as a vector, and the vector D and its transpose vector D T Based on the cross product, the correlation matrix generated allows for the extraction of variations in CPU usage across M event sequences as multidimensional features. This enables a highly accurate understanding of the information processing processes involved in fluctuations in processing resource usage.
[0087] Furthermore, according to the load management device 1 of this embodiment, the input matrix X is based on the CPU usage rate in multiple event sequences at a fixed period. k The data is sequentially fed to the pre-trained classification model 12A according to the observed units, and a classification result regarding the degree of computational load on the managed information processing device 2 is output. Therefore, the processing resource usage, which changes moment by moment, can be grasped in near real time, and in particular, load anomalies, such as when the CPU usage rate increases rapidly in a short period of time, can be estimated with high accuracy.
[0088] Furthermore, according to the load management device 1 of this embodiment, the input matrix X k By implementing SENet for multiple features representing the correlation between CPU usage rates of multiple event sequences included in the data, it becomes possible to dynamically adjust the importance of each feature. This relatively emphasizes features that contribute to the relationship between CPU usage rates of event sequences that characterize an increase in computational load, while suppressing the influence of features that do not contribute much to the determination of an increase in computational load. As a result, even when the configuration and execution status of event sequences fluctuate, it becomes possible to stably extract features representing an increase in computational load in the information processing device 2 and estimate the degree of computational load with high accuracy.
[0089] In the above-described embodiment, the case in which SENet is used as the classification model 12A was explained. However, the classification model 12A is not limited to SENet; for example, it may be a CNN-only configuration without a self-attention mechanism. Alternatively, the classification model 12A may be composed of a recurrent neural network (RNN) and a Transformer, autoencoder, or graph neural network (GNN) equipped with a self-attention mechanism.
[0090] Furthermore, the above-described embodiment explained the case where both the learning unit 12, which performs learning processing, and the classification unit 13, which performs classification processing, are mounted on the load management device 1. However, in addition to the case where the learning unit 12 and the classification unit 13 are provided as the same hardware configuration, the learning processing and classification processing can also be distributed by multiple servers, etc., on a network NW. When the learning unit 12 is provided on the learning server and the classification unit 13 is provided on the operation server, the present invention can also stand independently as a learning device in which the learning server is equipped only with the learning unit 12, and the purpose is to generate and output a trained classification model 12A.
[0091] Although embodiments of the load management device and load management method of the present invention have been described above, the present invention is not limited to the embodiments described above, and various modifications that a person skilled in the art can envision are possible within the scope of the invention described in the claims. [Explanation of Symbols]
[0092] 1...Load management device, 2...Information processing device, 10...Acquisition unit, 11...Input data creation unit, 12...Learning unit, 13...Classification unit, 14...Load management unit, 15...Storage unit, 101...Bus, 102...Processor, 103...Main memory, 104...Communication interface, 105...Auxiliary memory, 106...Input / output I / O, 107...Display device, 120...Input layer, 121...Hidden layer, 122...SE block, 123...Multiplication unit, 124...Output layer, NW...Network.
Claims
1. An acquisition unit configured to acquire the amount of processing resources used by the device in accordance with the execution of each of the sequence of state transitions of multiple events that represent the execution process for each observation unit of information processing performed by the device, A classification unit is configured to take input data based on the amount of processing resources used by the execution of each of the sequence of state transitions of the multiple events for each observation unit, acquired by the acquisition unit, as an unknown input, and to a trained classification model that reflects the correlation between the amounts of processing resources used by the execution of each of the sequence of state transitions of the multiple events, perform calculations on the trained classification model, and output a classification result regarding the degree of computational load in the device for each observation unit, A load management unit is configured to output a response to the computational load in the device according to the classification result output by the classification unit. A load management device equipped with the following features.
2. In the load management device according to claim 1, Furthermore, the learning unit is configured to learn features representing the correlation between the amounts of processing resources used in each of the sequences of state transitions of multiple events, using a classification model with training data in which patterns of computational load in the device for each observation unit are assigned as ground truth labels to the input data based on the amount of processing resources used in each of the sequences of state transitions of multiple events for each observation unit. A storage unit configured to store the learned classification model constructed by the learning unit, A load management device equipped with the following features.
3. In the load management device according to claim 1, Furthermore, the system includes an input data creation unit configured to create matrix data representing the correlation between the amounts of processing resources used by each of the sequences of state transitions of multiple events, based on the amount of processing resources used by each of the sequences of state transitions of multiple events for each observation unit. The classification unit provides the matrix data created by the input data creation unit as input data to the trained classification model. A load management device characterized by the following features.
4. In the load management device according to claim 3, The load management unit further issues a warning when, among the classification results for each observation unit output by the classification unit over a certain period of time, the total number of events included in the observation unit corresponding to the classification result showing the first pattern, which indicates that the computational load on the device is increasing, exceeds a first threshold. A load management device characterized by the following features.
5. In the load management device according to claim 4, The load management unit further instructs the device to increase processing resources if, among the classification results for each observation unit output by the classification unit over a certain period of time, a classification result showing a second pattern indicating that the computational load on the device is increasing even more than the first pattern, the total number of events included in the observation unit corresponding to the classification result showing the second pattern exceeds a second threshold. A load management device characterized by the following features.
6. In the load management device according to claim 2, The aforementioned classification model includes a convolutional neural network. A load management device characterized by the following features.
7. In the load management device according to claim 6, The classification model further includes an attention mechanism configured to emphasize the features extracted by the convolutional neural network by weighting them based on the importance of multiple feature maps that constitute the features. A load management device characterized by the following features.
8. A load management method performed by a computer, An acquisition step to acquire the amount of processing resources used by the device, corresponding to the execution of each state transition sequence of multiple events representing the execution process for each observation unit of information processing performed by the device, A classification step in which input data based on the amount of processing resources used by the execution of each of the sequence of state transitions of the multiple events for each observation unit, obtained in the acquisition step, is given as an unknown input to a trained classification model that reflects the correlation between the amounts of processing resources used by the execution of each of the sequence of state transitions of the multiple events, and calculations are performed on the trained classification model to output a classification result regarding the degree of computational load on the device for each observation unit, A load management step which outputs how to handle the computational load in the device according to the classification result output in the classification step, A load management method that includes the following features.
9. In the load management method described in claim 8, Furthermore, the learning step involves learning features that represent the correlation between the amounts of processing resources used in each of the sequences of state transitions of multiple events, using a classification model with training data in which patterns of computational load in the device for each observation unit are assigned as ground truth labels to the input data based on the amount of processing resources used in each of the sequences of state transitions of multiple events for each observation unit. A storage step in which the learned classification model constructed in the learning step is stored in the memory unit. A load management method that includes the following features.
10. In the load management method described in claim 8, Furthermore, the system includes an input data creation step that creates matrix data representing the correlation between the amounts of processing resources used by each of the sequences of state transitions of the multiple events, based on the amount of processing resources used by each of the sequences of state transitions of the multiple events for each observation unit. The classification step provides the matrix data created in the input data creation step to the trained classification model as input data. A load management method characterized by the following:
11. In the load management method described in claim 10, The load management step further issues a warning when, among the classification results for each observation unit output in the classification step over a certain period of time, the total number of events included in the observation unit corresponding to the classification result showing the first pattern, which indicates that the computational load on the device is increasing, exceeds a first threshold. A load management method characterized by the following:
12. In the load management method according to claim 11, The load management step further instructs the device to increase processing resources if, among the classification results for each observation unit output in the classification step over a certain period of time, the total number of events included in the observation unit corresponding to the classification result showing the second pattern, which indicates that the computational load on the device is increasing even more than the first pattern, exceeds a second threshold. A load management method characterized by the following:
Citation Information
Patent Citations
Computing system and determination method for parameter
JP2025008611A
Management device, management method and program
JP2025056903A
Abnormality management device and abnormality management method
JP7742001B1
Abnormality management device and abnormality management method
JP7773674B1
Process dumping method, device and program
JP2005301570A