[go: up one dir, main page]

JP7145718B2 - Information processing equipment - Google Patents

Information processing equipment Download PDF

Info

Publication number
JP7145718B2
JP7145718B2 JP2018191233A JP2018191233A JP7145718B2 JP 7145718 B2 JP7145718 B2 JP 7145718B2 JP 2018191233 A JP2018191233 A JP 2018191233A JP 2018191233 A JP2018191233 A JP 2018191233A JP 7145718 B2 JP7145718 B2 JP 7145718B2
Authority
JP
Japan
Prior art keywords
activity
load
operating frequency
processor
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
JP2018191233A
Other languages
Japanese (ja)
Other versions
JP2020060921A (en
Inventor
正 影沢
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
FCNT Ltd
Original Assignee
FCNT Ltd
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 Ltd filed Critical FCNT Ltd
Priority to JP2018191233A priority Critical patent/JP7145718B2/en
Publication of JP2020060921A publication Critical patent/JP2020060921A/en
Application granted granted Critical
Publication of JP7145718B2 publication Critical patent/JP7145718B2/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

  • Power Sources (AREA)

Description

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

アプリケーションプログラムに応じて、または、ユーザによる操作速度に応じてプロセッサの動作周波数を制御する情報処理装置が知られている(例えば、特許文献1、2参照)。 Information processing apparatuses are known that control the operating frequency of a processor according to an application program or according to a user's operation speed (see, for example, Patent Documents 1 and 2).

特開2014-182512号公報JP 2014-182512 A 特開2015-043165号公報JP 2015-043165 A

アプリケーションプログラムの起動処理が開始されてから起動処理が終了するまでの起動処理時間は、起動時に読み込まれる設定ファイルサイズの増減や、起動時に読み込まれる機能追加プログラム(アドイン)の増減等によって、変動する。また、アプリケーションプログラムによっては、動作中の負荷が常に変動するものや、ゲームのようにシーンが切替わると負荷が急激に変動するものもある。アプリケーションの種類毎やユーザによる操作速度に応じてプロセッサの動作周波数を制御する技術では、起動処理時間の変動や負荷の変動に対して改善の余地がある。 The start-up processing time from the start of the application program start-up process to the end of the start-up process varies depending on factors such as the size of the configuration file read at start-up and the number of function addition programs (add-ins) read at start-up. . In addition, depending on the application program, there are those whose load constantly fluctuates during operation, and those whose load suddenly fluctuates when the scene changes, such as in a game. The technique of controlling the operating frequency of the processor according to the type of application and the operation speed by the user has room for improvement in terms of fluctuations in boot processing time and load fluctuations.

開示の技術の1つの側面は、プロセッサの動作周波数をより好適に制御できる情報処理装置を提供することを目的とする。 One aspect of the technology disclosed herein aims to provide an information processing apparatus capable of more preferably controlling the operating frequency of a processor.

開示の技術の1つの側面は、次のような情報処理装置によって例示される。本情報処理装置は、アプリケーションプログラム内の処理単位であるアクティビティの起動処理開始から起動処理終了までの動作時間を前記アクティビティの識別情報と対応付けて記憶する記憶部と、前記アクティビティの動作時間を測定し、測定した前記動作時間を前記アクティビティの識別情報と対応付けて前記記憶部に記憶させる測定部と、プロセッサの動作周波数を制御する制御部と、を備え、前記制御部は、起動されたアクティビティに対応する前記動作時間が前記記憶部に記憶されている場合に、前記動作時間の間における前記プロセッサの動作周波数を高める。 One aspect of the technology disclosed is exemplified by the following information processing device. The information processing apparatus includes a storage unit that stores an operation time from the start of activation processing to the end of activation processing of an activity, which is a processing unit in an application program, in association with identification information of the activity, and measures the operation time of the activity. a measurement unit that stores the measured operating time in the storage unit in association with identification information of the activity; and a control unit that controls an operating frequency of a processor, wherein is stored in the storage unit, the operating frequency of the processor is increased during the operating time.

本情報処理装置は、プロセッサの動作周波数をより好適に制御することができる。 This information processing apparatus can more preferably control the operating frequency of the processor.

図1は、第1実施形態に係るスマートフォンの構成の一例を示す図である。FIG. 1 is a diagram illustrating an example of the configuration of a smartphone according to the first embodiment. 図2は、図1に例示される各構成要素の情報の授受を模式的に示す図である。FIG. 2 is a diagram schematically showing exchange of information of each component illustrated in FIG. 図3は、動作履歴保存域に格納される動作履歴テーブルの一例を示す図である。FIG. 3 is a diagram showing an example of an action history table stored in the action history saving area. 図4は、OSの階層構造の一例を示す図である。FIG. 4 is a diagram illustrating an example of an OS hierarchical structure. 図5は、第1実施形態に係るスマートフォンの処理フローの一例を示す図である。5 is a diagram illustrating an example of a processing flow of the smartphone according to the first embodiment; FIG. 図6は、第1実施形態の効果を例示する図である。FIG. 6 is a diagram illustrating the effect of the first embodiment. 図7は、アクティビティの起動処理時間が長くなった場合の一例を示す図である。FIG. 7 is a diagram showing an example of a case where the activation processing time of an activity is long. 図8は、第2実施形態に係るスマートフォンの構成の一例を示す図である。FIG. 8 is a diagram illustrating an example of the configuration of a smartphone according to the second embodiment; 図9は、図8に例示される各構成要素の情報の授受を模式的に示す図である。FIG. 9 is a diagram schematically showing exchange of information of each component illustrated in FIG. 図10は、パラメータ保存域に記憶されるガバナー選定テーブルの一例である。FIG. 10 is an example of a governor selection table stored in the parameter storage area. 図11は、パラメータ保存域に格納される負荷テーブルの一例を示す図である。FIG. 11 is a diagram showing an example of a load table stored in the parameter save area. 図12は、CPUの消費電力と動作周波数との対応の一例を示すグラフである。FIG. 12 is a graph showing an example of correspondence between CPU power consumption and operating frequency. 図13は、第2実施形態における、動作履歴保存域に格納される動作履歴テーブルの一例を示す図である。FIG. 13 is a diagram showing an example of an action history table stored in an action history saving area according to the second embodiment. 図14は、ガバナー調整部が生成したヒストグラムの一例を示す図である。FIG. 14 is a diagram illustrating an example of a histogram generated by the governor adjustment unit; 図15は、第2実施形態に係る動作履歴保存処理の一例を示す図である。FIG. 15 is a diagram illustrating an example of operation history saving processing according to the second embodiment. 図16は、第2実施形態に係るガバナーテーブル選択処理の一例を示す図である。FIG. 16 is a diagram illustrating an example of governor table selection processing according to the second embodiment. 図17は、第2実施形態の効果を例示する図である。FIG. 17 is a diagram illustrating the effect of the second embodiment.

以下、実施形態について説明する。以下に示す実施形態の構成は例示であり、開示の技術は実施形態の構成に限定されない。本実施形態に係る情報処理装置は、例えば、以下の構成を有する。 Embodiments will be described below. The configuration of the embodiment shown below is an example, and the disclosed technology is not limited to the configuration of the embodiment. The information processing apparatus according to this embodiment has, for example, the following configuration.

(情報処理装置の構成)
アプリケーションプログラム内の処理単位であるアクティビティの起動処理開始から起動処理終了までの起動処理時間を前記アクティビティの識別情報と対応付けて記憶する記憶部と、
前記アクティビティの起動処理時間を測定し、測定した前記起動処理時間を前記アクティビティの識別情報と対応付けて前記記憶部に記憶させる測定部と、
プロセッサの動作周波数を制御する制御部と、を備え、
前記制御部は、起動されたアクティビティに対応する前記起動処理時間が前記記憶部に記憶されている場合に、前記起動処理時間の間における前記プロセッサの動作周波数を上昇させる、
情報処理装置。
(Configuration of information processing device)
a storage unit that stores activation processing time from the start of activation processing to the end of activation processing of an activity, which is a processing unit in an application program, in association with identification information of the activity;
a measurement unit that measures a startup processing time of the activity, associates the measured startup processing time with identification information of the activity, and stores the measured startup processing time in the storage unit;
A control unit that controls the operating frequency of the processor,
When the activation processing time corresponding to the activated activity is stored in the storage unit, the control unit increases the operating frequency of the processor during the activation processing time.
Information processing equipment.

プロセッサは、例えば、Central Processing Unit(CPU)、マイクロプロセッサユ
ニット(MPU)、Graphics Processing Unit(GPU)等の演算処理を行う集積回路である。アクティビティとは、例えば、アプリケーションプログラムがグラフィカルユーザーインタフェース(GUI)を有する場合、各ウィンドウ画面の描画開始から次のウィンドウ画面に遷移したり当該ウィンドウ画面が終了されたりするまでが一つのアクティビティとなる。アクティビティの起動処理開始から起動処理終了までの起動処理時間は、アクティビティごとに異なる。プリインストールされているアプリケーションプログラムについては、製品出荷前にあらかじめアクティビティごとの起動処理時間を測定して記憶部に記憶させることも可能であるが、ユーザがインストールするアプリケーションプログラムについてはこのような対応はできない。
A processor is, for example, an integrated circuit that performs arithmetic processing such as a Central Processing Unit (CPU), a Microprocessor Unit (MPU), a Graphics Processing Unit (GPU), or the like. For example, when an application program has a graphical user interface (GUI), one activity is from the start of drawing each window screen to the transition to the next window screen or the end of the window screen. The activation processing time from the start of activity activation processing to the end of activation processing differs for each activity. For pre-installed application programs, it is possible to measure the startup processing time for each activity and store it in the storage unit before shipping the product. Can not.

本実施形態では、起動されたアクティビティの起動処理開始から起動処理終了までの起動処理時間を取得部が取得し、取得した起動処理時間を記憶部に記憶する。制御部は、起動されたアクティビティの前記起動処理時間が記憶部に記憶されている場合、前記起動処理時間におけるプロセッサの動作周波数を上昇させることで、アクティビティの起動処理を短縮することができる。プロセッサの動作周波数を上昇させることは、プロセッサの設定可能な範囲で動作周波数を最大化したり、プロセッサの最低動作周波数を上昇させたりすることを含んでもよい。 In this embodiment, the acquisition unit acquires the activation processing time from the start of activation processing to the end of activation processing of the activated activity, and stores the acquired activation processing time in the storage unit. When the activation processing time of the activated activity is stored in the storage unit, the control unit can shorten the activation processing of the activity by increasing the operating frequency of the processor during the activation processing time. Increasing the operating frequency of the processor may include maximizing the operating frequency within a configurable range of the processor or increasing the minimum operating frequency of the processor.

本実施形態は、次の特徴を有してもよい。前記測定部は、前記動作時間を測定したアクティビティの識別情報が前記記憶部に記憶されている場合、前記記憶部において前記アクティビティに対応付けられた動作時間を測定した動作時間に更新する。このような特徴を有することで、アクティビティの起動処理時間が変動した場合でも、プロセッサの動作周波数を上昇させる期間を変動した起動処理時間に追随させることができる。 This embodiment may have the following features. When the identification information of the activity whose operation time is measured is stored in the storage unit, the measurement unit updates the operation time associated with the activity in the storage unit to the measured operation time. With this feature, even if the activation processing time of the activity varies, the period during which the operating frequency of the processor is increased can follow the varied activation processing time.

本実施形態は、次の特徴を有してもよい。前記記憶部は、さらに、前記プロセッサの処理能力の制御情報を前記アクティビティの負荷毎に記憶し、前記測定部は、さらに、前記起動処理終了後から前記アクティビティの動作終了までの負荷を測定し、測定した前記負荷を前記アクティビティの識別情報と対応付けて前記記憶部に記憶させ、前記制御部は、さらに、測定した前記負荷に基づいて前記制御情報を選定し、選定した制御情報にしたがって、前記プロセッサを制御する。 This embodiment may have the following features. The storage unit further stores control information of the processing capacity of the processor for each load of the activity, the measurement unit further measures the load from the end of the activation process to the end of the activity, The measured load is associated with the identification information of the activity and stored in the storage unit, the control unit further selects the control information based on the measured load, and according to the selected control information, the Control the processor.

制御情報には、例えば、プロセッサの負荷率とプロセッサの動作周波数とが対応付けられており、アクティビティの負荷に応じて複数用意される。制御部は、測定部が測定したアクティビティの負荷に基づいて制御情報を選定する。制御部は、例えば、制御情報において現在のプロセッサの負荷率に対応付けられた動作周波数にプロセッサを設定する。このような処理により、アクティビティの動作時における負荷に応じてプロセッサの動作周波数と消費電力とのバランスを好適に保つことが可能となる。 In the control information, for example, the load factor of the processor and the operating frequency of the processor are associated with each other, and a plurality of pieces of control information are prepared according to the load of the activity. The control unit selects control information based on the activity load measured by the measurement unit. The control unit, for example, sets the processor to the operating frequency associated with the current load factor of the processor in the control information. Through such processing, it is possible to maintain a favorable balance between the operating frequency and power consumption of the processor according to the load during operation of the activity.

本実施形態は、次の特徴を有してもよい。前記測定部は、前記プロセッサの動作周波数の増加に対する消費電力の増加の割合が所定値よりも高くなる動作周波数に基づいて、前記負荷を測定する。プロセッサの消費電力は、動作周波数の上昇にしたがって線形に増加するのではなく、ある動作周波数において消費電力の増加率は高まる。このような特徴を有することで、プロセッサの動作周波数と諸費電力の特性に応じて制御情報を選定できる。 This embodiment may have the following features. The measurement unit measures the load based on an operating frequency at which a rate of increase in power consumption with respect to an increase in operating frequency of the processor is higher than a predetermined value. The power consumption of the processor does not increase linearly as the operating frequency increases, but the rate of increase in power consumption increases at a certain operating frequency. With such features, control information can be selected according to the characteristics of the operating frequency and power consumption of the processor.

以下、図面を参照して本実施形態についてさらに説明する。 The present embodiment will be further described below with reference to the drawings.

<第1実施形態>
図1は、第1実施形態に係るスマートフォンの構成の一例を示す図である。図2は、図1に例示される各構成要素の情報の授受を模式的に示す図である。第1実施形態に係るスマートフォン1は、アプリケーションプロセッサ10、記憶部11、クロックコントローラ12、電源制御部13、バッテリ14、通信部15、表示部16および入力部17を備える。
<First Embodiment>
FIG. 1 is a diagram illustrating an example of the configuration of a smartphone according to the first embodiment. FIG. 2 is a diagram schematically showing exchange of information of each component illustrated in FIG. A smartphone 1 according to the first embodiment includes an application processor 10 , a storage unit 11 , a clock controller 12 , a power control unit 13 , a battery 14 , a communication unit 15 , a display unit 16 and an input unit 17 .

記憶部11は、アプリケーションプロセッサ10からアクセスされる記憶部として例示される。記憶部11は、Random Access Memory(RAM)およびRead Only Memory(ROM)を含む。記憶部11は、動作履歴保存域112を含む。記憶部11には、各種のアプリケーションプログラム113およびOperating System(OS)114も記憶される。 The storage unit 11 is exemplified as a storage unit accessed by the application processor 10 . The storage unit 11 includes Random Access Memory (RAM) and Read Only Memory (ROM). Storage unit 11 includes operation history storage area 112 . Various application programs 113 and an operating system (OS) 114 are also stored in the storage unit 11 .

記憶部11は、各種のプログラムおよび各種のデータを読み書き自在に記録媒体に格納
する補助記憶部を含んでもよい。補助記憶部は外部記憶装置とも呼ばれる。補助記憶部は、例えば、Erasable Programmable ROM(EPROM)、ソリッドステートドライブ(Solid State Drive、SSD)、ハードディスクドライブ(Hard Disk Drive、HDD)等で
ある。また、補助記憶部は、例えば、Compact Disc(CD)ドライブ装置、Digital Versatile Disc(DVD)ドライブ装置、Blu-ray(登録商標)Disc(BD)ドライブ装置等
である。
The storage unit 11 may include an auxiliary storage unit that stores various programs and various data in a readable and writable recording medium. Auxiliary storage is also called external storage. The auxiliary storage unit is, for example, Erasable Programmable ROM (EPROM), Solid State Drive (SSD), Hard Disk Drive (HDD), or the like. Further, the auxiliary storage unit is, for example, a Compact Disc (CD) drive device, a Digital Versatile Disc (DVD) drive device, a Blu-ray (registered trademark) Disc (BD) drive device, or the like.

動作履歴保存域112には、アプリケーションプログラム113のアクティビティの起動処理開始から起動処理終了までの負荷をアクティビティごとに記憶する。ここで、アクティビティとはアプリケーションプログラム113の処理単位である。例えば、アプリケーションプログラム113がグラフィカルユーザーインタフェース(GUI)を有する場合、各ウィンドウ画面の描画開始から次のウィンドウ画面に遷移するまでが一つのアクティビティとなる。また、アクティビティがウィンドウ画面の場合、起動処理終了の状態は、ウィンドウ画面の描画が完了した状態である。また、起動処理終了の状態は、アクティビティがユーザ等からの操作指示を受け付けられる状態に遷移した状態であってもよい。 The operation history storage area 112 stores the load from the start of activation processing of the activity of the application program 113 to the end of the activation processing for each activity. Here, an activity is a processing unit of the application program 113 . For example, if the application program 113 has a graphical user interface (GUI), one activity is from the start of drawing each window screen to the transition to the next window screen. Also, if the activity is a window screen, the state of completion of activation processing is the state in which drawing of the window screen is completed. In addition, the state of completion of activation processing may be a state in which the activity has transitioned to a state in which operation instructions from the user or the like can be accepted.

図3は、動作履歴保存域に格納される動作履歴テーブルの一例を示す図である。動作履歴保存域112に格納される動作履歴テーブル1121では、「アクティビティ名」と「起動処理時間」とが対応付けられる。「アクティビティ名」には、アクティビティの名称が格納される。なお、「アクティビティ名」に格納される情報は、アクティビティを識別する情報であれば名称に限定されない。「アクティビティ名」には、例えば、アクティビティを一意に識別するID等が格納されてもよい。「起動処理時間」には、アクティビティの起動処理開始から起動処理終了までの処理時間が格納される。動作履歴保存域112は、「記憶部」の一例である。 FIG. 3 is a diagram showing an example of an action history table stored in the action history saving area. In the action history table 1121 stored in the action history saving area 112, "activity name" and "start processing time" are associated with each other. The "activity name" stores the name of the activity. The information stored in the "activity name" is not limited to the name as long as it identifies the activity. The "activity name" may store, for example, an ID that uniquely identifies the activity. The "start processing time" stores the processing time from the start of activity start processing to the end of start processing. The operation history storage area 112 is an example of a “storage unit”.

アプリケーションプログラム113は、CPU101によって実行される様々なプログラムである。アプリケーションプログラム113としては、インターネットブラウザ、メールクライアント、Social Networking Service(SNS)クライアント、ゲーム等を挙
げることができる。アプリケーションプログラム113は、ユーザによって起動されると、OS114に起動通知を送信する。また、アプリケーションプログラム113は、ユーザによって終了されると、終了通知をOS114に送信する。
Application programs 113 are various programs executed by CPU 101 . Examples of the application programs 113 include Internet browsers, mail clients, Social Networking Service (SNS) clients, games, and the like. When the application program 113 is activated by the user, it transmits a activation notification to the OS 114 . Also, when the application program 113 is terminated by the user, it transmits a termination notification to the OS 114 .

OS114は、スマートフォン1の入出力処理、プロセスのスケジュール管理、ハードウェアとソフトウェアとの間のインターフェース等を提供する基本ソフトウェアである。図4は、OSの階層構造の一例を示す図である。図4では、CPU101等を示すハードウェアの階層およびOS114上で実行されるアプリケーションプログラム113の階層も例示される。 The OS 114 is basic software that provides input/output processing of the smartphone 1, process schedule management, an interface between hardware and software, and the like. FIG. 4 is a diagram illustrating an example of an OS hierarchical structure. FIG. 4 also illustrates the hierarchy of hardware indicating the CPU 101 and the like and the hierarchy of the application program 113 executed on the OS 114 .

OS114は、カーネル1141とシステムサービス1142とを含む。カーネル1141は、スマートフォン1のハードウェアを抽象化し、アプリケーションプログラム113等のソフトウェアからハードウェア資源を利用可能にする。また、カーネル1141は、プロセスの制御、CPU101の動作周波数の制御等の制御を可能にする。 OS 114 includes kernel 1141 and system services 1142 . The kernel 1141 abstracts the hardware of the smartphone 1 and makes hardware resources available to software such as the application program 113 . Also, the kernel 1141 enables control of processes, control of the operating frequency of the CPU 101, and the like.

システムサービス1142は、アプリケーションプログラム113の起動処理等を実行する。システムサービス1142は、アプリケーションプログラム113から起動通知を受信すると、当該アプリケーションの起動開始をカーネル1141に通知する。さらに、システムサービス1142は、当該アプリケーションプログラム113の起動処理を開始する。起動処理は、例えば、アプリケーションプログラム113のウィンドウ画面の描画処理を含む。システムサービス1142は、アプリケーションプログラム113の起動処理を完了すると、アプリケーションプログラム113の起動完了を示す完了通知をカーネ
ル1141に送信する。さらに、システムサービス1142は、アプリケーションプログラム113から終了通知を受信すると、当該アプリケーションプログラム113の終了をカーネル1141に通知する。
The system service 1142 executes processing such as activation of the application program 113 . When the system service 1142 receives the activation notification from the application program 113, it notifies the kernel 1141 of the start of activation of the application. Further, the system service 1142 starts activation processing of the application program 113 concerned. The activation process includes, for example, drawing process of the window screen of the application program 113 . When the system service 1142 completes the activation process of the application program 113 , it sends a completion notification indicating that the application program 113 has been activated to the kernel 1141 . Further, when the system service 1142 receives a termination notification from the application program 113, it notifies the kernel 1141 of termination of the application program 113 concerned.

クロックコントローラ12は、CPU101の動作周波数(クロック周波数)の設定を行う。クロックコントローラ12は、周波数制御部105からの指示にしたがって、CPU101の動作周波数を設定する。 The clock controller 12 sets the operating frequency (clock frequency) of the CPU 101 . The clock controller 12 sets the operating frequency of the CPU 101 according to the instruction from the frequency control unit 105 .

電源制御部13は、バッテリ14からアプリケーションプロセッサ10に供給する電力を制御する。電源制御部13は、周波数制御部105からの指示にしたがって、アプリケーションプロセッサ10に供給する電力を制御する。バッテリ14は、アプリケーションプロセッサ10を含むスマートフォン1の各部に電力を供給する二次電池である。 The power control unit 13 controls power supplied from the battery 14 to the application processor 10 . The power control unit 13 controls power supplied to the application processor 10 according to instructions from the frequency control unit 105 . The battery 14 is a secondary battery that supplies power to each part of the smartphone 1 including the application processor 10 .

通信部15は、コンピュータネットワークのインターフェースである。通信部15は、コンピュータネットワークを介して外部の装置と通信を行う。通信部15は、例えば、Network Interface Card(NIC)である。 The communication unit 15 is an interface of the computer network. The communication unit 15 communicates with an external device via a computer network. The communication unit 15 is, for example, a Network Interface Card (NIC).

表示部16は、CPU101で処理されるデータや記憶部11に記憶されるデータを出力する出力部である。表示部16は、例えば、Cathode Ray Tube(CRT)ディスプレイ、Liquid Crystal Display(LCD)、Plasma Display Panel(PDP)、Electroluminescence(EL)パネル、有機ELパネル等である。 The display unit 16 is an output unit that outputs data processed by the CPU 101 and data stored in the storage unit 11 . The display unit 16 is, for example, a Cathode Ray Tube (CRT) display, a Liquid Crystal Display (LCD), a Plasma Display Panel (PDP), an Electroluminescence (EL) panel, an organic EL panel, or the like.

入力部17は、ユーザ等からの操作指示等を受け付ける。入力部17は、例えば、キーボード、ポインティングデバイス、タッチパネル等である。 The input unit 17 receives an operation instruction or the like from a user or the like. The input unit 17 is, for example, a keyboard, pointing device, touch panel, or the like.

アプリケーションプロセッサ10は、スマートフォン1の各種制御を行う。アプリケーションプロセッサ10は、様々な処理を実行する集積回路を含むSystem on a Chip(SoC)である。集積回路は、Large Scale Integrated circuit(LSI)、Application Specific Integrated Circuit(ASIC)、プログラマブルロジックデバイス(PLD)
を含む。PLDは、例えば、Field-Programmable Gate Array(FPGA)を含む。アプ
リケーションプロセッサ10は、例えば、CPU101、スケジューラ102、ガバナー調整部103、ガバナー制御部104、周波数制御部105および電圧制御部106を含む。
The application processor 10 performs various controls of the smart phone 1 . Application processor 10 is a System on a Chip (SoC) that includes integrated circuits that perform various processes. Integrated circuits include Large Scale Integrated Circuit (LSI), Application Specific Integrated Circuit (ASIC), Programmable Logic Device (PLD)
including. PLDs include, for example, Field-Programmable Gate Arrays (FPGAs). The application processor 10 includes, for example, a CPU 101, a scheduler 102, a governor adjustment section 103, a governor control section 104, a frequency control section 105 and a voltage control section .

CPU101は、マイクロプロセッサユニット(MPU)、プロセッサとも呼ばれる。CPU101は、単一のプロセッサに限定される訳ではなく、マルチプロセッサ構成であってもよい。また、単一のソケットで接続される単一のCPU101がマルチコア構成を有していても良い。CPU101は、例えば、記憶部11に記憶されたアプリケーションプログラム113を実行する。CPU101の動作周波数は、クロックコントローラ12からの指示によって変更される。 The CPU 101 is also called a microprocessor unit (MPU) or processor. The CPU 101 is not limited to a single processor, and may have a multiprocessor configuration. Also, a single CPU 101 connected by a single socket may have a multi-core configuration. The CPU 101 executes an application program 113 stored in the storage unit 11, for example. The operating frequency of the CPU 101 is changed according to instructions from the clock controller 12 .

CPU101は、記憶部11に記憶されたOS114のカーネル1141を実行することで、スケジューラ102、ガバナー調整部103、ガバナー制御部104、周波数制御部105および電圧制御部106として動作する。 The CPU 101 operates as the scheduler 102 , the governor adjustment unit 103 , the governor control unit 104 , the frequency control unit 105 and the voltage control unit 106 by executing the kernel 1141 of the OS 114 stored in the storage unit 11 .

スケジューラ102は、CPU101が実行する各プロセスのスケジューリングを行う。スケジューリングでは、各プロセスに割り当てるシステム資源の制御が行われる。システム資源は、例えば、CPU101がプロセスを実行するプロセッサ時間、プロセスが通信に使用する通信帯域等である。スケジューリングでは、プロセスごとに優先度が設定されてもよい。スケジューラ102は、この場合、高い優先度が設定されたプロセスに対し
て優先的にシステム資源を割り当てる。
A scheduler 102 schedules each process executed by the CPU 101 . Scheduling controls the system resources allocated to each process. System resources are, for example, processor time for the CPU 101 to execute processes, a communication band used for communication by processes, and the like. In scheduling, priority may be set for each process. In this case, the scheduler 102 preferentially allocates system resources to processes with high priority.

ガバナー調整部103は、動作履歴保存域112を参照して、アクティビティの起動処理開始から起動処理終了までの起動処理時間を取得する。ガバナー調整部103は、取得した起動処理時間をガバナー制御部104に通知する。ガバナー調整部103は、「測定部」の一例である。 The governor adjustment unit 103 refers to the operation history storage area 112 and acquires the activation processing time from the start of activity activation processing to the end of activation processing. The governor adjustment unit 103 notifies the governor control unit 104 of the acquired startup processing time. The governor adjustment unit 103 is an example of a "measurement unit".

ガバナー制御部104は、ガバナー調整部103から通知された起動処理時間の間、CPU101の周波数を設定可能な範囲で最大のクロック(以下、最大クロックとも称する)にするように周波数制御部105を制御する。この制御では、例えば、ガバナー制御部104から最大クロックが周波数制御部105に通知される。ガバナー制御部104は、「制御部」の一例である。 The governor control unit 104 controls the frequency control unit 105 so that the frequency of the CPU 101 is set to the maximum clock within the settable range (hereinafter also referred to as the maximum clock) during the activation processing time notified from the governor adjustment unit 103. do. In this control, for example, the governor control unit 104 notifies the frequency control unit 105 of the maximum clock. Governor control unit 104 is an example of a “control unit”.

周波数制御部105は、ガバナー制御部104からクロック周波数の指定を受け付ける。周波数制御部105は、指定されたクロック周波数をクロックコントローラ12に通知し、クロックコントローラ12に指定されたクロック周波数を供給させる。 The frequency control unit 105 receives specification of the clock frequency from the governor control unit 104 . The frequency control unit 105 notifies the clock controller 12 of the specified clock frequency, and causes the clock controller 12 to supply the specified clock frequency.

電圧制御部106は、電源制御部13が供給する電圧を制御する。電圧制御部106は、バッテリ14の残量を監視してもよい。 The voltage control section 106 controls the voltage supplied by the power control section 13 . The voltage control section 106 may monitor the remaining amount of the battery 14 .

(処理フロー)
図5は、第1実施形態に係るスマートフォンの処理フローの一例を示す図である。以下、図5を参照して、第1実施形態に係るスマートフォン1の処理フローの一例について説明する。
(processing flow)
5 is a diagram illustrating an example of a processing flow of the smartphone according to the first embodiment; FIG. An example of the processing flow of the smartphone 1 according to the first embodiment will be described below with reference to FIG. 5 .

T1では、ガバナー調整部103は、OS114のシステムサービス1142から起動されたアプリケーションプログラム113のアクティビティ名を取得する。T2では、ガバナー調整部103は、T1で取得したアクティビティ名が動作履歴テーブル1121に格納されているか否かを判定する。格納されている場合(T2でYES)、処理はT3に進められる。格納されていない場合(T2でNO)、処理はT5に進められる。 At T<b>1 , the governor adjustment unit 103 acquires the activity name of the application program 113 started from the system service 1142 of the OS 114 . At T2, the governor adjustment unit 103 determines whether the activity name acquired at T1 is stored in the operation history table 1121 or not. If it is stored (YES in T2), the process proceeds to T3. If not stored (NO in T2), the process proceeds to T5.

T3では、ガバナー調整部103は、動作履歴テーブル1121において、T1で取得したアクティビティ名に対応付けられた起動処理時間を取得する。T4では、ガバナー調整部103は、T3で取得した起動処理時間をガバナー制御部104に通知する。ガバナー制御部104は、通知された起動処理時間の間、CPU101の動作クロックを最大クロックとするよう周波数制御部105を制御する。周波数制御部105は、クロックコントローラ12を制御して、通知された起動処理時間の間、CPU101の動作クロックを最大クロックに設定させる。 At T3, the governor adjustment unit 103 acquires the activation processing time associated with the activity name acquired at T1 from the operation history table 1121 . At T4, the governor adjustment unit 103 notifies the governor control unit 104 of the startup processing time acquired at T3. The governor control unit 104 controls the frequency control unit 105 so that the operation clock of the CPU 101 is set to the maximum clock during the notified startup processing time. The frequency control unit 105 controls the clock controller 12 to set the operating clock of the CPU 101 to the maximum clock during the notified startup processing time.

T5では、ガバナー調整部103は、T1で起動されたアプリケーションプログラム113の起動処理時間を測定する。起動処理時間の測定は、例えば、システムサービス1142から起動通知が通知されてから完了通知が通知されるまでの時間を測定することで行われる。 At T5, the governor adjustment unit 103 measures the activation processing time of the application program 113 activated at T1. The start processing time is measured, for example, by measuring the time from when the system service 1142 notifies the start notification to when the completion notification is notified.

T6では、ガバナー調整部103は、T1で取得したアクティビティ名とT5で測定した起動処理時間とを対応付けて動作履歴テーブル1121に格納する。既に同名のアクティビティ名が動作履歴テーブル1121に登録済みである場合、当該アクティビティ名に対応付けられた起動処理時間をT5で測定した起動処理時間に更新すればよい。 At T6, the governor adjustment unit 103 associates the activity name obtained at T1 with the activation processing time measured at T5 and stores them in the operation history table 1121. FIG. If an activity name with the same name has already been registered in the operation history table 1121, the activation processing time associated with the activity name may be updated to the activation processing time measured at T5.

<第1実施形態の作用効果>
図6は、第1実施形態の効果を例示する図である。図6では、アクティビティの起動時における動作クロックおよび負荷率の変動の一例が示される。図6の縦軸はCPU101の動作周波数または負荷率を示し、横軸は時間を示す。また、CPU101の設定可能な範囲における最大クロックを「MAX」で示し、CPU101の設定可能な範囲における最小クロックを「MIN」で示す。図6(A)は、アクティビティの初回起動時の一例を示し、図6(B)はCPU101が最大クロックで動作する期間をアクティビティの起動処理開始から起動処理終了までに延ばした場合の一例を示す。図6(A)では、アクティビティの起動処理開始から起動処理完了までの起動処理時間が1000msとなっている。また、図6(B)では、アクティビティの起動処理開始から起動処理完了までの起動処理時間が900msとなっている。図6(A)、(B)を比較すると理解できるように、最大クロックで動作する期間を起動処理開始から起動処理終了までに延長することで、アクティビティの起動処理時間を短縮できることがわかる。また、CPU101が最大クロックで動作する期間が起動処理終了までとなっているため、アクティビティが動作中に継続してCPU101を最大クロックで動作させる場合と比較して、CPU101の消費電力増大を抑制できる。
<Action and effect of the first embodiment>
FIG. 6 is a diagram illustrating the effect of the first embodiment. FIG. 6 shows an example of fluctuations in the operating clock and load factor when an activity is activated. The vertical axis in FIG. 6 indicates the operating frequency or load factor of the CPU 101, and the horizontal axis indicates time. Also, the maximum clock within the settable range of the CPU 101 is indicated by "MAX", and the minimum clock within the settable range of the CPU 101 is indicated by "MIN". FIG. 6A shows an example of when an activity is started for the first time, and FIG. 6B shows an example of a case where the period during which the CPU 101 operates at the maximum clock is extended from the start of activity start processing to the end of start processing. . In FIG. 6A, the activation processing time from the start of activity activation processing to the completion of activation processing is 1000 ms. Also, in FIG. 6B, the activation processing time from the start of activity activation processing to the completion of activation processing is 900 ms. As can be understood by comparing FIGS. 6A and 6B, by extending the period during which the activity operates at the maximum clock from the start of the activation process to the end of the activation process, the activation processing time of the activity can be shortened. In addition, since the period during which the CPU 101 operates at the maximum clock is until the end of the activation process, it is possible to suppress an increase in the power consumption of the CPU 101 compared to the case where the CPU 101 continues to operate at the maximum clock while the activity is running. .

第1実施形態では、起動されたアクティビティの起動処理時間が動作履歴テーブル1121に格納されていない場合、アクティビティの起動処理時間を測定し、測定した起動処理時間を動作履歴テーブル1121に格納する。当該アクティビティが次に起動されると、動作履歴テーブル1121に格納された起動処理時間の間、CPU101が最大クロックで動作する。そのため、第1実施形態によれば、起動処理時間が未知であったアクティビティに対しても、起動処理時間を短縮することができる。 In the first embodiment, when the activation processing time of the activated activity is not stored in the operation history table 1121, the activation processing time of the activity is measured and the measured activation processing time is stored in the operation history table 1121. When the activity is activated next time, the CPU 101 operates at the maximum clock during the activation processing time stored in the operation history table 1121 . Therefore, according to the first embodiment, it is possible to shorten the activation processing time even for an activity whose activation processing time is unknown.

アクティビティの起動処理時間は、アプリケーションプログラム113の起動処理において読み込むファイルサイズの増減や組み込まれるアドオンの増減等により、変動する。図7は、アクティビティの起動処理時間が長くなった場合の一例を示す図である。図7(A)では、起動処理時間が長くなった結果、CPU101が最大クロックで動作する最大クロック動作期間よりもアクティビティの起動処理時間が長くなった場合の一例を示す。また、図7(B)は、長くなった起動処理時間に応じてCPU101が最大クロックで動作する最大クロック動作時間を延ばした場合の一例を示す。第1実施形態では、動作履歴テーブル1121に起動処理時間が格納済みのアクティビティについても、起動処理時間の測定および動作履歴テーブル1121への格納を行う。そのため、第1実施形態によれば、図7(A)に例示されるように起動処理時間が変動しても、動作履歴テーブル1121に格納された起動処理時間は、変動した起動処理時間に更新される。そのため、変動した起動処理時間の間、CPU101を最大クロックで動作させることが可能となり、図7(B)のように起動処理時間を短縮することができる。 The activation processing time of an activity fluctuates depending on the increase or decrease in the file size read in the activation processing of the application program 113, the increase or decrease in the number of add-ons to be incorporated, and the like. FIG. 7 is a diagram showing an example of a case where the activation processing time of an activity is long. FIG. 7A shows an example of a case where, as a result of the activation processing time becoming longer, the activity activation processing time becomes longer than the maximum clock operation period during which the CPU 101 operates at the maximum clock. Further, FIG. 7B shows an example of a case where the maximum clock operation time in which the CPU 101 operates at the maximum clock is extended in accordance with the lengthened startup processing time. In the first embodiment, the activation processing time is measured and stored in the operation history table 1121 even for an activity whose activation processing time has already been stored in the operation history table 1121 . Therefore, according to the first embodiment, even if the startup processing time varies as illustrated in FIG. 7A, the startup processing time stored in the operation history table 1121 is updated to the changed startup processing time. be done. Therefore, it is possible to operate the CPU 101 at the maximum clock during the varied startup processing time, and the startup processing time can be shortened as shown in FIG. 7B.

なお、第1実施形態では、起動処理時間の間におけるCPU101の動作周波数を最大クロックとすることで起動処理時間を短縮したが、起動処理時間の間におけるCPU101の最低動作周波数を上昇させることで起動処理時間を短縮してもよい。 In the first embodiment, the operating frequency of the CPU 101 during the boot processing time is set to the maximum clock to shorten the boot processing time. Processing time may be shortened.

<第2実施形態>
第1実施形態では、アクティビティの起動処理の間、CPU101が最大クロックで動作した。第2実施形態では、アクティビティの起動処理が完了した後の負荷の変動に応じて、CPUの動作クロックが設定される。第1実施形態と共通の構成要素については同一の符号を付し、その説明は省略される。以下、図面を参照して、第2実施形態について説明する。
<Second embodiment>
In the first embodiment, the CPU 101 operates at the maximum clock during activity activation processing. In the second embodiment, the operating clock of the CPU is set in accordance with the load fluctuation after completion of the activation process of the activity. Constituent elements common to those of the first embodiment are denoted by the same reference numerals, and descriptions thereof are omitted. A second embodiment will be described below with reference to the drawings.

図8は、第2実施形態に係るスマートフォンの構成の一例を示す図である。図9は、図8に例示される各構成要素の情報の授受を模式的に示す図である。第2実施形態に係るス
マートフォン1aは、パラメータ保存域111、動作履歴保存域112a、ガバナー調整部103aおよびガバナー制御部104aを備える点で、第1実施形態に係るスマートフォン1とは異なる。
FIG. 8 is a diagram illustrating an example of the configuration of a smartphone according to the second embodiment; FIG. 9 is a diagram schematically showing exchange of information of each component illustrated in FIG. A smartphone 1a according to the second embodiment differs from the smartphone 1 according to the first embodiment in that it includes a parameter storage area 111, an operation history storage area 112a, a governor adjustment unit 103a, and a governor control unit 104a.

パラメータ保存域111は、ガバナー制御に用いられる各種パラメータが保存される。図10は、パラメータ保存域に記憶されるガバナー選定テーブルの一例である。図10に例示されるガバナー選定テーブル1111は、「ガバナーパラメータ」、「パターン」、「最大周波数」、「最小周波数」および「CPUパラメータ」の各項目を含む。「ガバナーパラメータ」には、負荷毎(図10の例では、高負荷、中負荷、低負荷)に対応付けられる、最大周波数、最小周波数およびCPUパラメータの組を一意に識別する番号が格納される。「パターン」には、CPU101の負荷の状態を示す状態が格納される。図10の例では、「パターン」には、「高負荷」、「中負荷」、「低負荷」の何れかが格納される。「最大周波数」には、CPU101を駆動する周波数の最大値が格納される。「最小周波数」には、CPU101を駆動する周波数の最小値が格納される。すなわち、CPU101の周波数は、「最小周波数」に格納された周波数から「最大周波数」に格納された周波数までの間で遷移可能である。「CPUパラメータ」には、CPU101に適用する負荷テーブルを識別するIDが格納される。負荷テーブルについては図11を参照して後述する。 The parameter storage area 111 stores various parameters used for governor control. FIG. 10 is an example of a governor selection table stored in the parameter storage area. The governor selection table 1111 illustrated in FIG. 10 includes items of "governor parameter", "pattern", "maximum frequency", "minimum frequency" and "CPU parameter". "Governor parameter" stores a number that uniquely identifies a set of maximum frequency, minimum frequency, and CPU parameter associated with each load (high load, medium load, and low load in the example of FIG. 10). . The “pattern” stores a state indicating the load state of the CPU 101 . In the example of FIG. 10, "pattern" stores one of "high load", "medium load", and "low load". The maximum frequency for driving the CPU 101 is stored in the "maximum frequency". The minimum frequency for driving the CPU 101 is stored in the "minimum frequency". That is, the frequency of the CPU 101 can transition between the frequency stored in the "minimum frequency" and the frequency stored in the "maximum frequency". An ID for identifying a load table applied to the CPU 101 is stored in the "CPU parameter". The load table will be described later with reference to FIG.

図11は、パラメータ保存域に格納される負荷テーブルの一例を示す図である。負荷テーブル1112は、ガバナー選定テーブル1111に記憶される「パターン」毎に用意される。図11(A)は、ガバナー選定テーブル1111における「パターン」が「高負荷」の場合に用いられる負荷テーブル1112aの一例である。図11(B)は、ガバナー選定テーブル1111における「パターン」が「低負荷」の場合に用いられる負荷テーブル1112bの一例である。負荷テーブル1112は、「動作周波数」および「負荷」の各項目を含む。「動作周波数」には、CPU101を動作させるクロック周波数が格納される。「負荷」には、CPU101の負荷率が格納される。負荷率は、例えば、百分率(%)で示される。負荷テーブル1112は、「制御情報」の一例である。 FIG. 11 is a diagram showing an example of a load table stored in the parameter save area. A load table 1112 is prepared for each “pattern” stored in the governor selection table 1111 . FIG. 11A shows an example of the load table 1112a used when the "pattern" in the governor selection table 1111 is "high load". FIG. 11B shows an example of the load table 1112b used when the "pattern" in the governor selection table 1111 is "low load". The load table 1112 includes items of "operating frequency" and "load". "Operating frequency" stores the clock frequency for operating the CPU 101 . The load factor of the CPU 101 is stored in the "load". The load factor is indicated by percentage (%), for example. The load table 1112 is an example of "control information".

第2実施形態において、「高負荷」、「中負荷」、「低負荷」の分類は、CPU101の消費電力を考慮して決定される。CPU101の消費電力は、動作周波数によって異なる。図12は、CPUの消費電力と動作周波数との対応の一例を示すグラフである。図12のグラフでは、縦軸がCPU101の消費電力を示し、横軸が動作周波数を示す。図12を参照すると理解できるように、CPU101の消費電力はCPU101の動作周波数に比例して変化するわけではなく、ある動作周波数を境にして増加の割合が高くなる。本実施形態ではこの境を変化点Rと称し、この変化点Rを考慮して「高負荷」、「中負荷」、「低負荷」の分類が決定される。変化点Rは、スマートフォン1aの設計時等において試験によって定めればよい。 In the second embodiment, the classification of “high load”, “medium load” and “low load” is determined in consideration of power consumption of the CPU 101 . The power consumption of the CPU 101 varies depending on the operating frequency. FIG. 12 is a graph showing an example of correspondence between CPU power consumption and operating frequency. In the graph of FIG. 12, the vertical axis indicates the power consumption of the CPU 101, and the horizontal axis indicates the operating frequency. As can be understood by referring to FIG. 12, the power consumption of the CPU 101 does not change in proportion to the operating frequency of the CPU 101, but increases at a certain operating frequency. In this embodiment, this boundary is called a change point R, and the classification of "high load", "middle load", and "low load" is determined in consideration of this change point R. The change point R may be determined by testing at the time of designing the smartphone 1a or the like.

動作履歴保存域112aは、アクティビティごとの動作時間と負荷情報とを対応付けて記憶する。図13は、第2実施形態における、動作履歴保存域に格納される動作履歴テーブルの一例を示す図である。動作履歴テーブル1121aには、「アクティビティ名」、「動作時間」および「負荷情報」が対応付けて格納される。「アクティビティ名」は、動作履歴テーブル1121と同一であるため、説明を省略する。「動作時間」は、アクティビティの起動処理が完了してから、当該アクティビティが終了するまでの時間である。「負荷情報」には、アクティビティの負荷を示す情報が格納される。図13に例示される「負荷情報」には、アクティビティの負荷を「高負荷」、「中負荷」、「低負荷」の三段階で示した情報が格納される。 The operation history storage area 112a stores the operation time and load information for each activity in association with each other. FIG. 13 is a diagram showing an example of an action history table stored in an action history saving area according to the second embodiment. The activity history table 1121a stores "activity name", "operating time" and "load information" in association with each other. The “activity name” is the same as that of the action history table 1121, so the explanation is omitted. "Operating time" is the time from the completion of activation processing of an activity to the end of the activity. "Load information" stores information indicating the load of the activity. The "load information" exemplified in FIG. 13 stores information indicating the load of the activity in three levels of "high load", "medium load", and "low load".

ガバナー調整部103aは、実行中のアクティビティの動作時間および動作時間中のア
クティビティの負荷を測定する。負荷の測定では、ガバナー調整部103aは、例えば、アクティビティの負荷をCPU101の動作周波数ごとの頻度を示すヒストグラムを生成してもよい。
The governor adjustment unit 103a measures the operating time of the activity being executed and the load of the activity during the operating time. In the load measurement, the governor adjustment unit 103a may generate, for example, a histogram indicating the frequency of the activity load for each operating frequency of the CPU 101. FIG.

図14は、ガバナー調整部が取得したヒストグラムの一例を示す図である。図14において、縦軸は実行中のアクティビティ内におけるCPU101の動作周波数の割合を示し、横軸はCPU101の動作周波数を示す。図14では、0.1GHz間隔で動作周波数の割合が取得されているが、取得する間隔が0.1GHzに限定されるわけではない。CPUの種類によって設定可能な動作周波数は異なるため、ガバナー調整部103aは、CPUに設定可能な動作周波数のそれぞれについて、動作周波数の割合を取得すればよい。 FIG. 14 is a diagram illustrating an example of a histogram acquired by the governor adjustment unit; In FIG. 14 , the vertical axis indicates the ratio of the operating frequency of the CPU 101 in the activity being executed, and the horizontal axis indicates the operating frequency of the CPU 101 . In FIG. 14, the operating frequency ratio is acquired at intervals of 0.1 GHz, but the acquisition interval is not limited to 0.1 GHz. Since the operating frequencies that can be set differ depending on the type of CPU, the governor adjustment unit 103a may obtain the operating frequency ratio for each of the operating frequencies that can be set for the CPU.

ガバナー調整部103aは、生成したヒストグラムに基づいて、アクティビティの負荷を判定する。ガバナー調整部103aは、例えば、生成したヒストグラムにおいて、変化点R未満の範囲でCPU101が動作している頻度が高ければ「低負荷」と判定し、変化点Rを超えた範囲でCPU101が動作している頻度が高ければ「高負荷」と判定し、動作周波数それぞれにおけるCPU101が動作している頻度が同程度であれば「中負荷」と判定してもよい。また、ガバナー調整部103aは、消費電力の低減を目的とする場合と処理速度の向上を目的とする場合とで、「高負荷」、「中負荷」、「低負荷」を判定する基準を変更してもよい。ガバナー調整部103aは、アクティビティの動作時間およびアクティビティの負荷をアクティビティ名と対応付けて動作履歴テーブル1121aに格納する。 The governor adjustment unit 103a determines the activity load based on the generated histogram. For example, in the generated histogram, if the CPU 101 operates frequently in the range below the change point R, the governor adjustment unit 103a determines that the CPU 101 operates in the range beyond the change point R. If the frequency of operation of the CPU 101 is high, it may be determined to be "high load", and if the frequency of operation of the CPU 101 at each operating frequency is about the same, it may be determined to be "medium load". In addition, the governor adjustment unit 103a changes the criteria for determining "high load", "medium load", and "low load" depending on whether the purpose is to reduce power consumption or to improve processing speed. You may The governor adjustment unit 103a associates the operation time of the activity and the load of the activity with the activity name and stores them in the operation history table 1121a.

また、ガバナー調整部103aは、起動処理が完了したアクティビティの「負荷情報」を動作履歴テーブル1121aから取得する。ガバナー調整部103aは、取得した「負荷情報」をガバナー制御部104aに通知する。 Also, the governor adjustment unit 103a acquires the "load information" of the activity for which the activation process has been completed from the operation history table 1121a. The governor adjustment unit 103a notifies the acquired "load information" to the governor control unit 104a.

ガバナー制御部104aは、パラメータ保存域111を参照して、ガバナー調整部103から通知された「負荷情報」に対応するガバナーテーブルを取得する。ガバナー制御部104aは、取得したガバナーテーブルにしたがって、周波数制御部105の制御を行う。 The governor control unit 104 a refers to the parameter storage area 111 to obtain the governor table corresponding to the “load information” notified from the governor adjustment unit 103 . The governor control unit 104a controls the frequency control unit 105 according to the acquired governor table.

(処理フロー)
図15は、第2実施形態に係る動作履歴保存処理の一例を示す図である。図5と同一の処理には同一の符号を付し、その説明を省略する。以下、図15を参照して、第2実施形態に係る動作履歴保存処理の一例について説明する。
(processing flow)
FIG. 15 is a diagram illustrating an example of operation history saving processing according to the second embodiment. The same reference numerals are assigned to the same processes as in FIG. 5, and the description thereof is omitted. An example of the operation history saving process according to the second embodiment will be described below with reference to FIG. 15 .

T11では、ガバナー調整部103aは、アクティビティの起動処理終了時刻を取得する。起動処理終了時刻は、すなわち、ユーザが当該アクティビティを操作可能な状態となった時刻ということができる。ガバナー調整部103aは、上述の通り、システムサービス1142からの完了通知によってアクティビティの起動処理終了を検知できる。 At T11, the governor adjustment unit 103a acquires the activation processing end time of the activity. The activation processing end time can be said to be the time when the activity becomes operable by the user. As described above, the governor adjustment unit 103a can detect the end of the activation process of the activity by the completion notification from the system service 1142. FIG.

T12では、ガバナー調整部103aは、CPU101の動作周波数の情報を取得する。動作周波数の情報は、動作周波数と、その動作周波数が継続する時間を対応付けて取得すればよい。ガバナー調整部103aは、例えば、0.8GHzが3秒継続し、1.0GHzが2秒継続し、1.3GHzが5秒継続し、0.9GHzが1秒継続する、といった情報を取得する。取得した情報は、例えば、記憶部11に記憶させればよい。 At T12, the governor adjustment unit 103a acquires information on the operating frequency of the CPU 101. FIG. Information on the operating frequency may be obtained by associating the operating frequency with the duration of the operating frequency. The governor adjustment unit 103a acquires information that, for example, 0.8 GHz continues for 3 seconds, 1.0 GHz continues for 2 seconds, 1.3 GHz continues for 5 seconds, and 0.9 GHz continues for 1 second. The acquired information may be stored in the storage unit 11, for example.

T13では、ガバナー調整部103aは、アクティビティが終了したか否かを判定する。ガバナー調整部103aは、例えば、システムサービス1042から終了通知を通知されることで、アクティビティの終了を検知できる。アクティビティが終了した場合(T1
3でYES)、処理はT14に進められる。アクティビティが終了していない場合(T13でNO)、処理はT12に進められる。
At T13, the governor adjustment unit 103a determines whether or not the activity has ended. The governor adjustment unit 103a can detect the end of the activity by being notified of the end from the system service 1042, for example. When the activity ends (T1
3 YES), the process proceeds to T14. If the activity has not ended (NO in T13), the process proceeds to T12.

T14では、ガバナー調整部103aは、アクティビティの終了時刻を取得する。T15では、ガバナー調整部103aは、T11で取得した起動処理終了時刻とT14で取得したアクティビティ終了時刻とを基に、アクティビティの動作時間を算出する。ガバナー調整部103aは、算出した動作時間と、T12で取得した情報とを基に、CPU101の動作周波数の頻度を示すヒストグラムを生成する。すなわち、ガバナー調整部103aは、動作時間のうち、CPU101がどの動作周波数でどの程度の時間動作していたかを基にヒストグラムを生成すればよい。 At T14, the governor adjustment unit 103a acquires the end time of the activity. At T15, the governor adjustment unit 103a calculates the operating time of the activity based on the activation process end time acquired at T11 and the activity end time acquired at T14. The governor adjustment unit 103a generates a histogram indicating the frequency of the operating frequency of the CPU 101 based on the calculated operating time and the information acquired at T12. That is, the governor adjustment unit 103a may generate a histogram based on how long the CPU 101 has operated at what operating frequency during the operating time.

T16では、ガバナー調整部103aは、生成したヒストグラムを基に、変化点Rを考慮して、アクティビティの負荷を測定する。T17では、ガバナー調整部103aは、T16で決定したアクティビティの負荷とアクティビティ名とを対応付けて、動作履歴テーブル1121aに格納する。 At T16, the governor adjustment unit 103a measures the load of the activity based on the generated histogram and considering the change point R. At T17, the governor adjustment unit 103a associates the load of the activity determined at T16 with the activity name, and stores them in the operation history table 1121a.

図16は、第2実施形態に係るガバナーテーブル選択処理の一例を示す図である。図5と同一の処理には同一の符号を付し、その説明を省略する。以下、図16を参照して、第2実施形態に係るガバナーテーブル選択処理の一例について説明する。 FIG. 16 is a diagram illustrating an example of governor table selection processing according to the second embodiment. The same reference numerals are assigned to the same processes as in FIG. 5, and the description thereof is omitted. An example of the governor table selection process according to the second embodiment will be described below with reference to FIG.

T21では、ガバナー調整部103aは、T1で取得したアクティビティ名が動作履歴テーブル1121aに格納されているか否かを判定する。格納されている場合(T21でYES)、処理はT22に進められる。格納されていない場合(T21でNO)、処理はT25に進められる。 At T21, the governor adjustment unit 103a determines whether or not the activity name obtained at T1 is stored in the operation history table 1121a. If it is stored (YES in T21), the process proceeds to T22. If not stored (NO in T21), the process proceeds to T25.

T22では、ガバナー調整部103aは、T1で取得したアクティビティ名に対応付けられた負荷情報を動作履歴テーブル1121aから取得する。ガバナー調整部103aは、取得した負荷情報をガバナー制御部104aに通知する。 At T22, the governor adjustment unit 103a acquires load information associated with the activity name acquired at T1 from the operation history table 1121a. The governor adjustment unit 103a notifies the acquired load information to the governor control unit 104a.

T23では、ガバナー制御部104aは、T22で通知された負荷情報を基に、パラメータ保存域111を参照して、ガバナーテーブルを選定する。T24では、ガバナー制御部104aは、T23で選定したガバナーテーブルにしたがって、周波数制御部105を制御することで、CPU101に供給されるクロック周波数を制御する。 At T23, the governor control unit 104a selects a governor table by referring to the parameter storage area 111 based on the load information notified at T22. At T24, the governor control unit 104a controls the clock frequency supplied to the CPU 101 by controlling the frequency control unit 105 according to the governor table selected at T23.

T25では、ガバナー制御部104aは、デフォルトのガバナーテーブルを選定する。デフォルトのガバナーテーブルとして、何れのガバナーテーブルを採用するかはあらかじめ決定しておけばよい。例えば、デフォルトのガバナーテーブルとして、「負荷情報」が「中負荷」のガバナーテーブルを採用してもよい。T26では、図15を参照して説明した動作履歴保存処理が実行される。 At T25, the governor control unit 104a selects a default governor table. Which governor table to use as the default governor table should be determined in advance. For example, as the default governor table, a governor table whose “load information” is “medium load” may be adopted. At T26, the operation history saving process described with reference to FIG. 15 is executed.

<第2実施形態の効果>
第2実施形態では、起動処理完了後のユーザによる操作が可能な状態におけるアクティビティの負荷が測定され、測定された負荷に基づいて、ガバナーテーブルが選定される。ガバナーテーブルは、図11に例示されるように、アクティビティの負荷に応じて、負荷率と動作周波数とが対応付けられる。すなわち、高負荷のアクティビティが実行されている場合、CPU101の負荷が低いうちにCPU101の動作周波数を上昇させることで、アクティビティの動作速度を改善できる。また、低負荷のアクティビティが実行されている場合、CPU101の負荷がある程度高くなるまではCPU101の動作周波数の上昇を抑制することで、消費電力を低減する。
<Effects of Second Embodiment>
In the second embodiment, the activity load is measured in a state in which the user can operate after the start-up process is completed, and the governor table is selected based on the measured load. As illustrated in FIG. 11, the governor table associates the load factor with the operating frequency according to the activity load. That is, when an activity with a high load is being executed, the operating speed of the activity can be improved by increasing the operating frequency of the CPU 101 while the load on the CPU 101 is low. Also, when a low-load activity is being executed, power consumption is reduced by suppressing an increase in the operating frequency of the CPU 101 until the load on the CPU 101 increases to some extent.

図17は、第2実施形態の効果を例示する図である。図17では、縦軸がCPU101の動作周波数を示し、横軸が時間を示す。図17では、時刻tにおいて、低負荷のアクティビティ1から高負荷のアクティビティ2に遷移した状態が例示される。また、図17において、点線は第2実施形態適用前の動作周波数の遷移を例示し、実線は第2実施形態適用後の動作周波数の遷移を例示する。図17を参照すると理解できるように、第2実施形態を適用前の方が第2実施形態適用後よりも動作周波数の変動が大きい。すなわち、第2実施形態が適用されることで、低負荷のアクティビティ1における動作周波数を低い状態で遷移させ、高負荷のアクティビティ2における動作周波数を高い状態で遷移させることができる。そのため、第2実施形態によれば、アクティビティの起動完了後におけるアクティビティの動作速度とスマートフォン1aの消費電力とのバランスを好適に保つことができる。 FIG. 17 is a diagram illustrating the effect of the second embodiment. In FIG. 17, the vertical axis indicates the operating frequency of the CPU 101, and the horizontal axis indicates time. FIG. 17 illustrates a transition state from low load activity 1 to high load activity 2 at time t. In FIG. 17, the dotted line illustrates the transition of the operating frequency before applying the second embodiment, and the solid line illustrates the transition of the operating frequency after applying the second embodiment. As can be understood by referring to FIG. 17, the variation in operating frequency is greater before applying the second embodiment than after applying the second embodiment. That is, by applying the second embodiment, it is possible to shift the operating frequency in the low load activity 1 to a low state and to shift the operating frequency in the high load activity 2 to a high state. Therefore, according to the second embodiment, it is possible to maintain a good balance between the operation speed of the activity after the activation of the activity is completed and the power consumption of the smartphone 1a.

第2実施形態では、アプリケーションプログラム113単位ではなく、アプリケーションプログラム113内の処理単位であるアクティビティごとに負荷が測定され、ガバナーテーブルが選定される。そのため、例えば、ゲームプログラムのような、シーン毎における負荷の変動が激しいアプリケーションプログラム113に対しても、各アクティビティに対して好適なガバナーテーブルを適用できる。 In the second embodiment, the load is measured not for each application program 113 but for each activity, which is a processing unit within the application program 113, and a governor table is selected. Therefore, for example, a governor table suitable for each activity can be applied to the application program 113, such as a game program, in which the load fluctuates sharply for each scene.

第2実施形態において、動作履歴テーブル1121aの「負荷情報」に格納される情報として「高負荷」、「中負荷」、「低負荷」の三段階で例示したが、「負荷情報」に格納される情報がこのような情報に限定されるわけではない。「負荷情報」に格納される情報は、例えば、CPU101の負荷率、CPU101の動作クロックのヒストグラム、または、アクティビティの負荷に応じて選定するガバナーパラメータであってもよい。 In the second embodiment, the information stored in the "load information" of the operation history table 1121a is exemplified in three levels of "high load", "medium load", and "low load". The information provided is not limited to such information. The information stored in the "load information" may be, for example, the load factor of the CPU 101, a histogram of the operating clock of the CPU 101, or a governor parameter selected according to the activity load.

以上では、スマートフォンを用いて各実施形態について説明したが、開示の技術の適用対象がスマートフォンに限定されるわけではない。開示の技術は、ノート型パーソナルコンピュータ、タブレット型コンピュータ、ウェアラブルコンピュータ等の様々なバッテリを搭載した可搬型情報処理装置に対して好適である。 Although each embodiment has been described above using a smartphone, the application target of the technology disclosed herein is not limited to smartphones. The disclosed technology is suitable for portable information processing devices equipped with various batteries, such as notebook personal computers, tablet computers, and wearable computers.

以上で開示した実施形態や変形例はそれぞれ組み合わせる事ができる。例えば、第1実施形態と第2実施形態とを組み合わせることで、アクティビティの起動処理中には最大クロックでCPU101を駆動し、起動処理を終えると、アクティビティに適したガバナーテーブルを適用してもよい。このような処理により、アクティビティの起動処理時間を短縮しつつ、アクティビティの動作速度とスマートフォンの消費電力とを好適なバランスに保つことができる。 The embodiments and modifications disclosed above can be combined. For example, by combining the first embodiment and the second embodiment, the CPU 101 may be driven at the maximum clock during the activation process of the activity, and the governor table suitable for the activity may be applied after the activation process is finished. . Through such processing, it is possible to maintain a suitable balance between the operation speed of the activity and the power consumption of the smartphone while shortening the activation processing time of the activity.

<<コンピュータが読み取り可能な記録媒体>>
コンピュータその他の機械、装置(以下、コンピュータ等)に上記いずれかの機能を実現させる情報処理プログラムをコンピュータ等が読み取り可能な記録媒体に記録することができる。そして、コンピュータ等に、この記録媒体のプログラムを読み込ませて実行させることにより、その機能を提供させることができる。
<<Computer-readable recording medium>>
An information processing program that causes a computer or other machine or device (hereinafter referred to as a computer or the like) to implement any of the functions described above can be recorded in a computer-readable recording medium. By causing a computer or the like to read and execute the program of this recording medium, the function can be provided.

ここで、コンピュータ等が読み取り可能な記録媒体とは、データやプログラム等の情報を電気的、磁気的、光学的、機械的、または化学的作用によって蓄積し、コンピュータ等から読み取ることができる記録媒体をいう。このような記録媒体のうちコンピュータ等から取り外し可能なものとしては、例えばフレキシブルディスク、光磁気ディスク、Compact Disc Read Only Memory(CD-ROM)、Compact Disc - Recordable(CD-R)、Compact Disc - ReWriterable(CD-RW)、Digital Versatile Disc(DVD)、ブ
ルーレイディスク(BD)、Digital Audio Tape(DAT)、8mmテープ、フラッシュメモリなどのメモリカード等がある。また、コンピュータ等に固定された記録媒体として
ハードディスクやROM等がある。
Here, a computer-readable recording medium is a recording medium that stores information such as data and programs by electrical, magnetic, optical, mechanical, or chemical action and can be read by a computer, etc. Say. Examples of such recording media that can be removed from a computer or the like include flexible discs, magneto-optical discs, Compact Disc Read Only Memory (CD-ROM), Compact Disc-Recordable (CD-R), Compact Disc-ReWriterable. (CD-RW), Digital Versatile Disc (DVD), Blu-ray Disc (BD), Digital Audio Tape (DAT), 8 mm tape, and memory cards such as flash memory. In addition, there are a hard disk, a ROM, and the like as recording media fixed to a computer or the like.

1、1a・・・スマートフォン
10・・・アプリケーションプロセッサ
101・・・CPU
102・・・スケジューラ
103、103a・・・ガバナー調整部
104、104a・・・ガバナー制御部
105・・・周波数制御部
106・・・電圧制御部
11・・・記憶部
111・・・パラメータ保存域
1111・・・ガバナー選定テーブル
112・・・動作履歴保存域
1121、1121a・・・動作履歴テーブル
113・・・アプリケーションプログラム
114・・・OS
1141・・・カーネル
1142・・・システムサービス
12・・・クロックコントローラ
13・・・電源制御部
14・・・バッテリ
15・・・通信部
16・・・表示部
17・・・入力部
1, 1a... Smartphone 10... Application processor 101... CPU
102... Scheduler 103, 103a... Governor adjustment unit 104, 104a... Governor control unit 105... Frequency control unit 106... Voltage control unit 11... Storage unit 111... Parameter storage area 1111... Governor selection table 112... Operation history storage area 1121, 1121a... Operation history table 113... Application program 114... OS
1141... Kernel 1142... System service 12... Clock controller 13... Power control unit 14... Battery 15... Communication unit 16... Display unit 17... Input unit

Claims (6)

アプリケーションプログラム内の処理単位であるアクティビティの起動処理開始から起動処理終了までの動作時間を前記アクティビティの識別情報と対応付けて記憶する記憶部と、
前記アクティビティの動作時間を測定し、測定した前記動作時間を前記アクティビティの識別情報と対応付けて前記記憶部に記憶させる測定部と、
プロセッサの動作周波数を制御する制御部と、を備え、
前記制御部は、起動されたアクティビティに対応する前記動作時間が前記記憶部に記憶されている場合に、前記動作時間の間における前記プロセッサの動作周波数を上昇させる、
情報処理装置。
a storage unit that stores an operation time from the start of activation processing to the end of activation processing of an activity, which is a processing unit in an application program, in association with identification information of the activity;
a measurement unit that measures the operating time of the activity, associates the measured operating time with identification information of the activity, and stores it in the storage unit;
A control unit that controls the operating frequency of the processor,
When the operating time corresponding to the activated activity is stored in the storage unit, the control unit increases the operating frequency of the processor during the operating time.
Information processing equipment.
前記制御部が前記プロセッサの動作周波数を上昇させる処理は、前記プロセッサの動作周波数を設定可能な範囲で最大にすることを含む、
請求項1に記載の情報処理装置。
The process by which the control unit increases the operating frequency of the processor includes maximizing the operating frequency of the processor within a settable range,
The information processing device according to claim 1 .
前記制御部が前記プロセッサの動作周波数を上昇させる処理は、前記プロセッサの最低動作周波数を上昇させることを含む、
請求項1または2に記載の情報処理装置。
The process by which the control unit increases the operating frequency of the processor includes increasing the minimum operating frequency of the processor,
The information processing apparatus according to claim 1 or 2.
前記測定部は、前記動作時間を測定したアクティビティの識別情報が前記記憶部に記憶されている場合、前記記憶部において前記アクティビティに対応付けられた動作時間を測定した動作時間に更新する、
請求項1から3のいずれか一項に記載の情報処理装置。
When the identification information of the activity whose operation time is measured is stored in the storage unit, the measurement unit updates the operation time associated with the activity in the storage unit to the measured operation time.
The information processing apparatus according to any one of claims 1 to 3.
前記記憶部は、さらに、前記プロセッサの処理能力の制御情報を前記アクティビティの負荷毎に記憶し、
前記測定部は、さらに、前記起動処理終了後から前記アクティビティの動作終了までの負荷を測定し、測定した前記負荷を前記アクティビティの識別情報と対応付けて前記記憶部に記憶させ、
前記制御部は、さらに、測定した前記負荷に基づいて前記制御情報を選定し、選定した制御情報にしたがって、前記プロセッサを制御する、
請求項1から4のいずれか一項に記載の情報処理装置。
The storage unit further stores control information of the processing capacity of the processor for each load of the activity,
The measurement unit further measures the load from the end of the activation process to the end of the operation of the activity, stores the measured load in the storage unit in association with the identification information of the activity,
The control unit further selects the control information based on the measured load, and controls the processor according to the selected control information.
The information processing apparatus according to any one of claims 1 to 4.
前記測定部は、前記プロセッサの動作周波数の増加に対する消費電力の増加の割合が所定値よりも高くなる動作周波数に基づいて、前記負荷を測定する、
請求項5に記載の情報処理装置。
The measurement unit measures the load based on an operating frequency at which a rate of increase in power consumption with respect to an increase in the operating frequency of the processor is higher than a predetermined value.
The information processing device according to claim 5 .
JP2018191233A 2018-10-09 2018-10-09 Information processing equipment Active JP7145718B2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2018191233A JP7145718B2 (en) 2018-10-09 2018-10-09 Information processing equipment

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2018191233A JP7145718B2 (en) 2018-10-09 2018-10-09 Information processing equipment

Publications (2)

Publication Number Publication Date
JP2020060921A JP2020060921A (en) 2020-04-16
JP7145718B2 true JP7145718B2 (en) 2022-10-03

Family

ID=70220807

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2018191233A Active JP7145718B2 (en) 2018-10-09 2018-10-09 Information processing equipment

Country Status (1)

Country Link
JP (1) JP7145718B2 (en)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP7479919B2 (en) * 2020-05-08 2024-05-09 Fcnt合同会社 Information processing device

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2012150668A (en) 2011-01-19 2012-08-09 Fujitsu Ltd Information processing device, control method and program
JP2012221406A (en) 2011-04-13 2012-11-12 Nec Casio Mobile Communications Ltd Information processing device, information processing method, and program
JP2013509654A (en) 2009-10-28 2013-03-14 ディジマーク コーポレイション Sensor-based mobile search, related methods and systems
JP2014182512A (en) 2013-03-18 2014-09-29 Fujitsu Ltd Frequency control device, frequency control method, and frequency control program
JP2015043165A (en) 2013-08-26 2015-03-05 富士通株式会社 Information processing apparatus, control program, and control method

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8621253B1 (en) * 2012-06-26 2013-12-31 Google Inc. Processor boost based on user interface demand

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2013509654A (en) 2009-10-28 2013-03-14 ディジマーク コーポレイション Sensor-based mobile search, related methods and systems
JP2012150668A (en) 2011-01-19 2012-08-09 Fujitsu Ltd Information processing device, control method and program
JP2012221406A (en) 2011-04-13 2012-11-12 Nec Casio Mobile Communications Ltd Information processing device, information processing method, and program
JP2014182512A (en) 2013-03-18 2014-09-29 Fujitsu Ltd Frequency control device, frequency control method, and frequency control program
JP2015043165A (en) 2013-08-26 2015-03-05 富士通株式会社 Information processing apparatus, control program, and control method

Also Published As

Publication number Publication date
JP2020060921A (en) 2020-04-16

Similar Documents

Publication Publication Date Title
US10372494B2 (en) Thread importance based processor core partitioning
US10146582B2 (en) Method for assigning priority to multiprocessor tasks and electronic device supporting the same
US9442774B2 (en) Thermally driven workload scheduling in a heterogeneous multi-processor system on a chip
US8996902B2 (en) Modal workload scheduling in a heterogeneous multi-processor system on a chip
CN104239153B (en) The method and apparatus of multi-core CPU load balancing
US9229503B2 (en) Thermal power budget allocation for maximum user experience
US20180120920A1 (en) Thread Importance Based Processor Core Parking And Frequency Selection
US9690618B2 (en) Method for task scheduling and electronic device using the same
US20130318379A1 (en) Scheduling tasks among processor cores
CN107924225B (en) System and method for dynamically adjusting memory state transition timers
US11940860B2 (en) Power budget management using quality of service (QoS)
US20160248125A1 (en) Heterogeneous Battery Cell Switching
KR102326945B1 (en) Task Migration Method and Apparatus
JP2016534441A (en) Intelligent multi-core control for optimal performance per watt
US9507641B1 (en) System and method for dynamic granularity control of parallelized work in a portable computing device (PCD)
US20180032418A1 (en) Application-Specific, Performance-Aware Energy Optimization
JP7145718B2 (en) Information processing equipment
US20150205636A1 (en) Using high priority thread to boost cpu clock rate
CN105100505B (en) A kind of method and system that battery capacity is distributed for terminal applies
US20180032374A1 (en) Application launch booster
TW201727435A (en) Electronic device with multi-core processor and management method for multi-core processor
US20230100163A1 (en) Allocating computing device resources
WO2022271606A1 (en) Power budget management using quality of service (qos)
US20140068628A1 (en) Storage medium, information processing method, and information processing device
JP2016134775A (en) Information processing apparatus, information processing method, and information processing program

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20210929

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20220817

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

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20220920

R150 Certificate of patent or registration of utility model

Ref document number: 7145718

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

S111 Request for change of ownership or part of ownership

Free format text: JAPANESE INTERMEDIATE CODE: R313113

S533 Written request for registration of change of name

Free format text: JAPANESE INTERMEDIATE CODE: R313533

R350 Written notification of registration of transfer

Free format text: JAPANESE INTERMEDIATE CODE: R350

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250