JP7479919B2 - Information processing device - Google Patents

Information processing device Download PDF

Info

Publication number
JP7479919B2
JP7479919B2 JP2020082766A JP2020082766A JP7479919B2 JP 7479919 B2 JP7479919 B2 JP 7479919B2 JP 2020082766 A JP2020082766 A JP 2020082766A JP 2020082766 A JP2020082766 A JP 2020082766A JP 7479919 B2 JP7479919 B2 JP 7479919B2
Authority
JP
Japan
Prior art keywords
processor
frequency
temperature
cpu
governor
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
JP2020082766A
Other languages
Japanese (ja)
Other versions
JP2021177348A (en
Inventor
正 影沢
Original Assignee
Fcnt合同会社
Fcnt合同会社
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 Fcnt合同会社, Fcnt合同会社 filed Critical Fcnt合同会社
Priority to JP2020082766A priority Critical patent/JP7479919B2/en
Publication of JP2021177348A publication Critical patent/JP2021177348A/en
Application granted granted Critical
Publication of JP7479919B2 publication Critical patent/JP7479919B2/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y02TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
    • Y02DCLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
    • Y02D10/00Energy efficient computing, e.g. low power processors, power management or thermal management

Landscapes

  • Microcomputers (AREA)

Description

本発明は、情報処理装置に関する。 The present invention relates to an information processing device.

情報処理装置では、装置が高温になることを抑制したり装置を保護したりするため、高温になったプロセッサを冷却する処理が行われる。プロセッサを冷却する処理としては、冷却ファンの使用やプロセッサに供給するクロック信号の周波数を低下させる処理等を挙げることができる。 In information processing devices, a process is carried out to cool a processor that has become hot in order to prevent the device from becoming too hot and to protect the device. Examples of processes for cooling a processor include using a cooling fan and reducing the frequency of the clock signal supplied to the processor.

特許文献1では、例えば、温度モニタが測定した温度を基に、許容温度を超えないように電子回路の処理負荷を制御する情報処理装置が記載されている。特許文献2では、例えば、端末機の温度が第1設定温度に該当する場合、第1駆動周波数で制御部を駆動させる端末機温度制御方法が記載されている。 Patent document 1 describes, for example, an information processing device that controls the processing load of an electronic circuit based on the temperature measured by a temperature monitor so that the temperature does not exceed an allowable temperature. Patent document 2 describes, for example, a terminal temperature control method that drives a control unit at a first drive frequency when the temperature of the terminal corresponds to a first set temperature.

特開2012-243274号公報JP 2012-243274 A 特開2013-33469号公報JP 2013-33469 A

プロセッサを冷却する冷却ファンを備えていない情報処理装置の場合、高温になったプロセッサの冷却は、クロック信号の周波数を低下させることで行われる。このような冷却方法では、既に高温になったプロセッサを冷却するには、クロック信号の周波数を大幅に下げることになる。クロック信号の周波数が大幅に下げられると、単位時間あたりにプロセッサが処理できる処理量が大幅に低下する。そのため、実行されているアプリケーションプログラムが要求する処理能力に対し、プロセッサが提供できる処理能力が不足する虞がある。処理能力が不足すると、操作に対する反応が鈍い、表示された画像等の動きが滑らかではない等の操作性が低下する事象が生じ得る。 In the case of information processing devices that do not have a cooling fan to cool the processor, a processor that has become too hot is cooled by lowering the frequency of the clock signal. With this type of cooling method, in order to cool a processor that has already become too hot, the frequency of the clock signal is significantly lowered. If the frequency of the clock signal is significantly lowered, the amount of processing that the processor can process per unit time is significantly reduced. As a result, there is a risk that the processing power that the processor can provide will be insufficient for the processing power required by the application program being executed. If the processing power is insufficient, issues such as poor operability, such as slow response to operations and non-smooth movement of displayed images, may occur.

開示の技術の1つの側面は、処理能力を低下させることでプロセッサの発熱を抑制しても操作性の低下を抑制できる情報処理装置を提供することを目的とする。 One aspect of the disclosed technology is to provide an information processing device that can suppress heat generation from the processor by reducing processing power while suppressing degradation of operability.

開示の技術の1つの側面は、次のような情報処理装置によって例示される。本情報処理装置は、プロセッサと、クロック信号を前記プロセッサに供給する供給部と、前記プロセッサの温度が制限温度に達すると、前記プロセッサの処理能力を第1の処理能力に低下させる制限部と、を備え、前記制限部は、前記プロセッサの負荷変動パターンを測定し、記憶部に予め記憶した前記制限温度に達するまでの前記プロセッサの負荷変動パターンを示す参照パターンと、前記測定した負荷変動パターンとの差が閾値以下となると、前記第1の処理能力よりも処理能力の高い第2の処理能力に低下させる。 One aspect of the disclosed technology is exemplified by an information processing device as follows. The information processing device includes a processor, a supply unit that supplies a clock signal to the processor, and a limiting unit that reduces the processing power of the processor to a first processing power when the temperature of the processor reaches a limit temperature. The limiting unit measures a load fluctuation pattern of the processor, and reduces the processing power to a second processing power higher than the first processing power when a difference between a reference pattern indicating the load fluctuation pattern of the processor until the limit temperature is reached, which is stored in advance in a storage unit, and the measured load fluctuation pattern becomes equal to or less than a threshold value.

開示の技術は、処理能力を低下させることでプロセッサの発熱を抑制しても操作性の低下を抑制することができる。 The disclosed technology can reduce heat generation from the processor by lowering processing power while still preventing a decrease in operability.

図1は、実施形態に係るスマートフォンのハードウェア構成の一例を示す図である。FIG. 1 is a diagram illustrating an example of a hardware configuration of a smartphone according to an embodiment. 図2は、実施形態において、パフォーマンス制限を実行する低減区間を例示する図である。FIG. 2 is a diagram illustrating a reduction interval for implementing performance restrictions in an embodiment. 図3は、実施形態における辞書データの一例を示す図である。FIG. 3 is a diagram illustrating an example of dictionary data according to the embodiment. 図4は、実施形態において、CPUに供給されるクロック信号の周波数と、CPUに流れる電流の関係を例示する図である。FIG. 4 is a diagram illustrating an example of the relationship between the frequency of a clock signal supplied to a CPU and the current flowing through the CPU in the embodiment. 図5は、実施形態において、予測区間中の小区間における予測発熱量の概算に用いる予測発熱量テーブルの一例である。FIG. 5 illustrates an example of a predicted heat generation amount table used for approximating a predicted heat generation amount in a small interval within a prediction interval in the embodiment. 図6は、実施形態におけるガバナーパラメータを例示する第1の図である。FIG. 6 is a first diagram illustrating governor parameters in the embodiment. 図7は、実施形態におけるガバナーパラメータを例示する第2の図である。FIG. 7 is a second diagram illustrating governor parameters in the embodiment. 図8は、実施形態におけるガバナーパラメータを例示する第3の図である。FIG. 8 is a third diagram illustrating governor parameters in the embodiment. 図9は、実施形態における、CPUの温度が制限温度に達するか否かの判定を模式的に示す図である。FIG. 9 is a diagram illustrating a determination as to whether or not the temperature of the CPU reaches the limit temperature in the embodiment. 図10は、実施形態に係るスマートフォンの処理フローの一例を示す図である。FIG. 10 is a diagram illustrating an example of a processing flow of the smartphone according to the embodiment. 図11は、実施形態における辞書データの生成処理の処理フローの一例を示す図である。FIG. 11 is a diagram illustrating an example of a process flow of dictionary data generation processing according to the embodiment. 図12は、実施形態におけるパフォーマンス制限の処理フローの一例を示す図である。FIG. 12 is a diagram illustrating an example of a processing flow of performance restriction in the embodiment. 図13は、パフォーマンス制限の実施の有無によるCPUの温度の変化を例示する図である。FIG. 13 is a diagram illustrating an example of a change in CPU temperature depending on whether or not performance restrictions are implemented.

<実施形態>
以下に示す実施形態の構成は例示であり、開示の技術は実施形態の構成に限定されない。実施形態に係る情報処理装置は、例えば、以下の構成を備える。
本実施形態に係る情報処理装置は、
プロセッサと、
クロック信号を前記プロセッサに供給する供給部と、
前記プロセッサの温度が制限温度に達すると、前記プロセッサの処理能力を第1の処理能力に低下させる制限部と、を備え、
前記制限部は、
前記プロセッサの負荷変動パターンを測定し、
記憶部に予め記憶した前記制限温度に達するまでの前記プロセッサの負荷変動パターンを示す参照パターンと、前記測定した負荷変動パターンとの差が閾値以下となると、前記第1の処理能力よりも処理能力の高い第2の処理能力に低下させる。
<Embodiment>
The configurations of the embodiments described below are merely examples, and the disclosed technology is not limited to the configurations of the embodiments. An information processing device according to the embodiments has, for example, the following configuration.
The information processing device according to this embodiment includes:
A processor;
a supply unit for supplying a clock signal to the processor;
a limiting unit that reduces a processing capability of the processor to a first processing capability when the temperature of the processor reaches a limit temperature;
The limiting portion is
measuring a load variation pattern of the processor;
When the difference between a reference pattern indicating the load fluctuation pattern of the processor until the limit temperature, which is pre-stored in a memory unit, is reached and the measured load fluctuation pattern becomes equal to or smaller than a threshold value, the processing capacity is reduced to a second processing capacity higher than the first processing capacity.

情報処理装置は、例えば、プロセッサを冷却する冷却ファンを備えない情報処理装置である。このような情報処理装置としては、例えば、スマートフォン、フィーチャーフォン、タブレット型パーソナルコンピュータ、ノートブック型パーソナルコンピュータ等を挙げることができる。また、情報処理装置は、冷却ファンを備えないことで静音を実現したデスクトップ型パーソナルコンピュータであってもよい。また、情報処理装置は、Internet of Things(IoT)で利用される小型機器であってもよい。 The information processing device is, for example, an information processing device that does not have a cooling fan for cooling a processor. Examples of such information processing devices include smartphones, feature phones, tablet personal computers, and notebook personal computers. The information processing device may also be a desktop personal computer that is quiet because it does not have a cooling fan. The information processing device may also be a small device used in the Internet of Things (IoT).

本情報処理装置は、プロセッサの温度が制限温度に達すると、プロセッサの処理能力を第1の処理能力に低下させることで、プロセッサを冷却する。ここで、既に制限温度に達したプロセッサを冷却するには、プロセッサの処理能力を大幅に低下させることになる。プロセッサの処理能力を大幅に低下させると、情報処理装置の操作性が低下する虞がある。 When the temperature of the processor reaches the limit temperature, the information processing device cools the processor by reducing the processing power of the processor to a first processing power. Here, in order to cool a processor that has already reached the limit temperature, the processing power of the processor is significantly reduced. If the processing power of the processor is significantly reduced, there is a risk that the operability of the information processing device will decrease.

そこで、本情報処理装置は、プロセッサの負荷変動パターンを基に、プロセッサの温度が制限温度に達するか否かを判定する。そして、本情報処理装置は、制限温度に達すると判定した場合、第1の処理能力よりも高い第2の処理能力にプロセッサの処理能力を低下させる。プロセッサの温度は未だ制限温度に達していないため、プロセッサの処理能力を第1の処理能力まで低下させなくとも、第2の処理能力に低下させることでプロセッサを冷却することができる。また、第2の処理能力は第1の処理能力よりも高いため、第1の処理能力に低下させる場合よりも操作性の低下は抑制される。ここで、第2の処理能力に低下させることは、たとえば、プロセッサがマルチコア構成である場合において、駆動するコアの数を減少させることを含んでもよい。 The information processing device determines whether the temperature of the processor will reach the limit temperature based on the load fluctuation pattern of the processor. If the information processing device determines that the temperature will reach the limit temperature, it reduces the processing power of the processor to a second processing power higher than the first processing power. Because the temperature of the processor has not yet reached the limit temperature, the processor can be cooled by reducing the processing power of the processor to the second processing power without reducing it to the first processing power. Furthermore, because the second processing power is higher than the first processing power, the deterioration of operability is suppressed more than when the processing power is reduced to the first processing power. Here, reducing the processing power to the second processing power may include, for example, reducing the number of cores to be driven when the processor has a multi-core configuration.

本情報処理装置は、次の特徴を備えてもよい。前記供給部は、所定周波数範囲から選択した周波数のクロック信号を前記プロセッサに供給し、前記第1の処理能力に低下させることは、前記所定周波数範囲の上限を低下させることを含み、前記第2の処理能力に低下させることは、前記所定周波数範囲の周波数のうち、上限の周波数のクロック信号が供給される割合を低下させることを含む。第2の処理能力に低下さても、所定周波数範囲の上限は変更されない。すなわち、プロセッサの処理能力が第2の処理能力に低下されても、プロセッサには処理負荷に応じて所定周波数範囲の上限の周波数のクロック信号が供給され得る。そのため、本情報処理装置は、高負荷の処理が要求されても、操作性の低下が抑制される。 The information processing device may have the following features: The supply unit supplies a clock signal of a frequency selected from a predetermined frequency range to the processor, and reducing the processing power to the first processing power includes reducing the upper limit of the predetermined frequency range, and reducing the processing power to the second processing power includes reducing the proportion of the frequencies in the predetermined frequency range to which a clock signal of the upper limit frequency is supplied. Even when the processing power is reduced to the second processing power, the upper limit of the predetermined frequency range does not change. In other words, even when the processing power of the processor is reduced to the second processing power, a clock signal of the upper limit frequency of the predetermined frequency range may be supplied to the processor in accordance with the processing load. Therefore, even when high-load processing is required, the information processing device suppresses deterioration in operability.

本情報処理装置は、次の特徴を備えてもよい。前記記憶部には、プロセスを特定する情報と対応付けて、前記参照パターンが記憶されており、前記制限部は、前記プロセッサによって実行されているプロセスを特定し、前記特定したプロセスに対応する参照パターンと、前記測定した負荷変動パターンとの差が閾値以下となると、前記第1の処理能力よりも処理能力の高い第2の処理能力に低下させる。ここで、プロセスは、アプリケーションプログラム単位であってもよいし、アプリケーションプログラム内のウィンドウ単位であってもよい。例えば、動画を再生するアプリケーションプログラムにおいて、動画を再生するウィンドウとアプリケーションプログラムの設定を行うウィンドウとでは、プロセッサへの負荷が異なると考えられる。そのため、アプリケーションプログラムではなくウィンドウに対応付けて参照パターンが記憶されることも有用である。このような特徴を備えることで、本情報処理装置は、プロセスの負荷変動の特性に応じて第2の処理能力への低下を行うことができる。 The information processing device may have the following features. The storage unit stores the reference pattern in association with information identifying a process, and the limiting unit identifies a process being executed by the processor, and when the difference between the reference pattern corresponding to the identified process and the measured load fluctuation pattern becomes equal to or less than a threshold, the processing capacity is reduced to a second processing capacity that is higher than the first processing capacity. Here, the process may be an application program unit, or may be a window unit within the application program. For example, in an application program that plays a video, the load on the processor is considered to be different between a window that plays the video and a window that sets the application program. Therefore, it is also useful to store the reference pattern in association with a window rather than an application program. By having such features, the information processing device can reduce the processing capacity to the second processing capacity according to the characteristics of the load fluctuation of the process.

本情報処理装置は、次の特徴を備えてもよい。前記制限部は、前記記憶部に負荷変動パターンが記憶されていない場合には、前記プロセッサの温度が前記制限温度に達するまでの負荷変動パターンを測定し、前記測定した前記制限温度に達するまでの負荷変動パターンを前記参照パターンとして前記記憶部に記憶させる。このような特徴を備えることで、ユーザの操作の癖や情報処理装置毎の特性(バックグラウンドで実行されるプロセス等)を反映した負荷変動パターンを記憶部に記憶させることができる。 The information processing device may have the following features. When a load fluctuation pattern is not stored in the storage unit, the limiting unit measures a load fluctuation pattern until the temperature of the processor reaches the limit temperature, and stores the measured load fluctuation pattern until the limit temperature is reached as the reference pattern in the storage unit. By providing such features, a load fluctuation pattern that reflects a user's operating habits and characteristics of each information processing device (such as processes executed in the background) can be stored in the storage unit.

以下、図面を参照して上記情報処理装置をスマートフォンに適用した実施形態についてさらに説明する。図1は、実施形態に係るスマートフォンのハードウェア構成の一例を示す図である。図1に例示されるスマートフォン100は、Central Processing Unit(CPU)101、記憶部102、サーミスタ103、ガバナー制御部104、温度制御部105、周波数制御部106及びガバナー温度制御部107を備える。スマートフォン100は、筐体内のスペースの関係上、CPU101を冷却する冷却ファンを備えていない。 Below, an embodiment in which the above-mentioned information processing device is applied to a smartphone will be further described with reference to the drawings. FIG. 1 is a diagram showing an example of the hardware configuration of a smartphone according to an embodiment. The smartphone 100 illustrated in FIG. 1 includes a Central Processing Unit (CPU) 101, a memory unit 102, a thermistor 103, a governor control unit 104, a temperature control unit 105, a frequency control unit 106, and a governor temperature control unit 107. Due to space limitations within the housing, the smartphone 100 does not include a cooling fan for cooling the CPU 101.

CPU101は、マイクロプロセッサユニット(MPU)、プロセッサとも呼ばれる。
CPU101は、単一のプロセッサに限定される訳ではなく、マルチプロセッサ構成であってもよい。また、単一のソケットで接続される単一のCPU101がマルチコア構成を有していてもよい。CPU101が実行する処理のうち少なくとも一部は、CPU101以外のプロセッサ、例えば、Digital Signal Processor(DSP)、Graphics Processing Unit(GPU)、数値演算プロセッサ、ベクトルプロセッサ、画像処理プロセッサ等の専用プロセッサで行われてもよい。また、CPU101が実行する処理のうち少なくとも一部は、集積回路(IC)、その他のデジタル回路によって実行されてもよい。また、CPU101の少なくとも一部にアナログ回路が含まれてもよい。集積回路は、Large Scale Integrated circuit(LSI)、Application Specific Integrated Circuit(ASIC)、プログラマブルロジックデバイス(PLD)を含む。PLDは、例えば、Field-Programmable Gate Array(FPGA)を含む。CPU101は、プロセッサと集積回路との組み合わせであってもよい。組み合わせは、例えば、マイクロコントローラユニット(MCU)、System-on-a-chip(SoC)、システムLSI、チップセットなどと呼ばれる。スマートフォン100では、記憶部102に記憶されたアプリケーションプログラムをCPU101が実行することで、周辺装置の制御が行われる。これにより、スマートフォン100は、所定の目的に合致した処理を実行することができる。
The CPU 101 is also called a microprocessor unit (MPU) or a processor.
The CPU 101 is not limited to a single processor, and may have a multi-processor configuration. Also, a single CPU 101 connected by a single socket may have a multi-core configuration. At least a part of the processing executed by the CPU 101 may be executed by a processor other than the CPU 101, for example, a dedicated processor such as a digital signal processor (DSP), a graphics processing unit (GPU), a numerical calculation processor, a vector processor, or an image processing processor. Also, at least a part of the processing executed by the CPU 101 may be executed by an integrated circuit (IC) or other digital circuit. Also, at least a part of the CPU 101 may include an analog circuit. The integrated circuit includes a large scale integrated circuit (LSI), an application specific integrated circuit (ASIC), and a programmable logic device (PLD). The PLD includes, for example, a Field-Programmable Gate Array (FPGA). The CPU 101 may be a combination of a processor and an integrated circuit. The combination is called, for example, a microcontroller unit (MCU), a system-on-a-chip (SoC), a system LSI, a chipset, etc. In the smartphone 100, the CPU 101 executes an application program stored in the storage unit 102 to control peripheral devices. This allows the smartphone 100 to execute processing that matches a predetermined purpose.

CPU101は、供給されるクロック信号の周波数に応じて、発熱量が変動する。そのため、高い周波数のクロック信号が供給される時間が長くなると、CPU101は高温になる。CPU101は、「プロセッサ」の一例である。 The amount of heat generated by the CPU 101 varies depending on the frequency of the clock signal supplied to it. Therefore, if a high-frequency clock signal is supplied for a long period of time, the CPU 101 becomes hot. The CPU 101 is an example of a "processor."

記憶部102は、主記憶部や補助記憶部を含む。主記憶部は、CPU101から直接アクセスされる記憶部として例示される。主記憶部は、Random Access Memory(RAM)およびRead Only Memory(ROM)を含む。 The memory unit 102 includes a main memory unit and an auxiliary memory unit. The main memory unit is exemplified as a memory unit that is directly accessed by the CPU 101. The main memory unit includes a Random Access Memory (RAM) and a Read Only Memory (ROM).

補助記憶部は、各種のプログラムおよび各種のデータを読み書き自在に記録媒体に格納する。補助記憶部には、オペレーティングシステム(Operating System、OS)、各種プログラム、各種テーブル等が格納される。また、補助記憶部には、スマートフォン100にインストールされたアプリケーションプログラム(図中では、「アプリ」と記載)も記憶される。 The auxiliary memory stores various programs and various data in a readable and writable manner on a recording medium. The auxiliary memory stores an operating system (OS), various programs, various tables, and the like. The auxiliary memory also stores application programs (referred to as "apps" in the figure) installed on the smartphone 100.

補助記憶部としては、例えば、Erasable Programmable ROM(EPROM)、ソリッドステートドライブ(Solid State Drive、SSD)、ハードディスクドライブ(Hard Disk Drive、HDD)等を挙げることができる。記憶部102は、「記憶部」の一例である。 Examples of auxiliary memory units include erasable programmable ROM (EPROM), solid state drive (SSD), and hard disk drive (HDD). Memory unit 102 is an example of a "memory unit."

サーミスタ103は、CPU101の温度を測定する。温度制御部105は、サーミスタ103が測定したCPU101の温度を取得する。温度制御部105は、取得した温度が予め設定された制限温度以上である場合に、CPU101に供給するクロック信号の周波数の上限をCPU101が動作可能な最大周波数より低い第1周波数に低下させる温度制限をガバナー制御部104に対して行う。 Thermistor 103 measures the temperature of CPU 101. Temperature control unit 105 acquires the temperature of CPU 101 measured by thermistor 103. If the acquired temperature is equal to or higher than a preset limit temperature, temperature control unit 105 imposes a temperature restriction on governor control unit 104, lowering the upper limit of the frequency of the clock signal supplied to CPU 101 to a first frequency that is lower than the maximum frequency at which CPU 101 can operate.

ガバナー制御部104は、周波数制御部106がCPU101に供給するクロック信号の周波数を制御する。ガバナー制御部104は、例えば、ガバナーパラメータを周波数制御部106に適用することで、周波数制御部106が供給するクロック信号の周波数を制御する。ガバナーパラメータは、例えば、CPU101の負荷率と、供給するクロック信号の周波数と、当該周波数のクロック信号の供給を維持する維持時間とを対応付けたパラメータである。ガバナーパラメータについての詳細は後述する。ガバナー制御部104は
、温度制限が行われている場合には、第1周波数を上限とした範囲で、CPU101に供給するクロック信号の周波数を決定する。ガバナー制御部104は、「制限部」の一例である。
The governor control unit 104 controls the frequency of the clock signal supplied by the frequency control unit 106 to the CPU 101. The governor control unit 104 controls the frequency of the clock signal supplied by the frequency control unit 106, for example, by applying a governor parameter to the frequency control unit 106. The governor parameter is, for example, a parameter that associates the load factor of the CPU 101, the frequency of the clock signal to be supplied, and the maintenance time for maintaining the supply of the clock signal of that frequency. The governor parameter will be described in detail later. When a temperature limit is applied, the governor control unit 104 determines the frequency of the clock signal to be supplied to the CPU 101 within a range with the first frequency as the upper limit. The governor control unit 104 is an example of a "limiting unit".

周波数制御部106は、ガバナー制御部104から適用されたガバナーパラメータにしたがってクロック信号の周波数を決定し、決定した周波数のクロック信号をCPU101に供給する。CPU101は、周波数制御部106から供給されたクロック信号を基に動作する。周波数制御部106は、「供給部」の一例である。 The frequency control unit 106 determines the frequency of the clock signal according to the governor parameters applied by the governor control unit 104, and supplies the clock signal of the determined frequency to the CPU 101. The CPU 101 operates based on the clock signal supplied from the frequency control unit 106. The frequency control unit 106 is an example of a "supply unit".

ここで、ガバナー制御部104による温度制限では、CPU101に供給するクロック信号の周波数の上限が第1周波数に低下させられるため、スマートフォン100のパフォーマンスが著しく低下する虞がある。そこで、本実施形態では、ガバナー温度制御部107が、CPU101の温度が制限温度に達するか否かを判定する。ガバナー温度制御部107は、制限温度に達すると判定すると、温度制限よりも緩やかなパフォーマンス制限をCPU101に対して実行する。パフォーマンス制限は、温度制限よりも緩やかな制限であることから、CPU101のパフォーマンスが著しく低下することが抑制される。また、ガバナー温度制御部107によってパフォーマンス制限が実行されることで、CPU101の発熱量が抑制される。このようなパフォーマンス制限が行われることで、CPU101の温度が制限温度に達することが回避されたり、CPU101の温度が制限温度に達するタイミングを遅らせることができる。 Here, in the temperature restriction by the governor control unit 104, the upper limit of the frequency of the clock signal supplied to the CPU 101 is lowered to the first frequency, which may cause a significant decrease in the performance of the smartphone 100. Therefore, in this embodiment, the governor temperature control unit 107 determines whether the temperature of the CPU 101 reaches the limit temperature. When the governor temperature control unit 107 determines that the limit temperature is reached, it imposes a performance restriction on the CPU 101 that is more lenient than the temperature restriction. Since the performance restriction is more lenient than the temperature restriction, a significant decrease in the performance of the CPU 101 is suppressed. In addition, the performance restriction executed by the governor temperature control unit 107 suppresses the amount of heat generated by the CPU 101. By implementing such a performance restriction, it is possible to prevent the temperature of the CPU 101 from reaching the limit temperature or to delay the timing at which the temperature of the CPU 101 reaches the limit temperature.

図2は、実施形態において、パフォーマンス制限を実行する低減区間を例示する図である。図2において、縦軸はCPU101の温度を例示し、横軸は時間を例示する。ガバナー温度制御部107は、予測区間において、CPU101の温度が制限温度に達するか否かを判定する。ガバナー温度制御部107は、制限温度に達すると判定すると、CPU101に対するパフォーマンス制限を低減区間において実行する。パフォーマンス制限が行われてもCPU101の温度が制限温度に達した場合、ガバナー制御部104によって温度制限が実行される。 FIG. 2 is a diagram illustrating a reduction interval in which performance restrictions are implemented in an embodiment. In FIG. 2, the vertical axis illustrates the temperature of CPU 101, and the horizontal axis illustrates time. Governor temperature control unit 107 determines whether the temperature of CPU 101 will reach the limit temperature in the prediction interval. If governor temperature control unit 107 determines that the limit temperature will be reached, it implements performance restrictions on CPU 101 in the reduction interval. If the temperature of CPU 101 reaches the limit temperature even after performance restrictions are implemented, temperature restrictions are implemented by governor control unit 104.

ガバナー温度制御部107は、CPU101が実行しているアプリケーションプログラムと、CPU101の負荷変動パターンを監視する。予測区間における判定では、ガバナー温度制御部107は、監視した負荷変動パターンを基に、後述する辞書データを参照して、CPU101の温度が制限温度に達するか否かを判定すればよい。 The governor temperature control unit 107 monitors the application programs being executed by the CPU 101 and the load fluctuation pattern of the CPU 101. In making a judgment in the prediction interval, the governor temperature control unit 107 may refer to dictionary data, described below, based on the monitored load fluctuation pattern and judge whether the temperature of the CPU 101 will reach the limit temperature.

パフォーマンス制限としては、最大周波数のクロック信号がCPU101に供給されることを許容する一方で、最大周波数のクロック信号が供給される供給時間を短縮することが挙げられる。このような供給時間を短縮することとしては、例えば、負荷に応じてクロック信号の周波数が最大周波数に遷移しても、CPU101の負荷の低下に応じて速やかにクロック信号の周波数を低下させることを挙げることができる。このような制御は、例えば、CPU101の負荷とクロック信号の周波数とを対応付けたガバナーテーブルを用いて行われる。 Performance restrictions include allowing a maximum frequency clock signal to be supplied to CPU 101 while shortening the supply time during which the maximum frequency clock signal is supplied. For example, shortening the supply time may include quickly lowering the frequency of the clock signal in response to a reduction in the load on CPU 101, even if the frequency of the clock signal transitions to the maximum frequency in response to the load. Such control is performed, for example, using a governor table that associates the load on CPU 101 with the frequency of the clock signal.

ガバナー温度制御部107は、CPU101によって実行されているアプリケーションプログラムに対応する辞書データが未だ存在しない場合、当該アプリケーションプログラムに対応する辞書データの生成を行う。ガバナー温度制御部107は、温度制御部105から温度制限を実行したことの通知を受けると、予測区間における、CPU101の負荷変動パターン及び低減ガバナーパラメータを対応付けて辞書データとして記憶する。 If dictionary data corresponding to an application program being executed by CPU 101 does not yet exist, governor temperature control unit 107 generates dictionary data corresponding to the application program. When governor temperature control unit 107 receives a notification from temperature control unit 105 that a temperature limit has been executed, governor temperature control unit 107 associates the load fluctuation pattern of CPU 101 and the reduced governor parameters in the prediction interval and stores them as dictionary data.

ここで、予測区間はアプリケーション毎に異なってもよい。例えば、CPU101に対する負荷が頻繁に変動するアプリケーションプログラムについては予測区間を長めに設定
し、CPU101に対する負荷の変動が少ないアプリケーションプログラムについては予測区間を短めに設定してもよい。低減ガバナーパラメータは、温度制限よりも緩やかなパフォーマンス制限をCPU101に対して実行する際に用いるパラメータである。ガバナー温度制御部107は、例えば、温度制限を実行したことの通知を所定回数以上受けたアプリケーションについて、辞書データを記憶するようにしてもよい。ガバナー温度制御部107は、「制限部」の一例である。
Here, the prediction interval may be different for each application. For example, the prediction interval may be set longer for an application program in which the load on the CPU 101 fluctuates frequently, and shorter for an application program in which the load on the CPU 101 fluctuates little. The reduced governor parameter is a parameter used when imposing a performance restriction on the CPU 101 that is more lenient than the temperature restriction. The governor temperature control unit 107 may store dictionary data for applications that have received a notification that a temperature restriction has been imposed a predetermined number of times or more. The governor temperature control unit 107 is an example of a "restriction unit".

図3は、実施形態における辞書データの一例を示す図である。図3に例示される辞書データ1071は、「アプリケーション名」、「予測区間の長さ」、「特徴データ」、「ガバナーパラメータ」の各項目を含む。「アプリケーション名」には、アプリケーションプログラムの名称が格納される。「予測区間の長さ」には、アプリケーションプログラムに対応する予測区間の長さが格納される。予測区間の長さは、例えば、アプリケーションプログラム毎に温度制限に達するまでの時間から低減区間を除いた長さである。「特徴データ」には、例えば、CPU101の負荷変動パターンを示すデータが格納される。 Figure 3 is a diagram showing an example of dictionary data in an embodiment. Dictionary data 1071 illustrated in Figure 3 includes the following items: "Application name", "Length of prediction interval", "Feature data", and "Governor parameters". "Application name" stores the name of an application program. "Length of prediction interval" stores the length of the prediction interval corresponding to an application program. The length of the prediction interval is, for example, the length of the time until the temperature limit is reached for each application program minus the reduction interval. "Feature data" stores, for example, data indicating the load fluctuation pattern of CPU 101.

CPU101の負荷変動パターンを示すデータとしては、例えば、CPU101の予測発熱量と、サーミスタ103によって測定されたCPU101の温度の組の時系列の変化を挙げることができる。時系列の変化としては、例えば、予測区間を複数の小区間に区切り、小区間夫々におけるCPU101の予測発熱量と、サーミスタ103によって測定されたCPU101の温度の組を列挙したものを挙げることができる。辞書データ1071は、例えば、ガバナー温度制御部107内の記憶部に記憶される。また、辞書データ1071は、例えば、記憶部102に記憶されてもよい。辞書データ1071は、「参照パターン」の一例である。 Data indicating the load fluctuation pattern of the CPU 101 may be, for example, a time series change in a pair of the predicted heat generation amount of the CPU 101 and the temperature of the CPU 101 measured by the thermistor 103. An example of the time series change may be a list of pairs of the predicted heat generation amount of the CPU 101 and the temperature of the CPU 101 measured by the thermistor 103 in each of the sub-intervals, with the prediction interval divided into a number of sub-intervals. The dictionary data 1071 is stored, for example, in a storage unit in the governor temperature control unit 107. The dictionary data 1071 may also be stored, for example, in the storage unit 102. The dictionary data 1071 is an example of a "reference pattern".

予測発熱量は、例えば、CPU101に供給されるクロック信号の周波数から推定することができる。図4は、実施形態において、CPUに供給されるクロック信号の周波数と、CPUに流れる電流の関係を例示する図である。CPU101に多くの電流が流れるとCPU101の消費電力が高くなることから、図4は、CPUに供給されるクロック信号の周波数と、CPU101の消費電力の関係を例示しているということもできる。図4を参照すると、CPU101に供給するクロック信号の周波数が高くなる程、CPU101の消費電力が高くなることが理解できる。そして、CPU101は、消費電力が高くなることに応じて、発熱量が増加する。そのため、予測発熱量は、周波数分布を基に概算で算出することができる。 The predicted heat generation amount can be estimated, for example, from the frequency of the clock signal supplied to the CPU 101. FIG. 4 is a diagram illustrating the relationship between the frequency of the clock signal supplied to the CPU and the current flowing through the CPU in an embodiment. When a large current flows through the CPU 101, the power consumption of the CPU 101 increases. Therefore, FIG. 4 can be said to illustrate the relationship between the frequency of the clock signal supplied to the CPU and the power consumption of the CPU 101. With reference to FIG. 4, it can be seen that the higher the frequency of the clock signal supplied to the CPU 101, the higher the power consumption of the CPU 101. And, the amount of heat generated by the CPU 101 increases in response to the increased power consumption. Therefore, the predicted heat generation amount can be roughly calculated based on the frequency distribution.

図5は、実施形態において、予測区間中の小区間における予測発熱量の概算に用いる予測発熱量テーブルの一例である。予測発熱量テーブル1072は、「周波数」、「重み」、「周波数分布」及び「予測発熱量」の各項目を含む。「周波数」には、小区間においてCPU101に供給されたクロック信号の周波数が列挙される。周波数の単位は、例えば、「MHz」である。図5では、小区間において、周波数100MHz、200Mhz、300Mhzのクロック信号が供給されたことが例示される。「重み」には、周波数夫々について、発熱量の概算に用いる重みを示す情報が格納される。重みを示す情報は、例えば、高い周波数ほど重みが大きくなる。「周波数分布」は、各周波数のクロック信号が供給された時間を小区間全体を1とした比率で示した情報が格納される。「予測発熱量」には、「重み」と「周波数分布」を基に算出された予測発熱量の概算値が格納される。図5の例では、周波数200MHzについて「重み」が「2」、「周波数分布」が「0.3」であることから、これらの乗算の結果、予測発熱量として「0.6」が算出される。予測区間における発熱量は、各周波数での予測発熱量の合計となるため、図5の例では、小区間における予測発熱量として「2.3」が算出される。 5 is an example of a predicted heat generation amount table used to estimate the predicted heat generation amount in a small section in a prediction interval in an embodiment. The predicted heat generation amount table 1072 includes the items of "frequency", "weight", "frequency distribution", and "predicted heat generation amount". "Frequency" lists the frequency of the clock signal supplied to the CPU 101 in the small section. The unit of frequency is, for example, "MHz". FIG. 5 illustrates that clock signals of frequencies 100 MHz, 200 Mhz, and 300 Mhz are supplied in the small section. "Weight" stores information indicating the weight used to estimate the heat generation amount for each frequency. For example, the higher the frequency, the greater the weight. "Frequency distribution" stores information indicating the time when the clock signal of each frequency is supplied as a ratio with the entire small section set to 1. "Predicted heat generation amount" stores an approximate value of the predicted heat generation amount calculated based on "weight" and "frequency distribution". In the example of Figure 5, the "weight" for the frequency 200 MHz is "2" and the "frequency distribution" is "0.3", so as a result of these multiplications, the predicted heat generation amount is calculated as "0.6". The heat generation amount in the prediction interval is the sum of the predicted heat generation amounts at each frequency, so in the example of Figure 5, the predicted heat generation amount in the small interval is calculated as "2.3".

図3に戻り、「ガバナーパラメータ」には、パフォーマンス制限を行う際に適用する低
減ガバナーパラメータを示す情報が格納される。図6から図8は、実施形態におけるガバナーパラメータを例示する図である。図6は、温度制限及びパフォーマンス制限のいずれもが行われていない状態に適用されるガバナーパラメータを例示する。図7及び図8は、パフォーマンス制限に用いられる低減ガバナーパラメータを例示する。図6から図8に例示されるガバナーパラメータ及び低減ガバナーパラメータは、「周波数」、「目標負荷率」及び「維持時間」の各項目を対応付けるテーブルとして例示される。「周波数」には、周波数制御部106がCPU101に供給するクロック信号の周波数(MHz)が格納される。「目標負荷率」には、CPU101の負荷率(%)に近くなるように周波数が決められる値が格納される。「維持時間」には、変更された周波数のクロック信号が継続して供給される最低時間(ms)が格納される。
Returning to FIG. 3, the "Governor Parameter" stores information indicating a reduced governor parameter applied when performance restriction is performed. FIGS. 6 to 8 are diagrams illustrating governor parameters in the embodiment. FIG. 6 illustrates a governor parameter applied when neither temperature restriction nor performance restriction is performed. FIGS. 7 and 8 illustrate a reduced governor parameter used for performance restriction. The governor parameters and reduced governor parameters illustrated in FIGS. 6 to 8 are illustrated as a table that associates the items of "frequency,""target load factor," and "maintenance time." The "frequency" stores the frequency (MHz) of the clock signal supplied to the CPU 101 by the frequency control unit 106. The "target load factor" stores a value that determines the frequency so as to be close to the load factor (%) of the CPU 101. The "maintenance time" stores the minimum time (ms) for which the clock signal of the changed frequency is continuously supplied.

例えば、図6に例示するガバナーパラメータ1073では、CPU101に供給されているクロック信号の周波数が100MHzであるときにCPU101の負荷率が40%を超えると、CPU101に供給されるクロック信号の周波数は200MHzに変更される。ガバナーパラメータ1073の例では、例えば、クロック信号の周波数が「300MHz」に変更されると、200ms継続して周波数300MHzのクロック信号がCPU101に供給される。200msを経過すると、CPU101に供給されるクロック信号の周波数は、ガバナーパラメータ1073において1段階低い周波数である「200MHz」に変更される。 For example, in the governor parameters 1073 illustrated in FIG. 6, when the frequency of the clock signal supplied to the CPU 101 is 100 MHz and the load factor of the CPU 101 exceeds 40%, the frequency of the clock signal supplied to the CPU 101 is changed to 200 MHz. In the example of the governor parameters 1073, for example, when the frequency of the clock signal is changed to "300 MHz", a clock signal of 300 MHz is supplied to the CPU 101 for 200 ms continuously. After 200 ms have elapsed, the frequency of the clock signal supplied to the CPU 101 is changed to "200 MHz", which is one step lower in the governor parameters 1073.

図7に例示される低減ガバナーパラメータ1074は、ガバナーパラメータ1073と比較して、周波数200MHz以上における目標負荷率が高く設定されているとともに、周波数300MHz以上における維持時間が短く設定される。そのため、低減ガバナーパラメータ1074は、高い周波数に遷移しにくくなるとともに、低い周波数に遷移しやすいガバナーパラメータとなっている。 The reduced governor parameter 1074 illustrated in FIG. 7 is set to have a higher target load factor at frequencies of 200 MHz or higher and a shorter maintenance time at frequencies of 300 MHz or higher than the governor parameter 1073. Therefore, the reduced governor parameter 1074 is a governor parameter that makes it difficult to transition to high frequencies and makes it easy to transition to low frequencies.

図8に例示される低減ガバナーパラメータ1075は、低減ガバナーパラメータ1074よりも更に、高い周波数に遷移しにくくなるとともに、低い周波数に遷移しやすいガバナーパラメータとなっている。ここで、いずれの低減ガバナーパラメータも、周波数制御部106が供給する周波数の上限を低下させるものではないため、周波数制御部106は、CPU101の負荷に応じて、CPU101の動作可能な最大周波数のクロック信号をCPU101に供給することができる。低減ガバナーパラメータ1074、1075は、CPU101に供給するクロック信号の周波数変動頻度パターンが異なるガバナーパラメータということができる。 The reduction governor parameter 1075 illustrated in FIG. 8 is a governor parameter that makes it even more difficult to transition to a higher frequency and easier to transition to a lower frequency than the reduction governor parameter 1074. Here, since none of the reduction governor parameters lowers the upper limit of the frequency supplied by the frequency control unit 106, the frequency control unit 106 can supply to the CPU 101 a clock signal of the maximum frequency at which the CPU 101 can operate, depending on the load on the CPU 101. The reduction governor parameters 1074 and 1075 can be said to be governor parameters that have different frequency fluctuation patterns of the clock signal supplied to the CPU 101.

ガバナーパラメータ及び低減ガバナーパラメータにおける高い周波数への遷移の容易さは、目標負荷率によって制御可能である。目標負荷率を高くすることで、高い周波数へ遷移しにくくなる。一方で、目標負荷率を低くすることで、高い周波数遷移しやすくなる。また、低減ガバナーパラメータにおける低い周波数への遷移の容易さは、維持時間によって制御可能である。維持時間を長くすることで、低い周波数へ遷移しにくくなる。また、維持時間を短くすることで、低い周波数へ遷移しやすくなる。 The ease of transitioning to a higher frequency in the governor parameters and reduced governor parameters can be controlled by the target load rate. Increasing the target load rate makes it more difficult to transition to a higher frequency. On the other hand, lowering the target load rate makes it easier to transition to a higher frequency. Also, the ease of transitioning to a lower frequency in the reduced governor parameters can be controlled by the maintenance time. Increasing the maintenance time makes it more difficult to transition to a lower frequency. On the other hand, shortening the maintenance time makes it easier to transition to a lower frequency.

図9は、実施形態における、CPUの温度が制限温度に達するか否かの判定を模式的に示す図である。図9において、縦軸は特徴データを例示し、横軸は時間を例示する。ここでは、特徴データとして、予測発熱量を採用する。ガバナー温度制御部107は、予測区間を区切った小区間ごとに、CPU101に供給されたクロック信号の周波数を基に算出した予測発熱量と、辞書データ1071の予測発熱量との差の絶対値を算出する。ガバナー温度制御部107は、小区間夫々で算出した差の絶対値を合算した非類似度を算出する。非類似度は、値が大きいほど、実測データと辞書データ1071との乖離が大きいことを示す。すなわち、ガバナー温度制御部107は、非類似度が大きいほど、CPU101
の温度が制限温度に達する可能性は低いと判定する。換言すれば、非類似度の大きさは、CPU101が温度制限に達する確率の低さを示すということもできる。本実施形態では、辞書データ1071には特徴データとして予測発熱量とともにサーミスタ103によって測定された温度が格納される。そこで、ガバナー温度制御部107は、CPU101の温度についても、予測発熱量と同様に、サーミスタ103が実測したCPU101の温度と、辞書データ1071に格納された温度の非類似度を算出する。ガバナー温度制御部107は、予測発熱量及び温度の少なくとも一方の非類似度が閾値以下である場合に、CPU101の温度が制限温度に達すると判定してもよい。また、ガバナー温度制御部107は、予測発熱量の非類似度及び温度の非類似度のいずれもが閾値以下である場合に、CPU101の温度が制限温度に達すると判定してもよい。
FIG. 9 is a diagram showing a schematic diagram of a determination as to whether or not the temperature of the CPU reaches the limit temperature in an embodiment. In FIG. 9, the vertical axis illustrates an example of feature data, and the horizontal axis illustrates an example of time. Here, a predicted heat generation amount is adopted as the feature data. For each small section that divides the prediction interval, the governor temperature control unit 107 calculates the absolute value of the difference between the predicted heat generation amount calculated based on the frequency of the clock signal supplied to the CPU 101 and the predicted heat generation amount in the dictionary data 1071. The governor temperature control unit 107 calculates a dissimilarity by adding up the absolute values of the differences calculated for each small section. The larger the dissimilarity value, the greater the deviation between the actual measurement data and the dictionary data 1071. In other words, the governor temperature control unit 107 determines that the greater the dissimilarity, the greater the deviation between the actual measurement data and the dictionary data 1071.
The governor temperature control unit 107 determines that the temperature of the CPU 101 is unlikely to reach the limit temperature. In other words, the magnitude of the dissimilarity indicates the low probability that the CPU 101 will reach the temperature limit. In this embodiment, the dictionary data 1071 stores the temperature measured by the thermistor 103 together with the predicted heat generation amount as feature data. Thus, the governor temperature control unit 107 calculates the dissimilarity between the temperature of the CPU 101 actually measured by the thermistor 103 and the temperature stored in the dictionary data 1071, as with the predicted heat generation amount. The governor temperature control unit 107 may determine that the temperature of the CPU 101 will reach the limit temperature when the dissimilarity of at least one of the predicted heat generation amount and the temperature is equal to or less than a threshold value. The governor temperature control unit 107 may also determine that the temperature of the CPU 101 will reach the limit temperature when both the dissimilarity of the predicted heat generation amount and the dissimilarity of the temperature are equal to or less than a threshold value.

<スマートフォン100の処理フロー>
図10は、実施形態に係るスマートフォンの処理フローの一例を示す図である。図10に例示される処理は、スマートフォン100が起動している間、繰り返し実行される。以下、図10を参照して、スマートフォン100の処理フローの一例について説明する。
<Processing flow of the smartphone 100>
Fig. 10 is a diagram showing an example of a processing flow of the smartphone according to the embodiment. The processing illustrated in Fig. 10 is repeatedly executed while the smartphone 100 is activated. Hereinafter, an example of the processing flow of the smartphone 100 will be described with reference to Fig. 10.

J1では、ガバナー温度制御部107は、CPU101で実行されているアプリケーションプログラムの名称を取得する。J2では、ガバナー温度制御部107は、J1で取得したアプリケーションプログラムの名称に対応した辞書データ1071が生成されているか否かを判定する。辞書データ1071が生成されている場合(J2でYES)、処理はJ3に進められる。辞書データ1071が生成されていない場合(J2でNO)、処理はJ5に進められる。 At J1, the governor temperature control unit 107 acquires the name of the application program being executed by the CPU 101. At J2, the governor temperature control unit 107 determines whether or not dictionary data 1071 corresponding to the name of the application program acquired at J1 has been generated. If dictionary data 1071 has been generated (YES at J2), the process proceeds to J3. If dictionary data 1071 has not been generated (NO at J2), the process proceeds to J5.

J3では、ガバナー温度制御部107は、CPU101の実測のデータと、辞書データ1071とを基に、CPU101の温度が制限温度に達するか否かを判定する。制限温度に達すると判定した場合(J3でYES)、処理はJ4に進められる。制限温度に達しないと判定した場合(J3でNO)、処理は終了する。 In J3, the governor temperature control unit 107 determines whether the temperature of the CPU 101 will reach the limit temperature based on the actual measurement data of the CPU 101 and the dictionary data 1071. If it is determined that the limit temperature will be reached (YES in J3), the process proceeds to J4. If it is determined that the limit temperature will not be reached (NO in J3), the process ends.

J4では、ガバナー温度制御部107は、CPU101に対するパフォーマンス制限を行う。パフォーマンス制限の詳細は、図12を参照して説明する。 In J4, the governor temperature control unit 107 imposes performance restrictions on the CPU 101. Details of the performance restrictions are described with reference to FIG. 12.

J5では、ガバナー温度制御部107は、辞書データ1071を生成する。辞書データ1071を生成する処理の詳細は、図11を参照して説明する。 In J5, the governor temperature control unit 107 generates dictionary data 1071. Details of the process of generating the dictionary data 1071 will be described with reference to FIG. 11.

<辞書データ1071の生成処理>
図11は、実施形態における辞書データの生成処理の処理フローの一例を示す図である。図11に例示する処理は、例えば、図10のJ5において実行される。以下、図11を参照して、辞書データ1071の生成処理の処理フローの一例について説明する。
<Generation process of dictionary data 1071>
Fig. 11 is a diagram showing an example of a process flow of dictionary data generation processing in an embodiment. The process illustrated in Fig. 11 is executed, for example, in J5 in Fig. 10. Hereinafter, an example of a process flow of dictionary data 1071 generation processing will be described with reference to Fig. 11.

J51では、ガバナー温度制御部107は、CPU101の負荷変動パターンを監視する。J52では、ガバナー温度制御部107は、ガバナー制御部104によって温度制限が実行されたか否かを判定する。実行された場合(J52でYES)、処理はJ53に進められる。実行されていない場合(J52でNO)、処理はJ51に進められる。 In J51, the governor temperature control unit 107 monitors the load fluctuation pattern of the CPU 101. In J52, the governor temperature control unit 107 determines whether or not a temperature limit has been implemented by the governor control unit 104. If it has been implemented (YES in J52), the process proceeds to J53. If it has not been implemented (NO in J52), the process proceeds to J51.

J53では、ガバナー温度制御部107は、温度制限が実行されるまでの予測区間に相当する期間における負荷変動パターンを保存する。負荷変動パターンの保存では、予測区間に相当する期間を小区間に分割し、分割した小区間夫々における負荷変動パターンを示す特徴データを保存すればよい。負荷変動パターンを保存する領域は、ガバナー温度制御部107内の記憶部であってもよいし、記憶部102であってもよい。 In J53, the governor temperature control unit 107 stores the load fluctuation pattern for the period corresponding to the prediction interval until the temperature limit is executed. In storing the load fluctuation pattern, the period corresponding to the prediction interval may be divided into small intervals, and feature data indicating the load fluctuation pattern in each of the divided small intervals may be stored. The area for storing the load fluctuation pattern may be a memory unit within the governor temperature control unit 107, or may be the memory unit 102.

J54では、ガバナー温度制御部107は、J53における負荷変動パターンの保存を閾値回数以上行ったか否かを判定する。換言すれば、ガバナー温度制御部107は、閾値個数以上の負荷変動パターンが保存されているか否かを判定する。保存された回数が閾値回数以上である場合(J54でYES)、処理はJ55に進められる。保存された回数が閾値未満である場合(J54でNO)、処理はJ51に進められる。 In J54, the governor temperature control unit 107 determines whether the load change pattern in J53 has been saved a threshold number of times or more. In other words, the governor temperature control unit 107 determines whether a threshold number of load change patterns or more have been saved. If the number of saved times is equal to or greater than the threshold number (YES in J54), processing proceeds to J55. If the number of saved times is less than the threshold number (NO in J54), processing proceeds to J51.

J55では、ガバナー温度制御部107は、辞書データ1071に格納する特徴データを決定する。ガバナー温度制御部107は、小区間夫々について、閾値回数保存された特徴データの平均値を算出する。ガバナー温度制御部107は、算出した平均値を当該小区間における特徴データとして決定する。 In J55, the governor temperature control unit 107 determines the feature data to be stored in the dictionary data 1071. The governor temperature control unit 107 calculates the average value of the feature data stored a threshold number of times for each small section. The governor temperature control unit 107 determines the calculated average value as the feature data for that small section.

J56では、ガバナー温度制御部107は、予測区間における負荷変動パターンの特徴に基づいて、適用する低減ガバナーパラメータを決定する。ガバナー温度制御部107は、例えば、予測区間においてCPU101の負荷率の上下が長い周期で繰り返される場合、高い周波数に遷移しにくく、かつ、高い周波数から低い周波数に遷移しやすい低減ガバナーパラメータを採用すればよい。ガバナー温度制御部107は、例えば、予測区間においてCPU101の負荷率の上下が短い周期で繰り返される場合、高い周波数に遷移しやすく、かつ、高い周波数から低い周波数に遷移しやすい低減ガバナーパラメータを採用すればよい。ここで、周期の長短は、適宜決定した閾値を基に判定されればよい。 In J56, the governor temperature control unit 107 determines the reduced governor parameters to be applied based on the characteristics of the load fluctuation pattern in the prediction interval. For example, when the load rate of the CPU 101 repeatedly rises and falls in a long cycle in the prediction interval, the governor temperature control unit 107 may adopt reduced governor parameters that make it difficult to transition to a high frequency and that make it easy to transition from a high frequency to a low frequency. For example, when the load rate of the CPU 101 repeatedly rises and falls in a short cycle in the prediction interval, the governor temperature control unit 107 may adopt reduced governor parameters that make it easy to transition to a high frequency and that make it easy to transition from a high frequency to a low frequency. Here, the length of the cycle may be determined based on an appropriately determined threshold value.

J57では、ガバナー温度制御部107は、J55で決定した特徴データと、J56で決定した低減ガバナーパラメータとを、図10のJ1で取得したアプリケーションプログラムの名称と対応付けて、辞書データ1071を生成する。 In J57, the governor temperature control unit 107 generates dictionary data 1071 by associating the feature data determined in J55 and the reduced governor parameters determined in J56 with the names of the application programs obtained in J1 of FIG. 10.

<パフォーマンス制限の処理フロー>
図12は、実施形態におけるパフォーマンス制限の処理フローの一例を示す図である。図12に例示する処理は、例えば、図10のJ3及びJ4において実行される。以下、図12を参照して、パフォーマンス制限の処理フローの一例について説明する。
<Performance limit processing flow>
Fig. 12 is a diagram illustrating an example of a processing flow of performance restriction in the embodiment. The processing illustrated in Fig. 12 is executed, for example, at J3 and J4 in Fig. 10. Hereinafter, an example of the processing flow of performance restriction will be described with reference to Fig. 12.

J31では、ガバナー温度制御部107は、実測したCPU101の負荷変動パターンと、辞書データ1071に格納された特徴データとの非類似度を算出する。J32では、ガバナー温度制御部107は、J31で算出した非類似度が閾値以下であるか否かを判定する。閾値以下である場合(J32でYES)、処理はJ41に進められる。閾値より大きい場合(J32でNO)、処理は終了される。J31及びJ32の処理は、図10のJ3において実行される処理の一例である。 In J31, the governor temperature control unit 107 calculates the dissimilarity between the measured load fluctuation pattern of the CPU 101 and the feature data stored in the dictionary data 1071. In J32, the governor temperature control unit 107 determines whether the dissimilarity calculated in J31 is equal to or less than a threshold value. If it is equal to or less than the threshold value (YES in J32), the process proceeds to J41. If it is greater than the threshold value (NO in J32), the process ends. The processes of J31 and J32 are an example of the process executed in J3 in FIG. 10.

J41では、ガバナー温度制御部107は、辞書データ1071において、図10のJ1で取得したアプリケーションプログラムの名称に対応付けられた低減ガバナーパラメータの適用をガバナー制御部104に指示する。ガバナー制御部104は、指示された低減ガバナーパラメータを周波数制御部106に適用する。低減ガバナーパラメータを周波数制御部106に適用することは、「第2の処理能力に低下させる」ことの一例である。 In J41, the governor temperature control unit 107 instructs the governor control unit 104 to apply the reduced governor parameters associated with the name of the application program acquired in J1 of FIG. 10 in the dictionary data 1071. The governor control unit 104 applies the instructed reduced governor parameters to the frequency control unit 106. Applying the reduced governor parameters to the frequency control unit 106 is an example of "reducing to the second processing capacity."

<実施形態の作用効果>
実施形態では、周波数制御部106からCPU101に供給するクロック信号の周波数の上限を第1周波数に低下させる温度制限を行う前に、予測区間において温度制限が発生するか否かを判定する。そして、温度制限が発生すると判定した場合に、温度制限よりも緩やかな制限であるパフォーマンス制限が行われる。パフォーマンス制限では、周波数制御部106からCPU101に供給するクロック信号の周波数の上限の低下は行われない。そのため、パフォーマンス制限が行われた状態であっても、高負荷の処理が実行される際には、CPU101には最大周波数のクロック信号が供給され得る。そのため、本実施
形態によれば、スマートフォン100の操作性の低下が抑制される。
<Effects of the embodiment>
In the embodiment, before implementing a temperature restriction that reduces the upper limit of the frequency of the clock signal supplied from the frequency control unit 106 to the CPU 101 to a first frequency, it is determined whether or not a temperature restriction will occur in the prediction interval. Then, when it is determined that the temperature restriction will occur, a performance restriction that is a more lenient restriction than the temperature restriction is implemented. In the performance restriction, the upper limit of the frequency of the clock signal supplied from the frequency control unit 106 to the CPU 101 is not reduced. Therefore, even in a state in which the performance restriction is implemented, a clock signal of the maximum frequency may be supplied to the CPU 101 when a high-load process is executed. Therefore, according to the present embodiment, the deterioration of the operability of the smartphone 100 is suppressed.

本実施形態では、スマートフォン100は、低減区間においてパフォーマンス制限を実行することで、CPU101の発熱量を抑制する。図13は、パフォーマンス制限の実施の有無によるCPUの温度の変化を例示する図である。図13では、縦軸がCPU101の温度を例示し、横軸が時間を例示する。実線のグラフが、低減区間においてパフォーマンス制限を実行した場合におけるCPU101の温度の推移を例示する。点線のグラフが、パフォーマンス制限を実行しない場合におけるCPU101の温度の推移を例示する。図13を参照すると理解できるように、パフォーマンス制限を実行することで低減区間におけるCPU101の温度の上昇が抑制される。その結果、スマートフォン100は、温度制限が発生する頻度を低下させることができる。すなわち、スマートフォン100は、温度制限によって操作性が低下する頻度を抑えることができる。 In this embodiment, the smartphone 100 suppresses the amount of heat generated by the CPU 101 by implementing a performance restriction in the reduction section. FIG. 13 is a diagram illustrating a change in the temperature of the CPU depending on whether or not a performance restriction is implemented. In FIG. 13, the vertical axis illustrates the temperature of the CPU 101, and the horizontal axis illustrates time. The solid line graph illustrates the transition of the temperature of the CPU 101 when a performance restriction is implemented in the reduction section. The dotted line graph illustrates the transition of the temperature of the CPU 101 when a performance restriction is not implemented. As can be understood by referring to FIG. 13, the rise in the temperature of the CPU 101 in the reduction section is suppressed by implementing a performance restriction. As a result, the smartphone 100 can reduce the frequency with which a temperature restriction occurs. In other words, the smartphone 100 can reduce the frequency with which operability is reduced due to a temperature restriction.

実施形態では、スマートフォン100は、CPU101が温度制限に達する確率を非類似度として数値化する。スマートフォン100は、この数値から周波数制御部106に適用するガバナーパラメータを変更すると判定した場合、辞書データ1071にしたがって低減ガバナーパラメータを選択する。ここで、辞書データ1071には、クロック信号の周波数変動頻度パターンやクロック信号の周波数変動幅を基に好適なガバナーパラメータが選択される。そして、選択された低減ガバナーパラメータが、アプリケーションプログラムの名称と対応付けて登録される。換言すれば、辞書データ1071においては、クロック信号の周波数変動頻度パターンとクロック信号の周波数変動幅の組み合わせがアプリケーションプログラムの名称によって示されるということができる。そのため、スマートフォン100は、辞書データ1071にしたがうことで、クロック信号の周波数変動頻度パターンとクロック信号の周波数変動幅とを基に、好適な低減ガバナーパラメータを選択することができる。また、スマートフォン100は、このように低減ガバナーパラメータを選択することで、低減ガバナーパラメータの選択にかかる計算量を削減することができる。ひいては、スマートフォン100は、CPU101の温度変化に対する低減ガバナーパラメータの適用の追従性を高めることができる。 In the embodiment, the smartphone 100 quantifies the probability that the CPU 101 will reach the temperature limit as a dissimilarity. When the smartphone 100 determines to change the governor parameters to be applied to the frequency control unit 106 based on this numerical value, the smartphone 100 selects the reduced governor parameters according to the dictionary data 1071. Here, in the dictionary data 1071, suitable governor parameters are selected based on the frequency fluctuation frequency pattern of the clock signal and the frequency fluctuation width of the clock signal. The selected reduced governor parameters are then registered in association with the name of the application program. In other words, in the dictionary data 1071, the combination of the frequency fluctuation frequency pattern of the clock signal and the frequency fluctuation width of the clock signal can be indicated by the name of the application program. Therefore, the smartphone 100 can select suitable reduced governor parameters based on the frequency fluctuation frequency pattern of the clock signal and the frequency fluctuation width of the clock signal by following the dictionary data 1071. Moreover, by selecting the reduced governor parameters in this way, the smartphone 100 can reduce the amount of calculation required for selecting the reduced governor parameters. In turn, the smartphone 100 can improve the responsiveness of the application of the reduced governor parameters to changes in the temperature of the CPU 101.

なお、実施形態における辞書データ1071では、アプリケーションプログラムと対応付けて低減ガバナーパラメータが記憶されたが、辞書データ1071はこのような構成に限定されない。辞書データ1071は、例えば、クロック信号の周波数変動頻度パターンとクロック信号の周波数変動幅との組み合わせに対して、低減ガバナーパラメータを対応付けるものであってもよい。また、実施形態において、辞書データ1071における「予測区間の長さ」はアプリケーションプログラム毎に設定されたが、「予測区間の長さ」は、予め決定した一定値であってもよい。 In the embodiment, the dictionary data 1071 stores the reduction governor parameters in association with the application programs, but the dictionary data 1071 is not limited to this configuration. For example, the dictionary data 1071 may associate the reduction governor parameters with a combination of a frequency fluctuation frequency pattern of a clock signal and a frequency fluctuation width of the clock signal. In the embodiment, the "length of the prediction interval" in the dictionary data 1071 is set for each application program, but the "length of the prediction interval" may be a predetermined constant value.

実施形態では、アプリケーションプログラムの負荷変動パターンを辞書データ1071として保存し、辞書データ1071を参照して温度制限が発生するか否かが判定される。そのため、本実施形態によれば、スマートフォン100は、インストールされた複数のアプリケーションプログラム夫々の特性に応じて、温度制限が発生するか否かの判定を行うことができる。 In the embodiment, the load fluctuation pattern of the application program is stored as dictionary data 1071, and the dictionary data 1071 is referenced to determine whether or not a temperature limit will occur. Therefore, according to the present embodiment, the smartphone 100 can determine whether or not a temperature limit will occur according to the characteristics of each of the multiple installed application programs.

<変形例>
以上説明した実施形態では、辞書データ1071に格納する特徴データとして、予測発熱量と温度とが採用された。しかしながら、特徴データは他のデータであってもよい。例えば、CPU101の発熱量は、上記の通り、供給するクロック信号の周波数に応じて変動する。そこで、特徴データとして、CPU101に供給するクロック信号の周波数が採用されてもよい。
<Modification>
In the embodiment described above, the predicted heat generation amount and temperature are used as the feature data stored in the dictionary data 1071. However, the feature data may be other data. For example, as described above, the heat generation amount of the CPU 101 varies depending on the frequency of the clock signal supplied. Therefore, the frequency of the clock signal supplied to the CPU 101 may be used as the feature data.

以上説明した実施形態では、CPU101に供給するクロック信号の周波数を制御することで、CPU101の冷却が行われる。しかしながら、CPU101の冷却はこのような方法に限定されず、例えば、CPU101がマルチコア構成である場合において、駆動するコアの数を減少させてもよい。 In the embodiment described above, the CPU 101 is cooled by controlling the frequency of the clock signal supplied to the CPU 101. However, the cooling of the CPU 101 is not limited to this method, and for example, when the CPU 101 has a multi-core configuration, the number of cores to be driven may be reduced.

以上で開示した実施形態や変形例はそれぞれ組み合わせることができる。 The embodiments and variations disclosed above can be combined with each other.

100:スマートフォン
101:CPU
102:記憶部
103:サーミスタ
104:ガバナー制御部
105:温度制御部
106:周波数制御部
107:ガバナー温度制御部
1071:辞書データ
1072:予測発熱量テーブル
1073:ガバナーパラメータ
1074、1075:低減ガバナーパラメータ
100: Smartphone 101: CPU
102: Memory unit 103: Thermistor 104: Governor control unit 105: Temperature control unit 106: Frequency control unit 107: Governor temperature control unit 1071: Dictionary data 1072: Predicted heat generation amount table 1073: Governor parameters 1074, 1075: Reduced governor parameters

Claims (4)

プロセッサと、
クロック信号を前記プロセッサに供給する供給部と、
前記プロセッサの温度が制限温度に達すると、前記プロセッサの処理能力を第1の処理能力に低下させる制限部と、を備え、
前記制限部は、
前記プロセッサの負荷変動パターンを測定し、
記憶部に予め記憶した前記制限温度に達するまでの前記プロセッサの負荷変動パターンを示す参照パターンと、前記測定した負荷変動パターンとの差が閾値以下となると、前記プロセッサの処理能力を前記第1の処理能力に低下させる前に、前記第1の処理能力よりも処理能力の高い第2の処理能力に前記プロセッサの処理能力を低下させる、
情報処理装置。
A processor;
a supply unit for supplying a clock signal to the processor;
a limiting unit that reduces a processing capability of the processor to a first processing capability when the temperature of the processor reaches a limit temperature;
The limiting portion is
measuring a load variation pattern of the processor;
when a difference between a reference pattern indicating a load fluctuation pattern of the processor until the limit temperature is reached, which is stored in advance in a storage unit, and the measured load fluctuation pattern becomes equal to or smaller than a threshold value, the processing capability of the processor is reduced to a second processing capability higher than the first processing capability before reducing the processing capability of the processor to the first processing capability;
Information processing device.
前記供給部は、所定周波数範囲から選択した周波数のクロック信号を前記プロセッサに供給し、
前記第1の処理能力に低下させることは、前記プロセッサに供給するクロック信号の周波数を、前記所定周波数範囲の上限の周波数より低く設定された第1の周波数以下に制限することを含み、
前記第2の処理能力に低下させることは、前記所定周波数範囲の周波数のうち、前記上限の周波数のクロック信号が供給される割合を低下させることを含む、
請求項1に記載の情報処理装置。
the supply unit supplies a clock signal having a frequency selected from a predetermined frequency range to the processor;
reducing the processing capability to the first processing capability includes limiting a frequency of a clock signal supplied to the processor to a first frequency or less that is set lower than an upper limit frequency of the predetermined frequency range;
The step of reducing the processing capability to the second processing capability includes reducing a ratio of a clock signal having the upper limit frequency of the predetermined frequency range to be supplied.
The information processing device according to claim 1 .
前記記憶部には、プロセスを特定する情報と対応付けて、前記参照パターンが記憶されており、
前記制限部は、
前記プロセッサによって実行されているプロセスを特定し、
前記特定したプロセスに対応する参照パターンと、前記測定した負荷変動パターンとの差が閾値以下となると、前記プロセッサの処理能力を前記第1の処理能力に低下させる前に記第2の処理能力に低下させる、
請求項1または2に記載の情報処理装置。
the storage unit stores the reference pattern in association with information for identifying a process;
The limiting portion is
Identifying a process being executed by said processor;
when a difference between a reference pattern corresponding to the identified process and the measured load fluctuation pattern becomes equal to or smaller than a threshold, reducing the processing power of the processor to the second processing power before reducing the processing power to the first processing power .
3. The information processing device according to claim 1 or 2.
前記制限部は、
前記記憶部に負荷変動パターンが記憶されていない場合には、前記プロセッサの温度が前記制限温度に達するまでの負荷変動パターンを測定し、
前記測定した前記制限温度に達するまでの負荷変動パターンを前記参照パターンとして前記記憶部に記憶させる、
請求項1から3のいずれか一項に記載の情報処理装置。
The limiting portion is
If the load change pattern is not stored in the storage unit, the load change pattern is measured until the temperature of the processor reaches the limit temperature;
The load change pattern measured until the limit temperature is reached is stored in the storage unit as the reference pattern.
The information processing device according to claim 1 .
JP2020082766A 2020-05-08 2020-05-08 Information processing device Active JP7479919B2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2020082766A JP7479919B2 (en) 2020-05-08 2020-05-08 Information processing device

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2020082766A JP7479919B2 (en) 2020-05-08 2020-05-08 Information processing device

Publications (2)

Publication Number Publication Date
JP2021177348A JP2021177348A (en) 2021-11-11
JP7479919B2 true JP7479919B2 (en) 2024-05-09

Family

ID=78409501

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2020082766A Active JP7479919B2 (en) 2020-05-08 2020-05-08 Information processing device

Country Status (1)

Country Link
JP (1) JP7479919B2 (en)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP7181494B1 (en) * 2022-04-26 2022-12-01 富士通クライアントコンピューティング株式会社 Information processing equipment

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2007299346A (en) 2006-05-08 2007-11-15 Lenovo Singapore Pte Ltd Power consumption control method and computer device
US20150082076A1 (en) 2013-09-13 2015-03-19 Marvell World Trade Ltd. Dynamic clock regulation
JP2016106327A (en) 2016-03-03 2016-06-16 ルネサスエレクトロニクス株式会社 Semiconductor device
JP2017220027A (en) 2016-06-07 2017-12-14 富士通株式会社 Electronic apparatus, processor control method and processor control program
JP2020060921A (en) 2018-10-09 2020-04-16 富士通コネクテッドテクノロジーズ株式会社 Information processing apparatus

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2007299346A (en) 2006-05-08 2007-11-15 Lenovo Singapore Pte Ltd Power consumption control method and computer device
US20150082076A1 (en) 2013-09-13 2015-03-19 Marvell World Trade Ltd. Dynamic clock regulation
JP2016106327A (en) 2016-03-03 2016-06-16 ルネサスエレクトロニクス株式会社 Semiconductor device
JP2017220027A (en) 2016-06-07 2017-12-14 富士通株式会社 Electronic apparatus, processor control method and processor control program
JP2020060921A (en) 2018-10-09 2020-04-16 富士通コネクテッドテクノロジーズ株式会社 Information processing apparatus

Also Published As

Publication number Publication date
JP2021177348A (en) 2021-11-11

Similar Documents

Publication Publication Date Title
US9465423B2 (en) System and method for thermal management in a portable computing device using thermal resistance values to predict optimum power levels
US9274805B2 (en) System and method for thermally aware device booting
US9360907B2 (en) System and method for adaptive thermal management in a portable computing device
JP5361977B2 (en) Method and apparatus for dynamic temperature control
US9703336B2 (en) System and method for thermal management in a multi-functional portable computing device
EP2929409B1 (en) System and method for estimating ambient temperature from a portable computing device
JP5649260B2 (en) Method and system for reducing thermal load by monitoring and controlling current in a portable computing device
US9158358B2 (en) System and method for intelligent multimedia-based thermal power management in a portable computing device
US20130090888A1 (en) System and method for proximity based thermal management of mobile device
US10496141B2 (en) System and method for intelligent thermal management in a system on a chip having a heterogeneous cluster architecture
US20150148981A1 (en) System and method for multi-correlative learning thermal management of a system on a chip in a portable computing device
US20180224871A1 (en) System and method for thermal management of a wearable computing device based on proximity to a user
US20180329465A1 (en) System and method for intelligent adjustment of an immersive multimedia workload in a portable computing device
US20140245028A1 (en) System and method for temperature driven selection of voltage modes in a portable computing device
JP7479919B2 (en) Information processing device
US20170192473A1 (en) System and method for intelligent thermal management based on a thermal power envelope in a portable computing device
US20150220097A1 (en) System and method for just-in-time learning-based predictive thermal mitigation in a portable computing device

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20230224

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20231124

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20231212

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20240213

A711 Notification of change in applicant

Free format text: JAPANESE INTERMEDIATE CODE: A711

Effective date: 20240220

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20240416

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20240424

R150 Certificate of patent or registration of utility model

Ref document number: 7479919

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150