WO2014203318A1 - 情報処理装置、情報処理方法、及び情報処理プログラム - Google Patents

情報処理装置、情報処理方法、及び情報処理プログラム Download PDF

Info

Publication number
WO2014203318A1
WO2014203318A1 PCT/JP2013/066630 JP2013066630W WO2014203318A1 WO 2014203318 A1 WO2014203318 A1 WO 2014203318A1 JP 2013066630 W JP2013066630 W JP 2013066630W WO 2014203318 A1 WO2014203318 A1 WO 2014203318A1
Authority
WO
WIPO (PCT)
Prior art keywords
processing units
diagnosis
predetermined
processing
power consumption
Prior art date
Application number
PCT/JP2013/066630
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 PCT/JP2013/066630 priority Critical patent/WO2014203318A1/ja
Priority to JP2015522394A priority patent/JP6070840B2/ja
Publication of WO2014203318A1 publication Critical patent/WO2014203318A1/ja

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/22Detection or location of defective computer hardware by testing during standby operation or during idle time, e.g. start-up testing
    • G06F11/24Marginal checking or other specified testing methods not covered by G06F11/26, e.g. race tests

Definitions

  • the disclosed technology relates to an information processing apparatus, an information processing method, and an information processing program.
  • a system that performs processing with a plurality of CPUs a system that includes a plurality of system boards (SB) including one or a plurality of CPUs and executes processing is known.
  • SB system boards
  • a partition technology is known in which a resource (CPU, memory, I / O, etc.) of one server is divided into a plurality of partitions, and an independent OS (Operating System) or application is operated on each partition.
  • a self-diagnosis program (for example, POST: Power On Self Test) is stored in advance on each of the plurality of system boards.
  • a diagnosis process by a self-diagnosis program is executed on each of the plurality of system boards.
  • a process of checking peripheral devices, initializing peripheral devices, and verifying BIOS is executed.
  • the diagnosis process may be executed on each of the plurality of system boards.
  • the power consumption of the entire system increases according to the number of system boards to be operated.
  • it is required to suppress the power consumption of the computer.
  • an increase in cost for example, an increase in running cost
  • the power value corresponding to the functional unit of the semiconductor integrated circuit is obtained from the table, and when the functional unit is operated, the power operates within the allowable range.
  • Techniques that grant permission are known.
  • the change in power can be suppressed by giving the operation permission to the functional unit.
  • a technique for reducing the power consumption of a computer when a task such as POST is registered and executed, it is determined whether or not real-time processing is possible.
  • a technique for restricting task registration is known. By restricting registration of tasks such as POST when real-time processing is difficult, power consumption by the processor can be reduced.
  • an object is to execute diagnostic processing in a short time while suppressing power consumption.
  • information indicating each of a plurality of processing units including a self-diagnosis unit that executes a predetermined diagnosis process relating to the operation of the self is included in the power consumption when the predetermined diagnosis process is performed in each of the plurality of processing units.
  • the control unit calculates the total power consumption in the plurality of processing units in advance when predetermined diagnosis processing is executed in parallel for some of the processing units.
  • the processing order of the plurality of processing units is set so as not to exceed the determined upper limit value. Further, the control unit controls execution of predetermined diagnostic processing in the plurality of processing units in accordance with the set processing order.
  • diagnostic processing can be executed in a short time while suppressing power consumption.
  • FIG. 1 shows an example of an information processing apparatus 10 according to the present embodiment.
  • the information processing apparatus 10 performs various processes by each of the plurality of processing units.
  • the information processing apparatus 10 includes a plurality of processing units 12, a control unit 14, and a storage unit 16.
  • a plurality of processing units 12 included in the information processing apparatus 10 are targeted to individual processing units 12, they are expressed as processing units 12A to 12N, and the processing units 12 are distinguished from each other.
  • the plurality of processing units 12 are each connected to the communication line 18.
  • Each of the plurality of processing units 12 is connected to the control unit 14 so as to be able to exchange data and commands via the maintenance bus 20.
  • Each of the processing units 12 includes a diagnosis unit 24.
  • diagnosis units 24 included in each of the processing units 12 are individually targeted, they are represented as diagnosis units 24A to 24N, and are handled separately.
  • the information processing apparatus 10 is an example of an information processing apparatus in the disclosed technology
  • the processing unit 12 is an example of a processing unit in the disclosed technology.
  • the control unit is an example of the control unit 14 in the disclosed technology
  • the diagnosis unit 24 is an example of the self-diagnosis unit in the disclosed technology.
  • the OS when the power is turned on, after the self-diagnosis process is executed in each of the plurality of processing units 12, the OS is started and various processes handled by each of the plurality of processing units 12 are executed.
  • the time from when the power is turned on until the self-diagnosis processing of the plurality of processing units 12 is completed is shortened. Is preferred.
  • the control unit 14 sets the processing order of each self-diagnosis process with reference to the table 26 stored in the storage unit 16 in order to efficiently process the self-diagnosis process executed in each of the plurality of processing units 12. To do.
  • the storage unit 16 stores in advance a table 26 in which each processing unit 12 is registered in association with each power consumption of the processing unit 12.
  • the corresponding diagnosis unit 24 executes a self-diagnosis process for confirming the peripheral device, initializing the peripheral device, or verifying the BIOS. . That is, the control unit 14 sets the processing order of the self-diagnosis processing executed in each of the processing units 12A to 12N based on the table 26 so as not to exceed a predetermined upper limit value of power consumption.
  • Each of 12A to 12N is controlled.
  • the self-diagnosis process executed by each of the processing units 12A to 12N is performed by any one of the processing units 12A to 12N or at least a part of the processing units (a plurality of processing units among the processing units 12A to 12N). Is executed.
  • the self-diagnosis processing by the plurality of processing units 12 among the processing units 12A to 12N is executed in parallel. Therefore, the total power consumption in the plurality of processing units 12 does not exceed the upper limit value, and the self-diagnosis processing is executed in parallel by the plurality of processing units 12.
  • the information processing apparatus 10 can execute the self-diagnosis process in a short time while suppressing power consumption.
  • the processing order of each self-diagnosis process is set by the control unit 14.
  • the disclosed technique is not limited to setting the processing order of each self-diagnosis process by the control unit 14.
  • each of the processing units 12 may set the processing order of the self-diagnosis processing of the own device.
  • FIG. 2 shows an example of the information processing apparatus 10 in which each of the processing units 12 sets the processing order of the self-diagnosis processing of the own device.
  • the information processing apparatus shown in FIG. 2 has the same configuration as the information processing apparatus shown in FIG.
  • the information processing apparatus 10 includes a plurality of processing units 12 and a storage unit 16.
  • Each of the plurality of processing units 12 includes a control unit 22 and a diagnosis unit 24.
  • control units 22 included in each processing unit 12 are individually targeted, they are described as control units 22A to 22N, and are handled separately.
  • the control unit 22 sets the processing order of the self-diagnosis processing executed by the own device with reference to the table 26 stored in the storage unit 16.
  • the control unit 22B specifies the processing unit 12A that is executing the self-diagnosis process.
  • the control unit 22B refers to the table 26, acquires the power consumption of the processing unit 12A, and performs a process to execute the self-diagnosis process when the added value of the power consumption of the control unit 22B does not exceed the upper limit value of the power consumption.
  • the processing order of the unit 12B is set.
  • the self-diagnosis processing is executed in parallel by the processing units 12A and 12B.
  • the processing order of the processing unit 12B is set to execute the self-diagnosis process next.
  • the power consumption by execution of the self-diagnosis process does not exceed the upper limit value.
  • the plurality of processing units 12 execute the self-diagnosis process in parallel, and the self-diagnosis process can be completed in a short time.
  • FIG. 3 shows an example in which the information processing apparatus 10 is realized by the computer system 40.
  • the computer system 40 includes a plurality of system boards (hereinafter referred to as SB) 42, a system control unit (hereinafter referred to as SCF (System Control Facility)) 44, and a console 46.
  • SB system boards
  • SCF System Control Facility
  • a plurality of SBs 42 are regarded as functional units that perform processing combined by the plurality of SBs 42, and the configuration of the functional units is referred to as a domain 38 and will be described.
  • SBs 42A to 42N When a plurality of SBs 42 included in the domain 38 are targeted to individual SBs 42, they are represented as SBs 42A to 42N, and the SBs 42 are distinguished from each other.
  • each of the SBs 42A to 42N may be used in the description with reference numerals in accordance with the order in the domain 38.
  • SB42A is denoted as SB # 0
  • SB42B is denoted as SB # 1
  • SB42C is denoted as SB # 2.
  • Each of the plurality of SBs 42 included in the domain 38 is connected to the crossbar 48 so as to be able to exchange commands and data with each other.
  • the crossbar 48 in order to connect the SBs 42 to each other, an example using a crossbar that can be connected by dynamically switching a plurality of vertical and horizontal communication paths will be described.
  • the present invention is not limited to the crossbar. It may be a communication line. As an example, it is possible to use an interconnect used for data transmission between a network line, a semiconductor circuit, or between components in a computer.
  • Each of the plurality of SBs 42 included in the domain 38 includes a system controller (hereinafter referred to as SC) 54.
  • a first CPU 56 and a second CPU 58 are connected to the SC 54.
  • the first CPU 56 and the second CPU 58 may be used for explanation with reference numerals in accordance with the order in the SB 42.
  • the first CPU 56 in the SB 42A is represented as CPU # 00
  • the second CPU 58 is represented as CPU # 01.
  • the SC 54 of each SB 42 is connected by a crossbar 48, and any CPU in the domain 38 can access the resources of other SBs 42.
  • a memory module (hereinafter referred to as DIMM) 62 is connected to the SC 54 via a memory access controller (hereinafter referred to as MAC) 60. Further, an input / output port (I / O) 64 and a system control interface (hereinafter referred to as SCF-I / F) 66 are connected to the SC 54.
  • DIMM memory access controller
  • MAC memory access controller
  • I / O input / output port
  • SCF-I / F system control interface
  • the SCF-I / F 66 includes a static ram (hereinafter referred to as SRAM) 68 and a flash memory (hereinafter referred to as FMEM) 70.
  • SRAM 68 is used as an area for temporarily storing information when information is exchanged between the SCF 44 and the domain 38.
  • the FMEM 70 stores a diagnostic program (for example, POST) 74 that is started when the power is turned on.
  • POST diagnostic program
  • the SCF-I / F 66 of the SB 42 A includes a timer 72.
  • the timer 72 may be provided only in the SB 42A, but may be provided in each SB 42.
  • Each SCF-I / F 66 of the plurality of SBs 42 is connected to the SCF 44 via the maintenance bus 50.
  • the maintenance buses 50A to 50N are described, and the maintenance buses 50 are distinguished from each other.
  • a serial bus can be used as an example of the maintenance bus 50.
  • the SCF-I / F 66 included in each of the plurality of SBs 42 is connected to the SCF 44 via the maintenance bus 50.
  • the SCF 44 controls each SB 42 and exchanges information with the domain 38 via the maintenance bus 50. Further, when the domain 38 transmits various commands to the SCF 44, it is performed via the maintenance bus 50.
  • each SB 42 includes one SC 54 and one SCF-I / F 66 as the SB 42 included in the domain 38.
  • the quantity of the CPU 56 (58), the memory (DIMM 62), and the input / output port 64 differs depending on the configuration based on the functions realized in the SB42. Therefore, although the details will be described later, the processing time of the self-diagnosis process differs depending on the configuration of the SB42.
  • the SCF 44 includes a CPU 76, an input / output port (I / O) 78, a memory 80, and a storage unit 82, which are connected to each other via a bus 81.
  • the storage unit 82 of the SCF 44 stores a table 84 and a control program 85.
  • the table 84 registers at least the power consumption of each of the SBs 42A to 42N (details will be described later).
  • the control program 85 is a program for executing various controls such as turning on the power of each of the SBs 42A to 42N. Further, the control program 85 includes a program for realizing a function of setting a processing order for efficiently performing the self-diagnosis processing executed in each of the SBs 42A to 42N.
  • the storage unit 84 can be realized by an HDD (Hard Disk Drive), a flash memory, or the like.
  • the SCF 44 is connected to the console 46 via the network 89.
  • a network such as the Internet or a LAN can be used.
  • the console 46 includes a CPU 90, a memory 92, a storage unit 94, a display device 96 such as a display, an input device 98 such as a keyboard and a mouse, and an input / output port (I / O) 99, which are connected via a bus 91. Are connected to each other.
  • the storage unit 94 of the console 46 stores a console program.
  • the console program is a program for controlling the SCF 44, for example.
  • the storage unit 94 can be realized by an HDD (Hard Disk Drive), a flash memory, or the like.
  • FIGS. 4 to 7 show an example of the table 84 stored in the storage unit 82 of the SCF 44.
  • FIG. 4 shows an example of the power consumption table 86 for each SB 42 included in the table 84.
  • the power consumption table 86 is registered in association with the power consumption when executing the self-diagnosis process in each SB 42 in each SB 42.
  • the self-diagnosis process includes a plurality of diagnosis phases (diagnosis a to diagnosis f) as small diagnosis processes
  • the power consumption table 86 includes a plurality of diagnosis phases included in the self-diagnosis process.
  • a power consumption value for each SB 42 is associated with each.
  • a value obtained by measuring each power consumption of the SB 42 in advance can be registered.
  • FIG. 5 shows an example of the diagnostic state execution table 87 for each SB 42 included in the table 84.
  • the diagnosis state execution table 87 is a table for temporarily recording the execution state of the self-diagnosis process executed in each of the SBs 42.
  • the diagnosis state execution table 87 is an example in which “in progress” is described as information indicating that the self-diagnosis process is being executed in each SB 42, and “done” is described as information indicating the end of the self-diagnosis process. It is shown.
  • a blank in the diagnosis state execution table 87 indicates that the self-diagnosis process of the corresponding SB 42 has not been performed.
  • a predetermined mark for example, black circle
  • a predetermined mark for example, white circle
  • FIG. 6 shows an example of the unit power consumption table 88 regarding the SB 42 included in the table 84.
  • the value of power consumption for each device included in the SB 42 is registered.
  • a device unit included in the SB 42 an item in which one CPU, one memory, one input / output port (I / O), and other devices included in the SB 42 are collected is used. ing.
  • the unit power consumption table 88 as a self-diagnosis process executed in each SB 42, the power consumption values in units of devices in the SB 42 are associated with a plurality of diagnosis phases (diagnosis a to diagnosis f).
  • diagnosis phases diagnosis phases
  • diagnosis a and diagnosis b as diagnosis phases included in the self-diagnosis process correspond to the diagnosis process of the CPU.
  • the diagnosis c corresponds to a memory diagnosis process.
  • Diagnosis d corresponds to CPU diagnosis processing using a memory.
  • the diagnosis e corresponds to an I / O diagnosis process.
  • the diagnosis f corresponds to an I / O diagnosis process using a memory.
  • the power consumption value of the diagnosis c when the memory is being diagnosed, the power consumption of the memory is large and the other power consumption is small.
  • diagnosis e when I / O diagnosis is performed, the power consumption of IO is large and the other power consumption is small.
  • the CPU diagnosis using the memory increases the power consumption of the CPU and the memory.
  • the IO diagnosis using the memory increases the power consumption of the IO and the memory. Note that the power consumption of the SC 54 and the SCF-I / F 66 is included in each of the SBs 42, and thus is included in the power consumption of other items in 1SB.
  • FIG. 7 shows an example of the device configuration table 89 included in each SB 42 included in the table 84.
  • a value indicating the number of devices included in each SB 42 is registered in the configuration table 89.
  • the items of the number of CPUs, the number of memory groups, and the number of input / output ports corresponding to each item of the device unit shown in FIG. 6 are used as an example.
  • the number of items including other devices included in the SB 42 shown in FIG. 6 is one, it is omitted in FIG.
  • each SB 42 is associated with a value indicating the quantity of the corresponding device.
  • a value obtained by acquiring the number of devices included in the SB 42 in advance can be registered.
  • the power consumption when executing the self-diagnosis process can be obtained.
  • the storage unit 82 of the SCF 44 can store an upper limit value of power consumption when executing the self-diagnosis process.
  • the case where the upper limit value of power consumption is stored in the storage unit 82 of the SCF 44 will be described, but the disclosed technique is not limited to storing the upper limit value of power consumption.
  • the value input by the input device 98 of the console 46 may be acquired as the upper limit value of power consumption.
  • the upper limit value of power consumption has a plurality of step values, and each step value may be used. For example, instead of replacing the upper limit value of power consumption with three values of a recommended value, a dangerous value, and a limit value, the power consumption can be managed in three stages of a recommended value, a dangerous value, and a limit value.
  • Each of the plurality of SBs 42 (42A to 42N) partially corresponds to the processing unit 12 (12A to 12N) in FIG.
  • the first CPU 56 or the second CPU 58 of the SB 42 operates as the processing unit 12 by the diagnostic unit 24 shown in FIG. 1 by reading out the diagnostic program 74 of the FMEM 70 from the SCF-I / F 66 and developing it in the SRAM 68 and executing the diagnostic program 74.
  • the diagnostic program 74 of the FMEM 70 is an example of a partial process of the information processing program in the disclosed technology. That is, the diagnostic program 74 of the FMEM 70 is an example of a part of an information processing program for causing the first CPU 56 or the second CPU 58 to function as a part of the information processing apparatus.
  • the CPU 76 of the SCF 44 operates as the control unit 14 shown in FIG. 1 by reading out the control program 85 from the storage unit 82, developing it in the memory 80, and executing the control program 85.
  • the storage unit 82 corresponds to the storage unit 16 shown in FIG. 1
  • the table 84 corresponds to the table 26 shown in FIG.
  • the control program 85 is an example of a partial process of the information processing program in the disclosed technology. That is, the control program 85 is an example of a part of an information processing program for causing the SCF 44 to function as a part of the information processing apparatus.
  • the SCF 44 executes a plurality of SB 42 included in the domain 38.
  • FIG. 8 shows an example of the processing flow in the SCF 44.
  • the SCF 44 performs a preparation process for the SB 42 after the power is turned on, and in step 102, the SCF 44 executes a startup process for each of the plurality of SBs 42 included in the domain 38.
  • FIG. 9 shows an example of the flow of the preparation process in SCF 44 (the process of step 100 shown in FIG. 8).
  • the SCF 44 refers to the configuration table 89 (FIG. 7) and acquires the configuration of each SB 42 included in the domain 38.
  • the SCF 44 refers to the unit power consumption table 88 (FIG. 6) and acquires the power consumption value for each device for each diagnosis phase.
  • the total power consumption for each of the acquired configurations of the SB 42 is calculated.
  • information indicating the power consumption when executing the self-diagnosis process (execution of the diagnosis phase) in each SB 42 is associated with the information indicating each SB 42. Accordingly, the information indicating the power consumption when executing the self-diagnosis process (execution of the diagnostic phase) in each SB 42 is stored as the power consumption table 86 (FIG. 4). can do.
  • step 114 the SCF 44 stores the power consumption table 86 (FIG. 4) stored in step 112 and the power consumption upper limit value Eth in the SRAM 68 of each SB 42.
  • the diagnosis state execution table 87 can be stored in the SRAM 68 of each SB42.
  • SB42 when an instruction to execute the startup process is received from the SCF 44, the power is turned on and the self-diagnosis process is executed.
  • FIG. 10 shows an example of the flow of self-diagnosis processing in each of the plurality of SBs 42 included in the domain 38.
  • the SB 42 obtains information stored by the SCF 44.
  • the information stored by the SCF 44 is information indicating the power consumption table 86 (FIG. 4) stored in the SRAM 68 of the SB 42 and the upper limit value Eth of power consumption.
  • the diagnosis phases of diagnosis a to diagnosis F are sequentially executed as self-diagnosis processing.
  • step 122 the SB 42 executes the first diagnosis phase (diagnosis a).
  • the process is executed so that the total power consumption of each SB 42 does not exceed the upper limit value Eth (details will be described later).
  • the process proceeds to the next process to process the next diagnosis phase.
  • step 124 the SB 42 determines whether or not all diagnostic phases of the self-diagnosis process have been completed.
  • step 124 it is possible to determine whether or not the entire diagnosis phase has ended by referring to the corresponding SB 42 column of the diagnosis state execution table 87 (FIG. 5). If a negative determination is made in step 124, the process proceeds to step 126, and after performing the diagnosis process of the next diagnosis phase, the process returns to step 124. On the other hand, if an affirmative determination is made in step 124, this processing routine ends.
  • FIG. 11 shows an example of a process flow in the diagnosis phase of the self-diagnosis process (self-diagnosis process of each of the plurality of SBs 42) executed in the domain 38.
  • step 132 the total power consumption (Etotal) of all the current SBs 42A to 42N is obtained, and the predicted power consumption (Emy) when the SB 42A executes the self-diagnosis process is acquired.
  • the total power consumption (Etotal) can be obtained by adding the power consumption of the SB 42 that is executing the self-diagnosis process and the power consumption of the SB 42 that is ending and waiting. That is, the sum of the power consumption is the value of the power consumption for the SB 42 that is executing the diagnostic process on the diagnosis state execution table 87 (FIG.
  • the predicted power consumption (Emy) may be obtained by referring to the power consumption table 86 (FIG. 4) and acquiring the power consumption of the target SB 42 (here, SB 42A). In step 132, information indicating the upper limit value Eth of the power consumption stored by the SCF 44 is also acquired.
  • step 134 it is determined whether or not the upper limit value Eth of the power consumption is exceeded when the diagnosis process of the corresponding diagnosis phase is not executed and the diagnosis process of the corresponding diagnosis phase is executed (Etotal + Emy). ⁇ Eth). If the determination in step 134 is negative, the power consumption exceeds the upper limit value Eth by execution of the diagnosis process of the diagnosis phase by SB42A, so the process proceeds to step 140 without executing the diagnosis process of the diagnosis phase by SB42A. On the other hand, in the case of an affirmative determination in step 134, there is a margin in power consumption even if the diagnosis process of the diagnosis phase by SB42A is executed. Therefore, in step 136, the diagnosis state execution table 87 (FIG.
  • step 136 the timer 72 that functions as an abnormality monitoring timer, the details of which will be described later, is reset.
  • the SB 42 where the diagnosis process of each diagnosis phase is first executed sets a predetermined time Tth. That is, in the example of the process shown in FIG. 11, the predetermined time Tth is set in the timer 72 in the SB 42A.
  • the diagnosis process of the diagnosis phase is executed in another SB 42, the timer 72 of the SB 42A is reset by the other SB 42.
  • step 138 execution of the diagnosis process of the corresponding diagnosis phase is started in SB42A, and the process proceeds to step 140.
  • step 140 the diagnosis state execution table 87 (FIG. 5) is referred to, and it is determined whether or not the diagnosis process of the diagnosis phase corresponding to the target SB 42 (here, SB 42A) has been completed. If an affirmative determination is made in step 140, in step 142, the diagnosis state execution table 87 (FIG. 5) is updated to information indicating the end of the self-diagnosis process (“completed”), and the process proceeds to step 144. On the other hand, if a negative determination is made in step 140, the process proceeds to step 144 as it is.
  • step 144 it is determined whether or not the variable i is a value indicating the maximum number of SBs 42 included in the domain 38. If an affirmative determination is made in step 144, the process proceeds to step 148, and if a negative determination is made, the process proceeds to step 146. In step 146, the variable i is incremented, and the process returns to step 132. If an affirmative determination is made in step 144, it is determined in step 148 whether or not the diagnosis process of the corresponding diagnosis phase has been completed for all the SBs 42. If an affirmative determination is made in step 148, the processing routine is terminated as it is.
  • step 148 is determined by determining whether or not all the columns are information (“Done”) indicating the end of the self-diagnosis process for the diagnosis phase in the diagnosis state execution table 87 (FIG. 5). be able to.
  • SB42 is set as the target SB42 in the order of SB42A (SB # 0), SB42B (SB # 1),.
  • the order of the SBs 42 is not limited to the above description.
  • the SB 42 may be designated at random, or the priority order may be determined and the SB 42 may be designated.
  • the priority order can be determined based on the power consumption of the diagnosis phase process in each SB42.
  • the processing shown in FIG. 11 may be executed by the SCF 44, and the SCF 44 may output an instruction to start diagnostic processing in each of the SBs 42A to 42N.
  • FIG. 12 and 13 show an example of a time-series flow of the diagnosis process for each diagnosis phase in the self-diagnosis process in each of the plurality of SBs 42 in the domain 38.
  • FIG. 12 and 13 illustrate a case where the self-diagnosis process is performed with 600 W set as the upper limit value of power consumption.
  • 12 and 13 show cases where diagnosis phases of diagnosis a to diagnosis F are sequentially executed as self-diagnosis processing. As shown in FIG. 12 and FIG. 13, the execution of the self-diagnosis process ends in units of elapsed time 1 to 56. Therefore, the power consumption does not exceed the upper limit value for the self-diagnosis process.
  • FIG. 14 shows another example of the time-series flow of the diagnosis process for each diagnosis phase in the self-diagnosis process in each of the plurality of SBs 42 in the domain 38.
  • FIG. 14 shows a case where the self-diagnosis process is performed with 800 W set as the upper limit value of power consumption.
  • the execution of the self-diagnosis process ends in units of elapsed time 1 to 42. Therefore, regarding the execution of the self-diagnosis process, the power consumption does not exceed the upper limit value, and the self-diagnosis process can be completed in a short time.
  • FIG. 15 shows a case where the self-diagnosis process is performed without setting the upper limit value of power consumption.
  • the self-diagnosis process since the degree of parallelism by parallel processing is improved, the execution of the process is completed in a short time in units of elapsed time 1 to 24. However, since the power consumption due to the execution of the self-diagnosis process increases, it can be understood that the self-diagnosis process according to the present embodiment shown in FIGS. 12 to 14 is effective.
  • a process for determining an abnormality in the self-diagnosis process using the timer 72 of the SB 42A will be described.
  • a timeout determination process for determining an abnormal state may be provided to monitor the abnormal state.
  • the monitoring of the abnormal state includes a so-called runaway state in which the SB 42 does not accept any control or the process is suspended.
  • the execution time of the self-diagnosis process may tend to be extended.
  • a determination process (hangup monitoring process) suitable for executing a self-diagnosis process with an upper limit value of power consumption is executed. That is, using the timer 72 of the SB 42A, hang-up monitoring at the time of self-diagnosis processing in the domain 38 is executed.
  • the timer 72 of the SB 42A starts time measurement.
  • the SCF-I / F 66 indicates that the predetermined time Tth has elapsed (timed out) in the SCF 44. Will be notified.
  • the timer 72 is periodically reset during the self-diagnosis process in each of the SBs 42 (the process of step 136 shown in FIG. 11). Due to the resetting of the timer 72, the SCF-I / F 66 performs processing so that a notification of information indicating that a time-out has not occurred is not output to the SCF 44.
  • FIG. 16 and 17 show an example of the process of the hang-up monitoring process when the self-diagnosis process is performed with the upper limit value of power consumption not set, in time series.
  • FIG. 16 shows a case where each SB 42 is operating normally
  • FIG. 17 shows a case where execution of the self-diagnosis process is stopped (hanged up) in any of the SBs 42.
  • the timer 72 may be set to a predetermined time Tth that exceeds the maximum diagnosis time of the diagnosis phase at the start of each diagnosis phase.
  • the maximum value of the diagnosis time in the diagnosis process in any diagnosis phase is 4 unit hours. If 5 unit times are set in the timer 72 at the start of each diagnosis phase, the time measurement by the timer 72 is performed. Therefore, the predetermined time Tth is not exceeded (timed out).
  • the resetting of the timer 72 is not executed, so that information indicating that the SCF 44 has timed out is stored. Be notified.
  • the processing time of each diagnosis phase varies dynamically depending on the number of devices of each SB 42 and a preset upper limit value of power consumption. For example, when the upper limit value of power consumption is 600 W, the processing time of diagnosis a phase is 10 unit hours (see FIG. 12), and when the upper limit value of power consumption is 800 W, processing of diagnosis a phase The time is 8 unit hours (see FIG. 14). Therefore, when the timer 72 is set only once at the start of the diagnosis process in each diagnosis phase, the predetermined time Tth of the timer 72 that does not time out is determined according to the device configuration of the SB 42.
  • the predetermined time Tth is obtained as a unit time by multiplying (the maximum value of the diagnosis time of the diagnosis process) by (the number of SBs 42).
  • the predetermined time Tth set in the timer 72 is a value exceeding 16 unit time, For example, 17 unit time may be set.
  • FIG. 18 shows an example of the process of executing the hang-up monitoring process by setting the predetermined time Tth once when the diagnosis phases are sequentially executed.
  • Tth As shown in FIG. 18, at the start of the diagnosis process in the diagnosis phase, 17 unit times are set as the predetermined time Tth. However, setting the predetermined time Tth to 17 unit time increases the processing time until the SCF 44 confirms that it has hung up during execution of the self-diagnosis processing.
  • the diagnosis processing time is 10 unit hours. Therefore, if 11 unit hours is set in the timer 72, it is possible to confirm that the processing time is 11 unit hours.
  • the timer 72 is not reset only once at the start of each diagnosis phase, but is reset when each SB 42 starts the diagnosis process of each diagnosis phase (FIG. 11). Step 136 shown in FIG.
  • the predetermined time Tth set in the timer 72 may be set to a value exceeding the maximum value of the diagnosis time, so that the hang-up can be confirmed more quickly.
  • FIG. 19 and 20 show an example of the process of the hang-up monitoring process in the time series when the self-diagnosis process for resetting the timer 72 is performed when the diagnosis process of each diagnosis phase is started.
  • FIG. 19 shows a case where each SB 42 is operating normally
  • FIG. 20 shows a case where the execution of the self-diagnosis process is stopped (hanged up) in SB 42B (SB # 1).
  • a unit time of 5 is set as the predetermined time Tth.
  • the timer 72 is reset, so that the predetermined time Tth does not elapse (time out) due to the time measurement by the timer 72.
  • the disclosed technique is not limited to resetting the timer 72.
  • the timeout timer 72 may be reset at the start of diagnosis in the diagnosis phase in each SB 42 and the predetermined time Tth may be measured.
  • each SB 42 autonomously acquires the right to execute the self-diagnosis process.
  • the process routine shown in FIG. 21 is executed in each SB 42 instead of the process routine shown in FIG.
  • a lock area that can be referred to by each SB 42 is provided in the SCF-I / O 66 of the SB 42A, and information indicating the lock acquisition SB 42 is stored.
  • the information indicating the lock acquisition SB 42 is information indicating any one of the SBs 42A to 42N that are executing the exclusive process for autonomously acquiring the right to execute the self-diagnosis process.
  • any one of the SBs 42A to 42N autonomously acquires the right to execute the self-diagnosis process. Can be executed.
  • FIG. 21 shows an example of the diagnosis process flow in the diagnosis phase in the self-diagnosis process executed in each of the SBs 42 according to the modification.
  • SB # 0 the flow of the diagnostic process in the diagnostic phase executed in SB42A (SB # 0) will be described.
  • step 160 the SB 42A executes a lock acquisition process.
  • the lock acquisition process it is determined whether or not information indicating SB42A can be stored in the lock area. If the information indicating the lock acquisition SB 42 is reset, the information indicating the SB 42 A is stored in the lock area, and the process proceeds to step 162. On the other hand, when the information indicating any one of the SBs 42 has already been stored in the information indicating the lock acquisition SB42, the process waits until the lock is released.
  • step 162 the SB 42A obtains the total power consumption (Etotal) of all the current SBs 42A to 42N in the same manner as the process in step 132 shown in FIG.
  • the power consumption (Emy) is acquired.
  • step 164 it is determined whether or not the power consumption upper limit value Eth is exceeded when the SB 42A executes the diagnosis process of the diagnosis phase (Etotal + Emy ⁇ Eth). If the determination in step 164 is negative, the power consumption exceeds the upper limit value Eth by execution of the diagnosis process of the diagnosis phase by SB42A. Therefore, the process proceeds to step 166 without executing the diagnosis process of the diagnosis phase by SB42A.
  • step 166 the lock release is processed, and after waiting for a fixed time in the next step 168, the process returns to step 162.
  • step 164 determines whether an affirmative determination is made in step 164, there is a margin in power consumption even if the diagnosis process of the diagnosis phase by SB42A is executed. Accordingly, the process proceeds to step 170, and the diagnosis state execution table 87 (FIG. 5) is updated with information indicating that the self-diagnosis process is being executed (“in progress”), similarly to the process of step 136 shown in FIG.
  • step 170 the timer 72 functioning as an abnormality monitoring timer is reset.
  • step 172 the lock release is processed, and in the next step 174, execution of the diagnosis process in the diagnosis phase in SB42A is started, and the process proceeds to step 176.
  • each SB 42 autonomously executes the exclusive process for acquiring the right to execute the self-diagnosis process, so that each SB 42 performs the self-diagnosis process without considering the upper limit value of power consumption. Parallel processing can be suppressed.
  • the power consumption at the time of execution of the self-diagnosis process in which the SCF 44 varies depending on the configuration of each SB 42 included in the domain 38 is obtained, and the power consumption is within the range up to the upper limit value of power consumption.
  • the self-diagnosis process is executed. Thereby, the power consumption in the self-diagnosis process can be suppressed while shortening the processing time of the self-diagnosis process.
  • the power consumption value can be given according to the SB 42 when the self-diagnosis process is performed by the preparation process of the SCF 44, and the parallelism when the self-diagnosis process is performed in the plurality of SBs 42 is improved. Can do.
  • the program in the disclosed technology can be provided in a form recorded on a recording medium such as a CD-ROM or a DVD-ROM.

Landscapes

  • Engineering & Computer Science (AREA)
  • General Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Computer Hardware Design (AREA)
  • Quality & Reliability (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Test And Diagnosis Of Digital Computers (AREA)

Abstract

 1つの側面では、消費電力を抑制しつつ短時間で診断処理を実行する。 制御部(14)は、複数の各処理部(12)で実行される自己診断処理を効率よく処理させるために、記憶部(16)に記憶されるテーブル(26)を参照して消費電力の上限値を超えないように各自己診断処理の処理順序を設定する。処理部(12)では、制御部(14)による制御に従って、該当する診断部(24)において自己診断処理が実行される。処理部(12A~12N)で実行される自己診断処理は、処理部(12A~12N)の何れか1つの処理部12または少なくとも一部の処理部(処理部12A~12Nのうちの複数の処理部)で並列処理により、実行される。従って、情報処理装置(10)では、消費電力を抑制しつつ短時間で自己診断処理を実行できる。

Description

情報処理装置、情報処理方法、及び情報処理プログラム
 開示の技術は、情報処理装置、情報処理方法、及び情報処理プログラムに関する。
 コンピュータによる処理を高速化するために、複数のCPUで処理を行うことが一般的になってきている。複数のCPUで処理を行うシステムとして、1または複数のCPUを備えたシステムボード(SB)を複数備えて、処理を実行するシステムが知られている。例えば、1台のサーバのリソース(CPUやメモリ、I/Oなど)を複数のパーティションに分割し、それぞれに独立したOS(Operating System)やアプリケーションを動作させるパーティション技術が知られている。
 複数のシステムボードの各々には自己診断プログラム(例えば、POST:Power On Self Test)が予め格納されている。複数のシステムボードに電源が投入されると、複数のシステムボードの各々において自己診断プログラムによる診断処理が実行される。診断処理の実行では、例えば、OSの起動前に、周辺機器を確認したり、周辺機器を初期化したり、BIOS(Basic Input/Output System)を検証したりする処理が実行される。
 ところで、コンピュータによる処理を迅速に開始するためには、電源を投入してから診断処理が終了するまでの時間を短縮することが好ましい。複数のシステムボードを備えたシステムにおいて診断処理の処理時間を短縮するためには、複数のシステムボードの各々において、診断処理を実行すればよい。ところが、複数のシステムボードを備えたシステムにおいて、複数のシステムボードの各々による診断処理が実行される場合、稼働させるシステムボードの数に応じて、システム全体の消費電力が増加する。一方、最近では、供給される商用電力の不足に対応するために、コンピュータの消費電力を抑制することが求められている。また、コンピュータの消費電力増大による費用の増加(例えばランニングコスト増大)を抑制するため、コンピュータの消費電力を抑制することが求められている。
 例えば、コンピュータの消費電力を抑制する技術として、半導体集積回路の機能単位に対応する電力の値をテーブルから取得し、機能単位を動作させた場合に電力が許容範囲のときに、機能単位に動作の許可を与える技術が知られている。機能単位を動作させた場合の電力が許容範囲のときに、動作の許可を機能単位に与えることで、電力の変動を抑制できる。
 また、コンピュータの消費電力を抑制する技術の一例として、POST等のタスクを登録して実行する場合、実時間処理が可能か否かを判断し、実時間処理が困難なときに、POST等のタスクの登録を制限する技術が知られている。実時間処理が困難なときにPOST等のタスクの登録を制限することによって、プロセッサによる電力消費を削減することができる。
特開2003-202935号公報 特開2002-99433号公報
 しかしながら、コンピュータの消費電力を抑制するために、動作させた場合の電力が許容範囲のときにのみ動作を許可したり、実時間処理が困難なときにタスクの登録を制限したりすることでは、診断処理の処理時間が長くなる。つまり、コンピュータの消費電力を抑制することのみでは、診断処理の処理時間を短縮する点は考慮されない。
 1つの側面では、消費電力を抑制しつつ短時間で診断処理を実行することを目的とする。
 開示の技術は、自己の稼働に関する所定の診断処理を実行する自己診断部を備えた複数の処理部の各々を示す情報に、複数の処理部の各々において所定の診断処理の実行時の消費電力を示す情報を対応づけたテーブルを記憶部に記憶する。制御部は、記憶部に記憶されたテーブルに基づいて、複数の処理部の一部の処理部について並列に所定の診断処理が実行されるときに、複数の処理部における消費電力の総和が予め定めた上限値を超えないように、複数の処理部の処理順序を設定する。また、制御部は、設定した処理順序に従って複数の処理部における所定の診断処理の実行を制御する。
 1つの実施態様では、消費電力を抑制しつつ短時間で診断処理を実行できる、という効果を有する。
実施形態に係る情報処理装置の概略構成の一例を示すブロック図である。 情報処理装置の概略構成の一例を示すブロック図である。 コンピュータシステムで実現する情報処理装置の一例を示すブロック図である。 消費電力テーブルの一例を示すイメージ図である。 診断状態実行テーブルの一例を示すイメージ図である。 単位消費電力テーブルの一例イメージ図である。 デバイスの構成テーブルの一例を示すイメージ図である。 システム制御部における処理の流れの一例を示すフローチャートである。 システム制御部における準備処理の流れを示すフローチャートである。 自己診断処理の流れの一例を示すフローチャートである。 診断フェーズにおける処理の流れの一例を示すフローチャートである。 診断フェーズの診断処理の時系列的な流れの一例を示すイメージ図である。 診断フェーズの診断処理の時系列的な流れの一例を示すイメージ図である。 に、ドメイン38の複数のSB42の各々における自己診断処理で診断フェーズ毎の診断処理の時系列的な流れのその他の一例を示す。 自己診断処理の説明図である。 ハングアップ監視処理の過程の一例を示す説明図である。 ハングアップ監視処理の過程の一例を示す説明図である。 ハングアップ監視処理の過程の一例を示す説明図である。 ハングアップ監視処理の過程の一例を示す説明図である。 ハングアップ監視処理の過程の一例を示す説明図である。 自己診断処理の変形例の処理の流れの一例を示すフローチャートである。
 以下、図面を参照して開示の技術の実施形態の一例を詳細に説明する。
 図1に、本実施形態に係る情報処理装置10の一例を示す。情報処理装置10は複数の処理部の各々によって各種処理を実行する。情報処理装置10は複数の処理部12、制御部14、及び記憶部16を備えている。なお、情報処理装置10に含まれる複数の処理部12について個別の処理部12を対象とする場合は、処理部12A~12Nと表記し、処理部12同士を区別して扱う。複数の処理部12は、通信回線18に各々接続されている。複数の処理部12の各々は、メンテバス20を介してデータやコマンドらの情報を授受可能に制御部14に接続されている。複数の処理部12の個別バス20の各々について個別に対象とする場合は、メンテバス20A~20Nと表記し、メンテバス20同士を区別して扱う。処理部12の各々は、診断部24を備えている。処理部12の各々に含まれる診断部24を、個別に対象とする場合は、診断部24A~24Nと表記し、各々を区別して扱う。
 なお、情報処理装置10は開示の技術における情報処理装置の一例であり、処理部12は開示の技術における処理部の一例である。また、制御部は開示の技術における制御部14の一例であり、診断部24は開示技術における自己診断部の一例である。
 情報処理装置10では、電源が投入されると、複数の処理部12の各々において自己診断処理が実行された後に、OSが起動されて複数の処理部12の各々が担当する各種処理が実行される。
 ところで、複数の処理部12を含む情報処理装置10において各種処理を迅速に開始するためには、電源を投入してから複数の処理部12の自己診断処理が終了するまでの時間を短縮することが好ましい。情報処理装置10における各処理部12の自己診断処理の時間を短縮する一例として、各処理部12の自己診断処理を、並列処理により負荷を集中させて処理することが考えられる。また、一方では、商用電力の不足に対応したり、情報処理装置10の電力消費によるランニングコストを抑制したりするため、情報処理装置10の消費電力を抑制することが好ましい。ところが、情報処理装置10における処理部12の自己診断処理の時間を短縮することと、情報処理装置10の消費電力を抑制することとは、二律相反する。そこで、開示の技術では、情報処理装置10による自己診断処理を短縮化すること及び情報処理装置10の消費電力を抑制することの二律相反する課題に着目する。
 制御部14は、複数の処理部12の各々において実行される自己診断処理を効率よく処理させるために、記憶部16に記憶されているテーブル26を参照して各自己診断処理の処理順序を設定する。記憶部16には、処理部12の各々に処理部12の各々の消費電力を対応付けられて登録されているテーブル26が予め記憶されている。また、処理部12では、制御部14による制御に従って、該当する診断部24において、例えば、周辺機器を確認したり、周辺機器を初期化したり、BIOSを検証したりする自己診断処理が実行される。すなわち、制御部14では、テーブル26に基づいて、予め定めた消費電力の上限値を超えないように、処理部12A~12Nの各々で実行される自己診断処理の処理順序が設定され、処理部12A~12Nの各々が制御される。処理部12A~12Nの各々で実行される自己診断処理は、処理部12A~12Nの何れか1つの処理部12または少なくとも一部の処理部(処理部12A~12Nのうちの複数の処理部)により、実行される。処理部12A~12Nのうちの複数の処理部12による自己診断処理は、並列して実行される。従って、複数の処理部12における消費電力の総和が上限値を超えず、かつ複数の処理部12によって自己診断処理が並列して実行される。これによって、情報処理装置10では、消費電力を抑制しつつ短時間で自己診断処理を実行することができる。
 なお、図1に示す情報処理装置10の一例では、制御部14によって各自己診断処理の処理順序を設定している。開示の技術は、制御部14による各自己診断処理の処理順序を設定することに限定されない。例えば、処理部12の各々が自機の自己診断処理の処理順序を設定してもよい。
 図2に、処理部12の各々が自機の自己診断処理の処理順序を設定する情報処理装置10の一例を示す。なお、図2に示す情報処理装置は、図1に示す情報処理装置と同様の構成であるため、同一部分には、同一符号を付して詳細な説明を省略する。情報処理装置10は複数の処理部12、及び記憶部16を備えている。複数の処理部12の各々は、制御部22、及び診断部24を備えている。各処理部12に含まれる制御部22を、個別に対象とする場合は、制御部22A~22Nと表記し、各々を区別して扱う。
 複数の処理部12の各々では、制御部22により、自機で実行される自己診断処理の処理順序が、記憶部16に記憶されているテーブル26を参照して設定される。説明を簡単にするため、処理部12Aのみにおいて自己診断処理が実行されており、処理部12Bで処理順序を設定する場合を説明する。まず、制御部22Bでは、自己診断処理を実行中の処理部12Aを特定する。制御部22Bでは、テーブル26を参照し、処理部12Aの消費電力を取得し、制御部22Bの消費電力の加算値が消費電力の上限値を超えない場合に、自己診断処理を実行するべく処理部12Bの処理順序が設定される。従って、処理部12A及び12Bにより、自己診断処理が並列して実行される。一方、制御部22Bの消費電力の加算値が消費電力の上限値を超える場合は、次に自己診断処理を実行するべく処理部12Bの処理順序が設定される。これにより、情報処理装置10において、自己診断処理の実行による消費電力が上限値を超えることはない。また、消費電力が上限値以内のときは、複数の処理部12によって自己診断処理が並列して実行され、短時間で自己診断処理を終了することができる。
 図3に、情報処理装置10をコンピュータシステム40で実現する一例を示す。コンピュータシステム40は、複数のシステムボード(以下、SBという)42、システム制御部(以下、SCF(System Control Facility)という)44、及びコンソール46を備えている。本実施形態では、周知のパーティション技術で例示されているように、複数のSB42を、複数のSB42により纏まった処理を行う機能単位として捉え、当該機能単位の構成をドメイン38と呼び説明する。なお、ドメイン38に含まれる複数のSB42について個別のSB42を対象とする場合は、SB42A~42Nと表記し、SB42同士を区別して扱う。また、SB42A~42Nの各々は、ドメイン38内の序列に従う符号を付して説明に用いる場合がある。例えば、図3ではSB42AをSB#0と表記し、SB42BをSB#1と表記し、SB42CをSB#2と表記している。
 ドメイン38に含まれる複数のSB42の各々は、相互にコマンドやデータを授受可能にクロスバー48に接続されている。なお、本実施形態では、SB42を相互に接続するために、縦横の複数の通信路を動的に切り替えて接続可能するクロスバーを使用した一例を説明するが、クロスバーに限定されるものではなく、通信回線であればよい。一例は、ネットワーク回線や半導体回路間やコンピュータ内部の部品間等のデータ伝送に使用するインターコネクトを用いることができる。
 ドメイン38に含まれる複数のSB42の各々は、システムコントローラ(以下、SCという)54を備えている。SC54には、第1CPU56、及び第2CPU58が接続されている。第1CPU56、及び第2CPU58は、SB42内の序列に従う符号を付して説明に用いる場合がある。例えば、図3ではSB42Aにおける第1CPU56をCPU#00と表記し、第2CPU58をCPU#01と表記している。各SB42のSC54はクロスバー48で接続され、ドメイン38内の任意のCPUは他のSB42の資源にアクセスすることができる。
 SC54にはメモリアクセスコントローラ(以下、MACという)60を介してメモリモジュール(以下、DIMMという)62が接続されている。また、SC54には、入出力ポート(I/O)64、及びシステム制御インタフェース(以下、SCF-I/Fという)66が接続されている。
 SCF-I/F66は、スタティックラム(以下、SRAMという)68、及びフラッシュメモリ(以下、FMEMという)70を備えている。SRAM68は、SCF44とドメイン38との間で情報を授受するときに、情報を一時的に格納する領域として使用される。また、FMEM70には、電源投入当初に起動される診断プログラム(例えば、POST)74が格納されている。なお、SB42に含まれる各デバイスを、個別に対象とする場合は、個別記号(A~N)を付して表記し、複数のSB42の各々に含まれるデバイスを区別して扱う。また、詳細は後述するが、SB42AのSCF-I/F66はタイマ72を備えている。タイマ72は、SB42Aのみに備えればよいが、SB42の各々に設けてもよい。
 複数のSB42の各SCF-I/F66は、メンテバス50を介してSCF44に接続されている。複数のメンテバス50の各々について個別に対象とする場合は、メンテバス50A~50Nと表記し、メンテバス50同士を区別して扱う。なお、メンテバス50の一例として、シリアルバスを使用することができる。また、複数のSB42の各々に含まれるSCF-I/F66は、メンテバス50を介してSCF44に接続されている。SCF44は、メンテバス50を経由して各SB42の制御やドメイン38との情報の授受を行う。また、ドメイン38がSCF44に各種コマンドを送信する際にもメンテバス50を経由して行われる。
 なお、本実施形態では、SB42が第1CPU56及び第2CPU58の2つのCPUを備える場合の一例を説明するが、CPUの数は2つに限定されるものではなく、1つ以上であればいくつでもよい。すなわち、図3に示すように、SB42の各々は、ドメイン38に含まれるSB42としてSC54とSCF-I/F66を1つ備えている。一方、CPU56(58)、メモリ(DIMM62)、及び入出力ポート64は、SB42において実現する機能による構成に応じて数量が相違する。従って、詳細は後述するが、SB42の構成に応じて自己診断処理の処理時間が相違する。
 SCF44は、CPU76、入出力ポート(I/O)78、メモリ80、及び記憶部82を備えており、これらはバス81を介して互いに接続されている。SCF44の記憶部82は、テーブル84及び制御プログラム85を記憶している。テーブル84は、少なくともSB42A~42Nの各々の消費電力が登録されている(詳細は後述)。制御プログラム85は、SB42A~42Nの各々の電源投入などの各種制御を実行するためのプログラムである。また、制御プログラム85は、SB42A~42Nの各々で実行される自己診断処理を効率よく処理させるための処理順序を設定する機能を実現するためのプログラムを含む。なお、記憶部84はHDD(Hard Disk Drive)やフラッシュメモリ等によって実現できる。
 SCF44はネットワーク89を介してコンソール46に接続されている。ネットワーク89は、インターネット等やLAN等のネットワークを使用することができる。
 コンソール46は、CPU90、メモリ92、記憶部94、ディスプレイ等の表示装置96、キーボードやマウスなどの入力装置98、及び入出力ポート(I/O)99を備えており、これらはバス91を介して互いに接続されている。コンソール46の記憶部94は、コンソールプログラムを記憶している。コンソールプログラムは、例えば、SCF44を制御するためのプログラムである。なお、記憶部94はHDD(Hard Disk Drive)やフラッシュメモリ等によって実現できる。
 図4~図7に、SCF44の記憶部82に記憶されるテーブル84の一例を示す。つまり、SCF44の記憶部82に記憶されるテーブル84には、図4~図7に一例として示す各種のテーブルが含まれる。
 図4に、テーブル84に含まれる、SB42毎の消費電力テーブル86の一例を示す。消費電力テーブル86は、SB42の各々に、SB42の各々で自己診断処理を実行するときの消費電力を対応付けて登録される。図4に示す一例では、自己診断処理は、小診断処理としての複数の診断フェーズ(診断a~診断f)を含んでおり、消費電力テーブル86は、自己診断処理に含まれる複数の診断フェーズの各々にSB42毎の消費電力の値が対応づけられる。消費電力テーブル86には、予めSB42の各々の消費電力を計測した値を登録することができる。
 図5に、テーブル84に含まれる、SB42毎の診断状態実行テーブル87の一例を示す。診断状態実行テーブル87は、SB42の各々において実行される自己診断処理の実行状態を一時的に記録するためのテーブルである。図5では、診断状態実行テーブル87は、SB42の各々における自己診断処理の実行中を示す情報として「実施中」が表記され、自己診断処理の終了を示す情報として「済」が表記される一例が示されている。診断状態実行テーブル87における空欄は、該当するSB42の自己診断処理が未実施であることを示す。なお、自己診断処理の実行中を示す情報として予め定めたマーク(例えば、黒丸)、自己診断処理の終了を示す情報として予め定めたマーク(例えば、白丸)を登録してもよい。
 図6に、テーブル84に含まれる、SB42に関する単位消費電力テーブル88の一例を示す。単位消費電力テーブル88は、SB42に含まれるデバイス単位の消費電力の値が登録される。図6では、SB42に含まれるデバイス単位の一例として、CPUが1つ、メモリが1組、入出力ポート(I/O)が1つ、及びSB42に含まれる他のデバイスをまとめた項目を用いている。単位消費電力テーブル88は、各SB42で実行される自己診断処理として、複数の診断フェーズ(診断a~診断f)に、SB42におけるデバイス単位の消費電力の値が対応づけられる。単位消費電力テーブル88には、予めSB42に含まれるデバイス単位の各々の消費電力を計測した値を登録することができる。
 図6に示す単位消費電力テーブル86では、各診断ごとに消費電力は相違すると共に、診断フェーズ毎ににも消費電力が相違する。図6に示す一例では、自己診断処理に含まれる診断フェーズとしての診断a及び診断bは、CPUの診断処理に対応する。診断cは、メモリの診断処理に対応する。診断dは、メモリを利用したCPU診断処理に対応する。診断eは、I/Oの診断処理に対応する。診断fは、メモリを利用したI/O診断処理に対応する。図6に示す診断a,bの消費電力の値から理解されるように、CPUの診断を実行する場合、CPUの消費電力は大きく、その他の消費電力は小さい。診断cの消費電力の値より理解されるように、メモリの診断を行っている場合、メモリの消費電力は大きく、その他の消費電力は小さい。診断eの消費電力の値より理解されるように、I/Oの診断を行っている場合、IOの消費電力は大きく、その他の消費電力は小さい。診断dの消費電力の値より理解されるように、メモリを利用したCPU診断は、CPUとメモリの消費電力が大きくなる。診断fの消費電力の値より理解されるように、メモリを利用したIO診断は、IOとメモリの消費電力が大きくなる。なお、SC54とSCF-I/F66の消費電力はSB42の各々に備えられているので、1SB内その他の項目の消費電力に含まれる。
 図7に、テーブル84に含まれる、各SB42に含まれるデバイスの構成テーブル89の一例を示す。構成テーブル89には、SB42の各々に含まれるデバイスの数量を示す値が登録される。図7では、図6に示すデバイス単位の各項目に対応するCPU数、メモリ組数、及び入出力ポート数の項目を一例として用いている。なお、図6に示すSB42に含まれる他のデバイスをまとめた項目では、数量が1つであるので、図7では省略している。構成テーブル89は、各SB42に、該当するデバイスの数量を示す値が対応づけられる。構成テーブル89には、予めSB42に含まれるデバイスの数量を取得した値を登録することができる。
 図6に示す単位消費電力テーブル86、及び図7に示す構成テーブル89に基づいて、自己診断処理を実行する場合の消費電力を求めることができる。例えば、SB42A(SB#0)において最初の診断フェーズ(診断a)を実行する場合の消費電力は、420(=4・70+4・20+1・10+50)Wとなる。
 なお、SCF44の記憶部82には、自己診断処理を実行する場合の消費電力の上限値を記憶することができる。本実施形態では、SCF44の記憶部82に消費電力の上限値を記憶する場合を説明するが、開示の技術は、消費電力の上限値を記憶することに限定されない。例えば、消費電力の上限値を、コンソール46の入力装置98により入力された値を取得してもよい。また、消費電力の上限値は、複数の段階的な値を有し、各々の段階的な値にしてもよい。例えば、消費電力の上限値を、推奨値、危険値、及び限界値の3つの値に代え、推奨値、危険値、及び限界値の3段階で消費電力を管理することができる。
 複数のSB42の各々(42A~42N)は図1の処理部12(12A~12N)に部分的に対応する。SB42の第1CPU56または第2CPU58は、FMEM70の診断プログラム74をSCF-I/F66から読み出してSRAM68に展開し、診断プログラム74を実行することで、図1に示す診断部24による処理部12として動作する。また、FMEM70の診断プログラム74は開示の技術における情報処理プログラムの部分的な処理の一例である。つまり、FMEM70の診断プログラム74は第1CPU56または第2CPU58を情報処理装置の一部分として機能させるための情報処理プログラムの一部の一例である。
 また、SCF44のCPU76は、制御プログラム85を記憶部82から読み出してメモリ80に展開し、制御プログラム85を実行することで、図1に示す制御部14として動作する。また、記憶部82は、図1に示す記憶部16に対応し、テーブル84は、図1に示すテーブル26に対応する。また、制御プログラム85は開示の技術における情報処理プログラムの部分的な処理の一例である。つまり、制御プログラム85はSCF44を情報処理装置の一部分として機能させるための情報処理プログラムの一部の一例である。
 次に、本実施形態の作用を説明する。以下の説明では、SB42の各々において自己診断処理を実行するときに、ドメイン38の消費電力、すなわち各SB42の消費電力の総和が上限値を超えないように処理する場合を説明する。
 まず、コンピュータシステム40に電源が投入されると、SCF44において、ドメイン38に含まれる複数のSB42の起動処理が実行される。
 図8に、SCF44における処理の流れの一例を示す。SCF44は、ステップ100において、電源投入後のSB42に対する準備処理を行った後に、ステップ102において、ドメイン38に含まれる複数の各SB42の起動処理を実行させる。
 図9に、SCF44における準備処理(図8に示すステップ100の処理)の流れの一例を示す。SCF44は、ステップ110において、構成テーブル89(図7)を参照し、ドメイン38に含まれるSB42の各々の構成を取得する。
 次に、SCF44は、ステップ112において、単位消費電力テーブル88(図6)を参照して、診断フェーズ毎に、デバイス単位の消費電力の値を取得する。また、ステップ112では、取得したSB42の構成の各々に対する消費電力の総和を算出する。ステップ112の処理によって、SB42の各々を示す情報に、SB42の各々で自己診断処理を実行(診断フェーズを実行)するときの消費電力を示す情報が対応付けられる。従って、SB42の各々を示す情報に、SB42の各々で自己診断処理を実行(診断フェーズを実行)するときの消費電力を示す情報を対応付けた情報が消費電力テーブル86(図4)として、記憶することができる。
 次に、SCF44は、ステップ114において、上記ステップ112で記憶された消費電力テーブル86(図4)と、消費電力の上限値Ethを、各SB42のSRAM68に記憶させる。なお、ステップ114では、診断状態実行テーブル87を、各SB42のSRAM68に記憶させることができる。
 次に、複数のSB42の各々において実行される処理について説明する。SB42では、SCF44より起動処理の実行指示を受け取ると、電源投入がなされ、自己診断処理が実行される。
 図10に、ドメイン38に含まれる複数の各SB42における自己診断処理の流れの一例を示す。まず、SB42は、ステップ120において、SCF44により格納された情報を取得する。SCF44により格納された情報は、SB42のSRAM68に記憶されている消費電力テーブル86(図4)、及び消費電力の上限値Ethを示す情報である。なお、以下の説明では、自己診断処理として診断a~診断Fの診断フェーズを順次実行する場合を説明する。
 次に、SB42は、ステップ122において、最初の診断フェーズ(診断a)を実行する。なお、SB42の各々におけるステップ122の処理では、各SB42の消費電力の総和が上限値Ethを超えないように処理が実行される(詳細は後述)。また、SB42の各々では、複数の各SB42で最初の診断フェーズが全て終了してから、次の診断フェーズを処理するべく次処理へ移行される。
 次に、SB42は、ステップ124において、自己診断処理の全ての診断フェーズが終了したか否かを判断する。ステップ124では、診断状態実行テーブル87(図5)の該当するSB42の欄を参照することで、全診断フェーズが終了したか否かを判別することができる。ステップ124で否定判断された場合にはステップ126へ進み、次の診断フェーズの診断処理を実行した後に、ステップ124へ戻る。一方、ステップ124で肯定判断された場合には、本処理ルーチンを終了する。
 次に、複数のSB42の各々において実行される自己診断処理における診断フェーズの処理について説明する。なお、次の説明では、複数のSB42について、SB42A(SB#0)、SB42B(SB#1)、・・・、の順序で自己診断処理の対象が設定される場合を説明する。
 図11に、ドメイン38で実行される自己診断処理(複数の各SB42の自己診断処理)の診断フェーズにおける処理の流れの一例を示す。
 まず、ステップ130では、変数iに「0」がセット(i=0)される。従って、SB42A(SB#0)が自己診断処理を最初に実行するSB42に設定される。次に、ステップ132では、現在の全てのSB42A~42Nの消費電力の総和(Etotal)が求められると共に、SB42Aが自己診断処理を実行したときの予測消費電力(Emy)が取得される。消費電力の総和(Etotal)は、自己診断処理を実行中のSB42の消費電力と終了及び待機中のSB42の消費電力を加算して求めることができる。つまり、消費電力の総和は、診断状態実行テーブル87(図5)上で、診断処理実行中のSB42に対する消費電力の値と、終了及び未実施のSB42でその他に対する消費電力の値と(図4)を加算すればよい。また、予測消費電力(Emy)は、消費電力テーブル86(図4)を参照し、対象のSB42(ここではSB42A)の消費電力を取得すればよい。また、ステップ132では、SCF44により格納された消費電力の上限値Ethを示す情報も取得する。
 次に、ステップ134では、該当する診断フェーズの診断処理が未実施でかつ、該当する診断フェーズの診断処理を実行した場合に、消費電力の上限値Ethを超えるか否かが判断される(Etotal+Emy≦Eth)。ステップ134で否定判断の場合には、SB42Aによる診断フェーズの診断処理の実行により、消費電力が上限値Ethを超えるので、SB42Aによる診断フェーズの診断処理を実行することなく、ステップ140へ進む。一方、ステップ134において肯定判断の場合には、SB42Aによる診断フェーズの診断処理を実行しても消費電力に余裕がある。そこで、ステップ136では、診断状態実行テーブル87(図5)が自己診断処理の実行中を示す情報(「実施中」)で更新される。また、ステップ136では、詳細を後述する異常監視タイマとして機能するタイマ72が再設定される。なお、タイマ72は、各診断フェーズの診断処理が最初に実行されるSB42が所定時間Tthを設定する。つまり、図11に示す処理の一例では、SB42Aにおいてタイマ72に所定時間Tthが設定される。また、他のSB42おいて診断フェーズの診断処理が実行されるとき、他のSB42により、SB42Aのタイマ72が再設定される。次のステップ138では、SB42Aにおいて、該当する診断フェーズの診断処理の実行が開始され、ステップ140へ進む。
 次に、ステップ140では、診断状態実行テーブル87(図5)が参照され、対象のSB42(ここではSB42A)に該当する診断フェーズの診断処理が終了したか否かが判断される。ステップ140で肯定判断される場合には、ステップ142において、診断状態実行テーブル87(図5)が自己診断処理の終了を示す情報(「済」)に更新され、ステップ144へ進む。一方、ステップ140で否定判断される場合には、そのままステップ144へ進む。
 次に、ステップ144では、変数iがドメイン38に含まれるSB42の最大数を示す値か否かが判断される。ステップ144で肯定判断されると、ステップ148へ進み、否定判断の場合にはステップ146へ進む。ステップ146では、変数iがインクリメントされ、ステップ132へ戻る。ステップ144で肯定判断される場合には、ステップ148において、全SB42に対して該当する診断フェーズの診断処理が終了したか否かが判断される。ステップ148で肯定判断される場合には、そのまま本処理ルーチンを終了し、否定判断される場合にはステップ150で一定時間を待機した後にステップ130へ戻り、上記処理を繰り返す。ステップ148の判断処理は、診断状態実行テーブル87(図5)における診断フェーズについて、全ての欄が自己診断処理の終了を示す情報(「済」)であるか否かを判別することにより判断することができる。
 なお、図11に示す診断フェーズの処理では、SB42A(SB#0)、SB42B(SB#1)、・・・、の順序でSB42が対象のSB42に設定される場合を説明したが、対象となるSB42の順序は上記説明に限定されない。例えば、ランダムにSB42を指定してもよく、優先順位を定めてSB42を指定してもよい。優先順位は、各SB42における診断フェーズの処理の消費電力に基づいて定めることができる。また、図11に示す処理を、SCF44で実行させ、SCF44がSB42A~42Nの各々に診断処理を開始させる指示を出力してもよい。
 次に、コンピュータシステム40におけるドメイン38に含まれる複数のSB42の自己診断処理の具体例を説明する。
 図12及び図13に、ドメイン38の複数のSB42の各々における自己診断処理で診断フェーズ毎の診断処理の時系列的な流れの一例を示す。図12及び図13には、消費電力の上限値に600Wを設定して自己診断処理が実施される場合が示されている。また、図12及び図13には、自己診断処理として診断a~診断Fの診断フェーズを順次実行する場合が示されている。図12及び図13に示すように、自己診断処理は、経過時間1~56の時間単位によって実行が終了する。従って、自己診断処理の実施について、消費電力は上限値を超えることはない。また、診断a~fの各診断フェーズでは、SB42A(SB#0)とSB42B(SB#1)との診断処理が並列処理され、診断c及びeの診断フェーズでは、SB42C(SB#2)とSB42D(SB#3)との診断処理が並列処理される。従って、消費電力を抑制するためにSB42の各々の診断処理を順次処理する場合に比べて、本実施形態では並列度を向上させているので、短時間で自己診断処理を終了することができる。
 図14に、ドメイン38の複数のSB42の各々における自己診断処理で診断フェーズ毎の診断処理の時系列的な流れのその他の一例を示す。図14には、消費電力の上限値に800Wを設定して自己診断処理が実施される場合が示されている。図14に示すように、自己診断処理は、経過時間1~42の時間単位によって実行が終了する。従って、自己診断処理の実施について、消費電力は上限値を超えることがなく、短時間で自己診断処理を終了することができる。つまり、診断a~eの各診断フェーズでは、SB42A(SB#0)、SB42B(SB#1)及びSB42C(SB#2)の診断処理が並列処理される。また、診断c、d及びfの診断フェーズでは、SB42C(SB#2)とSB42D(SB#3)との診断処理が並列処理される。従って、図12及び図13に示す自己診断処理を実行する場合に比べて、さらに並列度が向上されるので、さらに短時間で自己診断処理を終了することができる。
 図15に、消費電力の上限値を非設定にて自己診断処理が実施される場合を示す。図15に示すように、自己診断処理は、並列処理による並列度が向上するので、経過時間1~24の時間単位による短時間で処理の実行が終了する。しかし、自己診断処理の実施による消費電力は増加するので、図12~図14に示す本実施形態による自己診断処理が効果的であることが理解できる。
 次に、SB42Aのタイマ72を用いて、自己診断処理における異常を判定する処理について説明する。自己診断処理の診断時間に所定時間を定めて所定時間を超過すると、異常状態と判定するタイムアウト判定処理を設けて異常状態を監視する場合がある。異常状態の監視には、SB42が一切の制御を受け付けなかったり処理が中断状態になったりする所謂暴走状態の監視がある。上述のように、例えばPower Capping等で知られる機能を備えて、消費電力の上限値を設けて自己診断処理を実行する場合、自己診断処理の実行時間は延長傾向になる場合がある。ところが、自己診断処理の実行時間の延長について、原因を特定することが困難な場合がある。つまり、自己診断処理の実行時間の延長が、消費電力の上限値を設けて実行した自己診断処理自体に起因することであるのか、例えば情報処理装置の動作に支障が生じている異常状態に起因することであるのか判別することが困難な場合がある。
 本実施形態では、消費電力の上限値を設けて自己診断処理を実行する場合に好適な判定処理(ハングアップ監視処理)が実行される。すなわち、SB42Aのタイマ72を用いて、ドメイン38における自己診断処理時のハングアップ監視を実行する。
 SB42Aのタイマ72では所定時間Tthが設定されると時間計測が開始され、設定された所定時間Tthを経過すると、SCF-I/F66によってSCF44に所定時間Tthを経過(タイムアウト)したことを示す情報が通知される。本実施形態では、SB42の各々における自己診断処理時には定期的にタイマ72が再設定される(図11に示すステップ136の処理)。タイマ72の再設定によって、SCF-I/F66では、タイムアウトしたことを示す情報の通知がSCF44に出力されないように処理される。なお、SB42において自己診断処理の実行が停止(ハングアップ)した場合には、タイマ72の再設定が実行されない。従って、SCF44にタイムアウトしたことを示す情報の通知が出力されて、SCF44は自己診断処理の実行時にハングアップしたことを確認することができる。
 図16及び図17に、消費電力の上限値を非設定にして自己診断処理が実施される場合におけるハングアップ監視処理の過程の一例を時系列的に示す。図16には各SB42が正常に動作している場合が示され、図17にはSB42の何れかにおいて自己診断処理の実行が停止(ハングアップ)した場合が示されている。図16に示すように、消費電力の上限値が非設定のとき、各SB42の自己診断処理は並列して実行されるので各診断フェーズにおける経過時間は各診断フェーズにおける診断時間の最大値を超えることがない。従って、タイマ72には、各診断フェーズの開始時に、診断フェーズの診断時間の最大値を超える時間を所定時間Tthとして設定すればよい。図16に示す一例では、何れの診断フェーズの診断処理における診断時間の最大値は4単位時間であり、各診断フェーズの開始時に、タイマ72に5単位時間を設定すれば、タイマ72による時間計測により所定時間Tthを超過(タイムアウト)することはない。一方、図17に示すように、SB42の何れかにおいて、自己診断処理の実行が停止(ハングアップ)した場合には、タイマ72の再設定が実行されないので、SCF44にタイムアウトしたことを示す情報の通知される。
 ところが、本実施形態にかかる自己診断処理を実行する場合、各診断フェーズの処理時間は、各SB42のデバイス数や予め設定される消費電力の上限値によって動的に変動する。例えば、消費電力の上限値を600Wとした場合には、診断aフェーズの処理時間は10単位時間となり(図12参照)、消費電力の上限値を800Wとした場合には、診断aフェーズの処理時間は8単位時間になる(図14参照)。従って、各診断フェーズの診断処理の開始時に1回だけタイマ72を設定する場合には、SB42のデバイス構成に応じてタイムアウトしないタイマ72の所定時間Tthを求めることになる。例えば、診断フェーズが逐次実行されることを想定する場合、所定時間Tthは、(診断処理の診断時間の最大値)に(SB42の個数)を乗じた数を単位時間として求めることになる。例えば、図12に示す自己診断処理では、診断aによる診断フェーズの処理時間は、最長で4・4=16単位時間であり、タイマ72に設定する所定時間Tthは、16単位時間を超える値、例えば17単位時間を設定すればよい。
 図18に、診断フェーズが逐次実行される場合に所定時間Tthを1度設定してハングアップ監視処理を実行する過程の一例を時系列的に示す。図18に示すように、診断フェーズの診断処理の開始時に、所定時間Tthとして17単位時間が設定される。しかし、17単位時間に所定時間Tthを設定することは、自己診断処理の実行時にハングアップしたことをSCF44が確認するまでの処理時間が長くなる。
 例えば、図18に示す診断aによる診断フェーズでは診断処理時間として10単位時間であるので、タイマ72に11単位時間を設定すれば、処理時間が11単位時間でハングアップを確認できる。しかし、SB42のデバイス数や消費電力に応じて診断処理の時間が動的に変動するのでタイマ72に設定する所定時間Tthは、17単位時間となる。従って、処理時間として17-11=6(単位時間)が延長される。
 そこで、本実施形態では、タイマ72の再設定を各診断フェーズの開始時に1回だけ実行するのではなく、各SB42が各診断フェーズの診断処理を開始する時にタイマ72を再設定する(図11に示すステップ136の処理)。この場合、タイマ72に設定する所定時間Tthを診断時間の最大値を超える値にすればよいので、ハングアップをより迅速に確認できる。
 図19及び図20に、各診断フェーズの診断処理を開始する時にタイマ72を再設定する自己診断処理が実施される場合におけるハングアップ監視処理の過程の一例を時系列的に示す。図19には各SB42が正常に動作している場合が示され、図20にはSB42B(SB#1)において自己診断処理の実行が停止(ハングアップ)した場合が示されている。図19に示すように、診断フェーズの診断処理の開始時に、所定時間Tthとして5の単位時間が設定される。また、SB42の何れかにおいて診断フェーズの診断処理が開始される場合に、タイマ72が再設定されるので、タイマ72による時間計測により所定時間Tthが経過(タイムアウト)されることはない。一方、図20に示すように、診断aの診断フェーズでは、SB42Bで自己診断処理の実行が停止(ハングアップ)した場合、タイマ72が再設定されないので、処理時間が11単位時間を経過すると、SCF44にタイムアウトしたことを示す情報が通知される。
 従って、診断フェーズの診断処理が開始される場合に、タイマ72を再設定することによって、早期に、診断フェーズの診断処理の実行時に所定時間Tthを超過(タイムアウト)したことを確認することができる。
 なお、上記では、タイマ72を再設定する場合の一例を説明したが、開示の技術は、タイマ72の再設定に限定されない。例えば、各SB42における診断フェーズの診断開始時にタイムアウト用のタイマ72をリセットし、所定時間Tthを計測してもよい。
 次に、SB42の各々で実行される自己診断処理の変形例を説明する。上記では、複数のSB42について、SB42A(SB#0)、SB42B(SB#1)、・・・、の順序で自己診断処理の対象が設定される場合を説明した。自己診断処理の変形例では、SB42の各々が自律的に自己診断処理の実行権利を獲得する。なお、自己診断処理の変形例は、上記図11に示す処理ルーチンに代えて図21に示す処理ルーチンがSB42の各々において実行される。また、SB42AのSCF-I/O66に、各SB42から参照可能なロック領域を設け、ロック獲得のSB42を示す情報を記憶する。ロック獲得のSB42を示す情報とは、自律的に自己診断処理の実行権利を獲得する排他処理を実行中のSB42A~42Nの何れか1つのSB42を示す情報である。なお、ロック獲得のSB42を示す情報をリセット(ロック解放、例えばNULLデータを格納)することで、SB42A~42Nの何れか1つのSB42が自律的に自己診断処理の実行権利を獲得する排他処理を実行することができる。
 図21に、変形例に係るSB42の各々において実行される自己診断処理における診断フェーズの診断処理の流れの一例を示す。なお、説明を簡単にするため、SB42A(SB#0)において実行される診断フェーズの診断処理の流れを説明する。
 SB42Aは、ステップ160において、ロック獲得処理を実行する。ロック獲得処理では、ロック領域にSB42Aを示す情報を記憶可能か否かが判断される。ロック獲得のSB42を示す情報がリセットされているロック解放の場合は、SB42Aを示す情報をロック領域に格納し、ステップ162へ進む。一方、ロック獲得のSB42を示す情報にSB42の何れかを示す情報が格納済みであるときは、ロック解放されるまで待機する。
 SB42Aは、ステップ162において、図11に示すステップ132の処理と同様に、現在の全てのSB42A~42Nの消費電力の総和(Etotal)が求められると共に、SB42Aが自己診断処理を実行したときの予測消費電力(Emy)が取得される。次に、ステップ164では、SB42Aが診断フェーズの診断処理を実行した場合に、消費電力の上限値Ethを超えるか否かが判断される(Etotal+Emy≦Eth)。ステップ164で否定判断の場合には、SB42Aによる診断フェーズの診断処理の実行により、消費電力が上限値Ethを超えるので、SB42Aによる診断フェーズの診断処理を実行することなく、ステップ166へ進む。ステップ166では、ロック解放が処理され、次のステップ168において一定時間が待機された後に、ステップ162へ戻る。
 一方、ステップ164において肯定判断の場合には、SB42Aによる診断フェーズの診断処理を実行しても消費電力に余裕がある。そこで、ステップ170へ進み、図11に示すステップ136の処理と同様に、診断状態実行テーブル87(図5)が自己診断処理の実行中を示す情報(「実施中」)で更新される。また、ステップ170では、異常監視タイマとして機能するタイマ72が再設定される。次に、ステップ172へ進み、ロック解放が処理され、次のステップ174において、SB42Aにおける診断フェーズの診断処理の実行が開始され、ステップ176へ進む。
 図21に示すように、SB42の各々において、自律的に自己診断処理の実行権利を獲得する排他処理を実行することより、SB42の各々が消費電力の上限値を考慮せずに自己診断処理を並列処理することを抑止することができる。
 以上説明したように、本実施形態では、SCF44がドメイン38に含まれるSB42の各々の構成に応じて変動する自己診断処理の実行時の消費電力を求めて、消費電力の上限値までの範囲内で自己診断処理の並列処理を実行する。これにより、自己診断処理の処理時間を短縮化しつつ、自己診断処理における消費電力を抑制することができる。
 また、本実施形態では、SCF44の準備処理により自己診断処理の実施時にSB42に応じて消費電力の値を授けることができ、複数のSB42において自己診断処理を実施するときの並列度を向上させることができる。
 なお、上記では情報処理装置10をコンピュータシステム40により実現する一例を説明した。しかし、これらの構成に限定されるものではなく、上記説明した要旨を逸脱しない範囲において、各種の改良及び変更を行っても良いのはもちろんである。
 また、上記ではプログラムが記憶部に予め記憶(インストール)されている態様を説明したが、これに限定されるものではない。例えば、開示の技術におけるプログラムは、CD-ROMやDVD-ROM等の記録媒体に記録されている形態で提供することも可能である。
 本明細書に記載された全ての文献、特許出願及び技術規格は、個々の文献、特許出願及び技術規格が参照により取り込まれることが具体的かつ個々に記された場合と同程度に、本明細書中に参照により取り込まれる。

Claims (15)

  1.  自己の稼働に関する所定の診断処理を実行する自己診断部を備えた複数の処理部の各々を示す情報に、前記複数の処理部の各々において前記所定の診断処理の実行時の消費電力を示す情報を対応づけたテーブルを記憶する記憶部と、
     前記記憶部に記憶されたテーブルに基づいて、前記複数の処理部の一部の処理部について並列に前記所定の診断処理が実行されるときに、前記複数の処理部における消費電力の総和が予め定めた上限値を超えないように、前記複数の処理部の処理順序を設定し、設定した処理順序に従って前記複数の処理部における前記所定の診断処理の実行を制御する制御部と、
     を備えた情報処理装置。
  2.  前記所定の診断処理は、複数の小診断処理を含み、
     前記記憶部には、前記複数の処理部の各々を示す情報と、前記複数の処理部の各々で実行される前記所定の診断処理に含まれる前記複数の小診断処理を示す情報と、前記複数の処理部の各々において前記小診断処理の実行時の消費電力を示す情報とを対応づけたテーブルが記憶され、
     前記制御部は、前記小診断処理毎に前記複数の処理部の各々における前記所定の診断処理の実行を制御すると共に、前記テーブルに基づいて、前記複数の処理部の一部の処理部について並列に前記所定の診断処理に含まれる前記小診断処理が実行されるときに、前記複数の処理部における消費電力の総和が予め定めた上限値を超えないように、前記複数の処理部の処理順序を設定する
     請求項1に記載の情報処理装置。
  3.  前記記憶部には、前記複数の処理部の各々に含まれるデバイスの種別を示す情報に、前記所定の診断処理の実行時における前記デバイスの消費電力を示す情報を対応づけたテーブルが記憶され、
     前記制御部は、前記テーブルに基づいて、前記複数の処理部の各々に備えられる前記デバイスの数に応じた消費電力を求め、求めた各消費電力を複数の各処理部における前記所定の診断処理の実行時の消費電力とする
     請求項1または請求項2に記載の情報処理装置。
  4.  前記制御部は、前記複数の処理部の各々から前記種別毎のデバイスの数を取得し、取得した前記種別毎のデバイスの数に基づいて前記消費電力を求める
     請求項3に記載の情報処理装置。
  5.  前記所定の診断処理の実行時間を計測する計測部を備え、
     前記制御部は、前記計測部に対して、前記所定の診断処理の実行時間として所定時間を設定し、前記複数の処理部の各々において前記所定の診断処理が実行されるときに、前記計測部に対して前記所定時間を再設定すると共に、前記複数の処理部において前記所定の診断処理の実行が全て終了されるときに、前記計測部における実行時間の計測を停止させ、かつ、前記所定の診断処理の実行が所定時間を超過する場合に、前記所定の診断処理の実行時間として定めた所定時間を超過したことを示す情報を出力する
     請求項1~請求項4の何れか1項に記載の情報処理装置。
  6.  自己の稼働に関する所定の診断処理を実行する自己診断部を備えた複数の処理部の各々を示す情報に、前記複数の処理部の各々において前記所定の診断処理の実行時の消費電力を示す情報を対応づけたテーブルを記憶部に記憶し、
     前記記憶部に記憶されたテーブルに基づいて、前記複数の処理部の一部の処理部について並列に前記所定の診断処理が実行されるときに、前記複数の処理部における消費電力の総和が予め定めた上限値を超えないように、前記複数の処理部の処理順序を設定し、設定した処理順序に従って前記複数の処理部における前記所定の診断処理の実行を制御する
     ことを含む情報処理方法。
  7.  前記所定の診断処理は、複数の小診断処理を含み、
     前記記憶部に、前記複数の処理部の各々を示す情報と、前記複数の処理部の各々で実行される前記所定の診断処理に含まれる前記複数の小診断処理を示す情報と、前記複数の処理部の各々において前記小診断処理の実行時の消費電力を示す情報とを対応づけたテーブルを記憶させ、
     前記小診断処理毎に前記複数の処理部の各々における前記所定の診断処理の実行を制御すると共に、前記テーブルに基づいて、前記複数の処理部の一部の処理部について並列に前記所定の診断処理に含まれる前記小診断処理が実行されるときに、前記複数の処理部における消費電力の総和が予め定めた上限値を超えないように、前記複数の処理部の処理順序を設定する
     請求項6に記載の情報処理方法。
  8.  前記記憶部に、前記複数の処理部の各々に含まれるデバイスの種別を示す情報に、前記所定の診断処理の実行時における前記デバイスの消費電力を示す情報を対応づけたテーブルを記憶させ、
     前記テーブルに基づいて、前記複数の処理部の各々に備えられる前記デバイスの数に応じた消費電力を求め、求めた各消費電力を複数の各処理部における前記所定の診断処理の実行時の消費電力とする
     請求項6または請求項7に記載の情報処理方法。
  9.  前記複数の処理部の各々から前記種別毎のデバイスの数を取得し、取得した前記種別毎のデバイスの数に基づいて前記消費電力を求める
     請求項8に記載の情報処理方法。
  10.  前記所定の診断処理の実行時間を計測し、
     前記所定の診断処理の実行時間を計測する場合、前記所定の診断処理の実行時間として所定時間を設定し、前記複数の処理部の各々において前記所定の診断処理が実行されるときに、前記所定時間を再設定すると共に、前記複数の処理部において前記所定の診断処理の実行が全て終了されるときに、前記実行時間の計測を停止させ、かつ、前記所定の診断処理の実行が所定時間を超過する場合に、前記所定の診断処理の実行時間として定めた所定時間を超過したことを示す情報を出力する
     請求項6~請求項9の何れか1項に記載の情報処理方法。
  11.  コンピュータに、
     自己の稼働に関する所定の診断処理を実行する自己診断部を備えた複数の処理部の各々を示す情報に、前記複数の処理部の各々において前記所定の診断処理の実行時の消費電力を示す情報を対応づけたテーブルを記憶部に記憶し、
     前記記憶部に記憶されたテーブルに基づいて、前記複数の処理部の一部の処理部について並列に前記所定の診断処理が実行されるときに、前記複数の処理部における消費電力の総和が予め定めた上限値を超えないように、前記複数の処理部の処理順序を設定し、設定した処理順序に従って前記複数の処理部における前記所定の診断処理の実行を制御する
     ことを含む処理をコンピュータに実行させるための情報処理プログラム。
  12.  前記所定の診断処理は、複数の小診断処理を含み、
     前記記憶部に、前記複数の処理部の各々を示す情報と、前記複数の処理部の各々で実行される前記所定の診断処理に含まれる前記複数の小診断処理を示す情報と、前記複数の処理部の各々において前記小診断処理の実行時の消費電力を示す情報とを対応づけたテーブルを記憶させ、
     前記小診断処理毎に前記複数の処理部の各々における前記所定の診断処理の実行を制御すると共に、前記テーブルに基づいて、前記複数の処理部の一部の処理部について並列に前記所定の診断処理に含まれる前記小診断処理が実行されるときに、前記複数の処理部における消費電力の総和が予め定めた上限値を超えないように、前記複数の処理部の処理順序を設定する
     請求項11に記載の情報処理プログラム。
  13.  前記記憶部に、前記複数の処理部の各々に含まれるデバイスの種別を示す情報に、前記所定の診断処理の実行時における前記デバイスの消費電力を示す情報を対応づけたテーブルを記憶させ、
     前記テーブルに基づいて、前記複数の処理部の各々に備えられる前記デバイスの数に応じた消費電力を求め、求めた各消費電力を複数の各処理部における前記所定の診断処理の実行時の消費電力とする
     請求項11または請求項12に記載の情報処理プログラム。
  14.  前記複数の処理部の各々から前記種別毎のデバイスの数を取得し、取得した前記種別毎のデバイスの数に基づいて前記消費電力を求める
     請求項13に記載の情報処理プログラム。
  15.  前記所定の診断処理の実行時間を計測し、
     前記所定の診断処理の実行時間を計測する場合、前記所定の診断処理の実行時間として所定時間を設定し、前記複数の処理部の各々において前記所定の診断処理が実行されるときに、前記所定時間を再設定すると共に、前記複数の処理部において前記所定の診断処理の実行が全て終了されるときに、前記実行時間の計測を停止させ、かつ、前記所定の診断処理の実行が所定時間を超過する場合に、前記所定の診断処理の実行時間として定めた所定時間を超過したことを示す情報を出力する
     請求項11~請求項14の何れか1項に記載の情報処理プログラム。
PCT/JP2013/066630 2013-06-17 2013-06-17 情報処理装置、情報処理方法、及び情報処理プログラム WO2014203318A1 (ja)

Priority Applications (2)

Application Number Priority Date Filing Date Title
PCT/JP2013/066630 WO2014203318A1 (ja) 2013-06-17 2013-06-17 情報処理装置、情報処理方法、及び情報処理プログラム
JP2015522394A JP6070840B2 (ja) 2013-06-17 2013-06-17 情報処理装置、情報処理方法、及び情報処理プログラム

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
PCT/JP2013/066630 WO2014203318A1 (ja) 2013-06-17 2013-06-17 情報処理装置、情報処理方法、及び情報処理プログラム

Publications (1)

Publication Number Publication Date
WO2014203318A1 true WO2014203318A1 (ja) 2014-12-24

Family

ID=52104088

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/JP2013/066630 WO2014203318A1 (ja) 2013-06-17 2013-06-17 情報処理装置、情報処理方法、及び情報処理プログラム

Country Status (2)

Country Link
JP (1) JP6070840B2 (ja)
WO (1) WO2014203318A1 (ja)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2022131402A (ja) * 2021-02-26 2022-09-07 Necプラットフォームズ株式会社 検査制御装置、情報処理装置、検査制御方法及びプログラム

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2003044453A (ja) * 2001-07-31 2003-02-14 Toshiba Corp 検査スケジュール作成システムおよび検査スケジュール作成方法
JP2005190038A (ja) * 2003-12-25 2005-07-14 Hitachi Ltd プロセッサの診断処理方法および診断処理プログラム
WO2009050764A1 (ja) * 2007-10-16 2009-04-23 Fujitsu Limited 自己診断処理を行う情報処理装置、自己診断処理方法及び自己診断処理プログラム
JP2012181564A (ja) * 2011-02-28 2012-09-20 Renesas Electronics Corp 自己診断回路および自己診断方法
JP2012252373A (ja) * 2011-05-31 2012-12-20 Renesas Electronics Corp 自己診断装置、自己診断方法、及びプログラム

Family Cites Families (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP4428489B2 (ja) * 1999-08-23 2010-03-10 パナソニック株式会社 集積回路装置及びそのテスト方法
JP2009080037A (ja) * 2007-09-26 2009-04-16 Nec Electronics Corp スキャンテスト回路

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2003044453A (ja) * 2001-07-31 2003-02-14 Toshiba Corp 検査スケジュール作成システムおよび検査スケジュール作成方法
JP2005190038A (ja) * 2003-12-25 2005-07-14 Hitachi Ltd プロセッサの診断処理方法および診断処理プログラム
WO2009050764A1 (ja) * 2007-10-16 2009-04-23 Fujitsu Limited 自己診断処理を行う情報処理装置、自己診断処理方法及び自己診断処理プログラム
JP2012181564A (ja) * 2011-02-28 2012-09-20 Renesas Electronics Corp 自己診断回路および自己診断方法
JP2012252373A (ja) * 2011-05-31 2012-12-20 Renesas Electronics Corp 自己診断装置、自己診断方法、及びプログラム

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2022131402A (ja) * 2021-02-26 2022-09-07 Necプラットフォームズ株式会社 検査制御装置、情報処理装置、検査制御方法及びプログラム
JP7323202B2 (ja) 2021-02-26 2023-08-08 Necプラットフォームズ株式会社 検査制御装置、情報処理装置、検査制御方法及びプログラム

Also Published As

Publication number Publication date
JP6070840B2 (ja) 2017-02-01
JPWO2014203318A1 (ja) 2017-02-23

Similar Documents

Publication Publication Date Title
US8739167B2 (en) Method and device for balancing load of multiprocessor system by sequencing migration priorities based on memory size and calculated execution time
US9912535B2 (en) System and method of performing high availability configuration and validation of virtual desktop infrastructure (VDI)
EP3803588A1 (en) Embedded scheduling of hardware resources for hardware acceleration
TWI522834B (zh) 用於作業系統未知硬體驗證的系統與方法
JP2009301162A (ja) 計算機システム、デバイス共有方法及びそのプログラム
JP2010086145A (ja) 分散処理システム
US20150100776A1 (en) Non-disruptive code update of a single processor in a multi-processor computing system
US20170091017A1 (en) Fault detecting device and method
US9047112B2 (en) Installation of virtual service processor to computer system having existing operating system
US20100241840A1 (en) System and method for resource assignment
JP6070840B2 (ja) 情報処理装置、情報処理方法、及び情報処理プログラム
US8650281B1 (en) Intelligent arbitration servers for network partition arbitration
US20160253277A1 (en) Shared pci interrupt line management
Kiertscher et al. Cherub: Power consumption aware cluster resource management
US10942880B2 (en) Aging tolerant system design using silicon resource utilization
US10353744B2 (en) System wide manageability
JP6256087B2 (ja) ダンプシステムおよびダンプ処理方法
JP2010146117A (ja) 情報処理装置、情報処理方法および情報処理プログラム
US8891515B2 (en) Method for node communication
US11593121B1 (en) Remotely disabling execution of firmware components
JP5257453B2 (ja) 情報処理装置、情報処理装置制御方法および情報処理装置制御プログラム
US20160216987A1 (en) System and method for performing efficient failover and virtual machine (vm) migration in virtual desktop infrastructure (vdi)
US9213663B2 (en) Output input control apparatus and control method thereof
JP6230092B2 (ja) 監視システム
US20240004668A1 (en) System-on-chip management controller

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

Country of ref document: EP

Kind code of ref document: A1

ENP Entry into the national phase

Ref document number: 2015522394

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

Country of ref document: EP

Kind code of ref document: A1