JP2009520298A - スケジュールに基づくキャッシュ/メモリの電力最小化技術 - Google Patents
スケジュールに基づくキャッシュ/メモリの電力最小化技術 Download PDFInfo
- Publication number
- JP2009520298A JP2009520298A JP2008546806A JP2008546806A JP2009520298A JP 2009520298 A JP2009520298 A JP 2009520298A JP 2008546806 A JP2008546806 A JP 2008546806A JP 2008546806 A JP2008546806 A JP 2008546806A JP 2009520298 A JP2009520298 A JP 2009520298A
- Authority
- JP
- Japan
- Prior art keywords
- task
- cache
- schedule
- tasks
- cache line
- 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.)
- Withdrawn
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F1/00—Details not covered by groups G06F3/00 - G06F13/00 and G06F21/00
- G06F1/26—Power supply means, e.g. regulation thereof
- G06F1/32—Means for saving power
- G06F1/3203—Power management, i.e. event-based initiation of a power-saving mode
- G06F1/3206—Monitoring of events, devices or parameters that trigger a change in power modality
- G06F1/3215—Monitoring of peripheral devices
- G06F1/3225—Monitoring of peripheral devices of memory devices
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F12/00—Accessing, addressing or allocating within memory systems or architectures
- G06F12/02—Addressing or allocation; Relocation
- G06F12/08—Addressing or allocation; Relocation in hierarchically structured memory systems, e.g. virtual memory systems
- G06F12/0802—Addressing of a memory level in which the access to the desired data or data block requires associative addressing means, e.g. caches
- G06F12/0806—Multiuser, multiprocessor or multiprocessing cache systems
- G06F12/0842—Multiuser, multiprocessor or multiprocessing cache systems for multiprocessing or multitasking
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2212/00—Indexing scheme relating to accessing, addressing or allocation within memory systems or architectures
- G06F2212/10—Providing a specific technical effect
- G06F2212/1028—Power efficiency
-
- Y—GENERAL 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
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02D—CLIMATE 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/00—Energy efficient computing, e.g. low power processors, power management or thermal management
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Power Sources (AREA)
- Memory System Of A Hierarchy Structure (AREA)
Abstract
本発明によるシステムは、キャッシュメモリにおける複数のキャッシュラインで実行すべき複数のタスクに対するタスク実行スケジュール(101)を有するタスクスケジューラ(301)を具えている。このシステムは更に、電圧スカラーレジスタ(305)を有するキャッシュコントローラ論理回路(303)を具えている。電圧スカラーレジスタ(305)は、タスクスケジューラにより、実行すべき次のタスクのタスク識別子(204)で更新される。このシステムは電圧スカラー(304)を有し、この電圧スカラー(304)は、タスク実行スケジュール(101)に基づいて低電力モードで動作させるための1つ以上のキャッシュラインを選択する。タスク実行スケジュール(101)はルックアップテーブル内に記憶されている。
Description
本発明は、キャッシュメモリに関するものであり、特にキャッシュメモリにおける電力最小化に関するものである。
キャッシュ/メモリの電力は、特に、パーソナルデジタルアシスタント(PDA)、携帯電話等のような携帯装置に対するシステム設計処理において最適化するための重要なパラメータとなっている。キャッシュ/メモリのサブシステムにより電力消費量を管理するのに用いられている技術としては、ハードウェア及びソフトウェアの双方の観点で種々のものが知られている。例えば、ドロウシィ(Drowsy)キャッシュ技術は、コールドキャッシュラインをドロウシィモードに進めることにより、キャッシュラインを能動的として漏洩電力を最小にするようにしている。他の例の場合、キャッシュ/メモリの電力の最小化に向けた目的の、現存するソフトウェアに基づく技術は、キャッシュブロックのアクセス周波数を用いて、どのキャッシュブロックがスリープ状態におかれているかを決定する。しかし、これらの技術は最適なものではない。
従って、キャッシュ/メモリの電力を最小化するための方法及びシステムを改善する必要性が存在する。この方法及びシステムは、低電力モードで動作する特定のキャッシュラインを選択するのにタスクスケジュール情報を用いる必要がある。本発明は、このような必要性に対処するものである。
本発明の方法及びシステムは、低電力モードで動作する特定のキャッシュラインを選択するのにタスクスケジュール情報を用いる。複数のタスク又はスレッドが1つのプロセッサでスケジュールされているマルチタスクシナリオでは、このプロセッサが、異なるタスクに対応する複数のコンテキストを記憶しており、タスクブロックにおいて、あるタスクから他のタスクへの切り換えを行いうるようになっている。このシナリオでは、キャッシュが、種々のタスクに対応するデータを、アプリケーションランの期間に亘り、タスクスケジュールの形態で含んでいる。本発明によれば、電圧の逓降化を、選択キャッシュラインに対しタスクスケジュールに基づいて行なう。タスクスケジュールは、タスクスケジューラによりルックアップテーブルの形態で記憶されている。又、キャッシュコントローラ論理回路が、タスクスケジューラにより、実行すべき次のタスクのタスク識別子で更新される電圧スカラーレジスタと、タスク実行スケジュールに基づいて低電力モードで動作する1つ以上のキャッシュラインを選択する電圧スカラーとを有するようにする。
本発明による方法及びシステムは、低電力モードで動作させるために、タスクスケジュール情報を用いて特定のキャッシュラインを選択する。複数のタスク又はスレッドが1つのプロセッサでスケジュールされているマルチタスクシナリオでは、このプロセッサが、異なるタスクに対応する複数のコンテキストを記憶しており、タスクブロックにおいて、あるタスクから他のタスクへの切り換えを行いうるようになっている。このシナリオでは、キャッシュが、種々のタスクに対応するデータを、アプリケーションランの期間に亘り、タスクスケジュールの形態で含んでいる。本発明によれば、電圧の逓降化を、選択キャッシュラインに対しタスクスケジュールに基づいて行なう。
図1は、低電力モードで動作させるために、タスクスケジュール情報を用いて特定のキャッシュラインを選択する本発明による方法の一実施例を示すフローチャートである。最初にステップ101において、キャッシュメモリにおける複数のキャッシュラインで実行すべき複数のタスクに対し、タスク実行スケジュールを決定する。次に、ステップ102において、タスク実行スケジュールに基づいて1つ以上のキャッシュラインを低電力モードで動作させる。
例えば、図2A及び2Bに示す3つのタスクT1、T2及びT3を考慮する。これらのタスクをプロセッサ上にマッピングし、各タスクがこれらの実行中に種々のキャッシュブロックを充填する。本発明は、種々のキャッシュブロックが種々のタスクに割り当てられている図示のシナリオでは、どの特定のキャッシュラインが低電力モードで動的に動作させるかを決定するのにタスクスケジュール情報を用いる。例えば、タスクがストリーミング式のアプリケーションドメインにおける共通シナリオを特定の順序で進むようにした図2Bに示すタスクスケジュールを考慮する。上側の行はタスク識別子(ID)を表し、下側の行はスケジュールインスタンスを表す。このシーケンスから明らかなように、このスケジュールは、繰り返しパターン(T1、T2、T3、T1、T3、T2の繰り返しパターン)で進む。
本発明の一実施例によれば、タスクスケジュールがタスク実行スケジュールを決定しうる(ステップ101)。その理由は、タスクスケジュールがこのスケジュール情報をルックアップテーブルに動的に記憶している為である。電力最小化方策が、現在の実行瞬時に対し時間的に後にスケジュールされているタスクを考慮し、且つ動的な電圧の逓降化のためにこの特定のタスクに対応するキャッシュラインを選択する(ステップ102)。これにより、対応するキャッシュラインを低電力モードで動作させる。
本発明によるこのタスクスケジュールに基づく技術は、LRU(Least Recently Used)技術のような、既知の技術よりも有利である。図2Bにおけるタスクスケジュールを考慮するに、LRU技術は、プロセッサがタスクT3を実行する際に(スケジュールインスタンス3中の実行時に)置換するのに、タスクT1に対応するキャッシュラインを選択する。その理由は、プロセッサがタスクT3を実行している時点で、タスクT1に対応するキャッシュラインが、最も長い間使われていない(Least Recently Used)為である。しかし、このLRU技術の場合、次に実行しうるタスクはT1(スケジュールインスタンス4)であり、従って、プロセッサは、タスクT1に対応するキャッシュラインに対し高電圧レベルへの瞬時的な切り換えを経験する。これとは相違し、本発明によるタスクスケジュールに基づく技術では、タスクスケジュールが、次に実行しうるタスクがT1であることを決定し、従って、タスクT2のキャッシュラインを、タスクT3の実行中低電圧モードで動作させるように選択する。従って、高電圧レベルへの瞬時的な切り換えが回避される。
図3は、低電力モードで動作させるために、タスクスケジュール情報を用いて特定のキャッシュラインを選択する本発明によるシステムの実施例を示す。このシステムは、タスクスケジュールパターンをルックアップテーブル(LUT)302の形態で記憶するタスクスケジューラ301を有する。このシステムは更に、電圧スカラー304と電圧スカラーレジスタ305とを有するキャッシュコントローラ論理回路303をも具えている。電圧スカラーレジスタ305はタスク識別子IDを特定し、タスクスケジューラ301により更新される。電圧スカラー304は、電圧の逓降化のために特定のタスクに対応するキャッシュラインを選択する。一実施例では、レジスタをMMIOスペースの一部とすることができ、且つタスクスケジューラが情報をこのレジスタに書き込むことができる場合には、アドレス可能ないかなるレジスタをも電圧スカラーレジスタとして用いることができる。
図4は、図3のシステムにより実行される本発明による方法を示すフローチャートである。まずステップ401において、タスクスケジューラ301がLUT302にタスクパターンを記憶する。ステップ402において、タスクスケジューラ301が、次に実行しうるタスクのタスク識別子(ID)で電圧スカラーレジスタ305を更新する。ステップ403において、電圧スカラー304が電圧スカラーレジスタ305におけるタスク識別子IDを読み取り、このタスクをキャッシュブロックタグのタスク識別子IDと比較する。次に、ステップ404において、電圧スカラー304がキャッシュ電力最小化方策に基づいて電圧スケーリング用のキャッシュブロックを選択する。図4のステップは、タスクスケジュールにおけるタスクのリストに対し繰り返し適用しうる。
本発明による方法は、いかなるキャッシュ電力最小化方策とともに展開させることができる。例えば、次に実行しうるタスクに対応するキャッシュラインがない場合には、電圧スケーリングに対するキャッシュラインの選択を従来の方策に応じて行うことができる。他の例はLRU技術である。本発明は、マルチプロセッサシステム‐オン‐チップ(SoC)にも適用しうる。
本発明による方法及びシステムは、タスクのスケジューリングに対する周期的なパターンがある、ストリーミング式の(オーディオ/ビデオ)アプリケーションにおけるマルチタスキングに対し用いうる。このようなアプリケーションによれば、H.264ビデオ圧縮規格のような種々のビデオ圧縮規格を実行しうる。H.264ビデオ圧縮規格は、ビットレートを著しく低くして、従来のビデオ圧縮規格よりも良好な画質をもたらす。この規格は、符号化すべき画像内容の値を予測する能力を高めたり、符号化効率を改善する。又、種々のネットワーク環境に対する動作の柔軟性及びデータエラー/損失に対するロバスト性をこの規格により可能にする。更に、この規格はシステム全体の価格を低減化するとともに、インフラストラクチャの要求を少なくし、新たなビデオアプリケーションを多くしうる。
本発明の上述した実施例は、本発明の説明の為のものであり、本発明は上述した実施例に限定されるものではない。特に、上述した本発明の機能的な遂行は、ハードウェア、ソフトウェア、ファームウエア及びその他の利用可能な機能要素又は基礎的要素の何れか又はこれらの任意の組み合わせにより達成でき、ネットワークは、有線、無線又はこれらの組み合わせとすることができる。又、その他の変形例も上述した観点の範囲で可能なものであり、従って、本発明の範囲は、図面に関する説明により制限されるものではなく、特許請求の範囲により制限されるものである。
Claims (9)
- キャッシュメモリにおける電力消費量を管理する管理方法であって、この方法が、
(a)前記キャッシュメモリにおける複数のキャッシュラインで実行すべき複数のタスクに対するタスク実行スケジュールを決定する決定ステップと、
(b)前記タスク実行スケジュールに基づいて、1つ以上のキャッシュラインを低電力モードで動作させる動作ステップと
を有する管理方法。 - 請求項1に記載の管理方法において、前記タスク実行スケジュールが、複数のタスクに対する識別子と、これらの複数のタスクのスケジュールインスタンスとを有するようにする管理方法。
- 請求項1に記載の管理方法において、前記動作ステップが、電力最小化方策に基づいて低電力モードで動作するキャッシュラインを選択するステップを有している管理方法。
- 請求項3に記載の管理方法において、各タスクをキャッシュラインに割当て、前記電力最小化方策が、現在の実行瞬時に対し時間的に後のタスクに対するキャッシュラインの電圧逓降化を有するようにする管理方法。
- キャッシュメモリにおける複数のキャッシュラインで実行すべき複数のタスクに対するタスク実行スケジュールを有するタスクスケジューラと、
このタスクスケジューラにより、実行すべき次のタスクのタスク識別子で更新される電圧スカラーレジスタ、及び前記タスク実行スケジュールに基づいて低電力モードで動作する1つ以上のキャッシュラインを選択する電圧スカラーを有するキャッシュコントローラ論理回路と
を具えるシステム。 - 請求項5に記載のシステムにおいて、前記タスク実行スケジュールが、ルックアップテーブルに記憶されているシステム。
- 請求項5に記載のシステムにおいて、前記タスク実行スケジュールが、複数のタスクに対するタスク識別子と、複数のタスクのスケジュールインスタンスとを有するシステム。
- 請求項5に記載のシステムにおいて、前記電圧スカラーは、電力最小化方策に基づいて低電力モードで動作するキャッシュラインを選択するようになっているシステム。
- 請求項8に記載のシステムにおいて、各タスクがキャッシュラインに割り当てられており、前記電力最小化方策が、現在の実行瞬時に対し時間的に後のタスクに対するキャッシュラインの電圧逓降化を有しているシステム。
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US75285605P | 2005-12-21 | 2005-12-21 | |
PCT/IB2006/054965 WO2007072436A2 (en) | 2005-12-21 | 2006-12-20 | Schedule based cache/memory power minimization technique |
Publications (1)
Publication Number | Publication Date |
---|---|
JP2009520298A true JP2009520298A (ja) | 2009-05-21 |
Family
ID=37909433
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2008546806A Withdrawn JP2009520298A (ja) | 2005-12-21 | 2006-12-20 | スケジュールに基づくキャッシュ/メモリの電力最小化技術 |
Country Status (6)
Country | Link |
---|---|
US (1) | US20080307423A1 (ja) |
EP (1) | EP1966672A2 (ja) |
JP (1) | JP2009520298A (ja) |
CN (1) | CN101341456A (ja) |
TW (1) | TW200821831A (ja) |
WO (1) | WO2007072436A2 (ja) |
Families Citing this family (11)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US8667198B2 (en) * | 2007-01-07 | 2014-03-04 | Apple Inc. | Methods and systems for time keeping in a data processing system |
US7917784B2 (en) * | 2007-01-07 | 2011-03-29 | Apple Inc. | Methods and systems for power management in a data processing system |
US7961130B2 (en) * | 2009-08-03 | 2011-06-14 | Intersil Americas Inc. | Data look ahead to reduce power consumption |
TWI409701B (zh) * | 2010-09-02 | 2013-09-21 | Univ Nat Central | Execute the requirements registration and scheduling method |
US10204056B2 (en) * | 2014-01-27 | 2019-02-12 | Via Alliance Semiconductor Co., Ltd | Dynamic cache enlarging by counting evictions |
US9892029B2 (en) | 2015-09-29 | 2018-02-13 | International Business Machines Corporation | Apparatus and method for expanding the scope of systems management applications by runtime independence |
US10170908B1 (en) | 2015-12-09 | 2019-01-01 | International Business Machines Corporation | Portable device control and management |
US9939873B1 (en) | 2015-12-09 | 2018-04-10 | International Business Machines Corporation | Reconfigurable backup and caching devices |
US9996397B1 (en) | 2015-12-09 | 2018-06-12 | International Business Machines Corporation | Flexible device function aggregation |
CN106292996A (zh) * | 2016-07-27 | 2017-01-04 | 李媛媛 | 基于多核芯片的电压降低方法及系统 |
JP2023111422A (ja) * | 2022-01-31 | 2023-08-10 | キオクシア株式会社 | 情報処理装置 |
Family Cites Families (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6026471A (en) * | 1996-11-19 | 2000-02-15 | International Business Machines Corporation | Anticipating cache memory loader and method |
EP1215583A1 (en) * | 2000-12-15 | 2002-06-19 | Texas Instruments Incorporated | Cache with tag entries having additional qualifier fields |
JP2002196981A (ja) * | 2000-12-22 | 2002-07-12 | Fujitsu Ltd | データ処理装置 |
US20040199723A1 (en) * | 2003-04-03 | 2004-10-07 | Shelor Charles F. | Low-power cache and method for operating same |
WO2005048112A1 (ja) * | 2003-11-12 | 2005-05-26 | Matsushita Electric Industrial Co., Ltd. | キャッシュメモリおよびその制御方法 |
US7366841B2 (en) * | 2005-02-10 | 2008-04-29 | International Business Machines Corporation | L2 cache array topology for large cache with different latency domains |
-
2006
- 2006-12-18 TW TW095147467A patent/TW200821831A/zh unknown
- 2006-12-20 JP JP2008546806A patent/JP2009520298A/ja not_active Withdrawn
- 2006-12-20 CN CNA2006800484732A patent/CN101341456A/zh active Pending
- 2006-12-20 EP EP06842623A patent/EP1966672A2/en not_active Withdrawn
- 2006-12-20 WO PCT/IB2006/054965 patent/WO2007072436A2/en active Application Filing
- 2006-12-20 US US12/158,806 patent/US20080307423A1/en not_active Abandoned
Also Published As
Publication number | Publication date |
---|---|
EP1966672A2 (en) | 2008-09-10 |
WO2007072436A2 (en) | 2007-06-28 |
TW200821831A (en) | 2008-05-16 |
US20080307423A1 (en) | 2008-12-11 |
CN101341456A (zh) | 2009-01-07 |
WO2007072436A3 (en) | 2007-10-11 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP2009520298A (ja) | スケジュールに基づくキャッシュ/メモリの電力最小化技術 | |
US11054873B2 (en) | Thermally adaptive quality-of-service | |
JP4838240B2 (ja) | 情報処理装置における電力制御装置 | |
US20140189704A1 (en) | Hetergeneous processor apparatus and method | |
JP2007026094A (ja) | 実行装置およびアプリケーションプログラム | |
US20140189377A1 (en) | Apparatus and method for intelligently powering hetergeneou processor components | |
WO2012117455A1 (ja) | 電力制御装置及び電力制御方法 | |
CN103034617A (zh) | 用于实现可重构系统配置信息存储的缓存结构和管理方法 | |
CN101395586A (zh) | 基于任务的执行阶段动态调整高速缓存分区大小的方法和设备 | |
US9043806B2 (en) | Information processing device and task switching method | |
WO2015183528A1 (en) | Thermal mitigation using selective task modulation | |
JP2009238024A (ja) | 仮想マルチプロセッサ、システムlsi、携帯電話機器、及び仮想マルチプロセッサの制御方法 | |
US11698673B2 (en) | Techniques for memory access in a reduced power state | |
JP2013222321A (ja) | メモリ制御装置、メモリ制御方法、情報処理装置、およびプログラム | |
CN113127194A (zh) | 一种管理芯片资源自适应分配方法、装置及介质 | |
US8589942B2 (en) | Non-real time thread scheduling | |
CN103488585B (zh) | 用于实现可重构系统中配置信息缓存更新的控制器 | |
JP2007019724A (ja) | 無線基地局及びベースバンド信号処理割り当て方法 | |
JP4409568B2 (ja) | 帯域制御プログラム及びマルチプロセッサシステム | |
JPWO2012001776A1 (ja) | マルチコアシステム、スケジューリング方法およびスケジューリングプログラム | |
WO2008026142A1 (en) | Dynamic cache partitioning | |
CN112486679A (zh) | 一种kubernetes集群的pod调度方法、装置及设备 | |
JP2007317176A (ja) | 端末装置 | |
JP2005115620A (ja) | タスク管理方法及びタスク管理手段を有する電子機器 | |
US11681527B2 (en) | Electronic device and multiplexing method of spatial |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A761 | Written withdrawal of application |
Free format text: JAPANESE INTERMEDIATE CODE: A761 Effective date: 20090907 |