JP2007503042A - 動的メモリバッファ - Google Patents

動的メモリバッファ Download PDF

Info

Publication number
JP2007503042A
JP2007503042A JP2006523725A JP2006523725A JP2007503042A JP 2007503042 A JP2007503042 A JP 2007503042A JP 2006523725 A JP2006523725 A JP 2006523725A JP 2006523725 A JP2006523725 A JP 2006523725A JP 2007503042 A JP2007503042 A JP 2007503042A
Authority
JP
Japan
Prior art keywords
buffer
power loss
devices
dynamic memory
applications
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.)
Pending
Application number
JP2006523725A
Other languages
English (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.)
Koninklijke Philips NV
Original Assignee
Koninklijke Philips Electronics NV
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 Koninklijke Philips Electronics NV filed Critical Koninklijke Philips Electronics NV
Publication of JP2007503042A publication Critical patent/JP2007503042A/ja
Pending legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F5/00Methods or arrangements for data conversion without changing the order or content of the data handled
    • G06F5/06Methods or arrangements for data conversion without changing the order or content of the data handled for changing the speed of data flow, i.e. speed regularising or timing, e.g. delay lines, FIFO buffers; over- or underrun control therefor
    • G06F5/10Methods or arrangements for data conversion without changing the order or content of the data handled for changing the speed of data flow, i.e. speed regularising or timing, e.g. delay lines, FIFO buffers; over- or underrun control therefor having a sequence of storage locations each being individually accessible for both enqueue and dequeue operations, e.g. using random access memory
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F12/00Accessing, addressing or allocating within memory systems or architectures
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2205/00Indexing scheme relating to group G06F5/00; Methods or arrangements for data conversion without changing the order or content of the data handled
    • G06F2205/06Indexing scheme relating to groups G06F5/06 - G06F5/16
    • G06F2205/063Dynamically variable buffer size

Abstract

計算手段上で実行状態にある1つ以上のソフトウェアアプリケーション(40)と、当該バッファ(30、210)を介してその1つ以上のアプリケーション(40)と通信状態にある1つ以上のデータ生成および/または受信装置(20)との間において、バッファリングを行うための動的メモリバッファ(30、210)であって、1つ以上の装置(20)内で生じる電力損失を低減するように、1つ以上のアプリケーション(40)に割り当てられる当該バッファ(30)の1つ以上の割当分の割当てを制御する、バッファ管理手段(210)を含むことを特徴とする動的メモリバッファ(30、210)を開示する。

Description

本発明は、動的メモリバッファに関するものであり、特に(これに限定されるものではないが)、資源が限られたマルチアプリケーション環境で使用するための、電力損失が有利に低減された動的メモリバッファに関するものである。本発明はまた、そのような動的メモリバッファにおける電力損失を低減する方法にも関するものである。
記憶バッファは、たとえば入力/出力バッファ(I/Oバッファ)等、よく知られている。そのようなバッファには、先入先出(FIFO)レジスタや、かかるFIFOに類似した動作を行うように構成されたSRAM(Static Random Access Memory)等のメモリ装置が含まれる。これらのバッファは、光学テキスト/画像スキャナ、CCD撮像装置、プリンタ、磁気ディスク装置、および光ディスクドライブといった機械的装置との関連で、用途が見出されることが多い。そのような機械的装置は、マイクロプロセッサやそれに付随するデコーダ等の周辺構成要素のような、実質的に電子的に動作する装置とは、顕著に異なるレートで、連続的にデータの受信および/または出力を行う能力を有するものであることが多い。実質的に電子的に動作する装置と共に機械的装置を効率的に動作させるためには、それらの機械的装置および電子的装置において遅延および/または互いの動作の一時的な失速が生じることを防ぐために、上記のようなバッファが用いられることが多い。
実質的に電子的に動作する装置と機械的装置との組合せを含むシステムを設計する際には、それらの装置のデータレート処理能力を考慮して有利となるように、それら電子的装置と機械的装置との間のインターフェースに必要な記憶バッファのサイズの選択が行われることがよく知られている。たとえば、持運び用のラップトップコンピュータのような装置や、最近のDVDプレーヤ/レコーダおよびMP3プレーヤ/レコーダといった携帯型オーディオビジュアル機器を設計する際には、そのような考慮がなされる。
ここで、期待される要求に応じて入力/出力バッファを動的に割り当てることが知られている。相互接続された電子的装置と機械的装置とが、互いに異なるデータ出力/受信レートのために互いに遅延を生じることを不可能にするため、かかる遅延を防止するために必要とされる最小サイズよりもかなり大きなサイズのバッファを付与することが、従来から実践されている手法である。
しかしながら、当該技術分野では、たとえば米国特許第5951658号に記載されているように、データ記憶システム内のバッファリングを管理することが知られている。かかるシステムにおいては、I/O要求を行うユーザーおよび/またはアプリケーションプログラムにより、管理されている自己のバッファリング設備に制御を伝達するシステムが結果として得られる。管理されているバッファリング設備の動作中においては、ユーザー/アプリケーションがどのようにデータの読出しまたは書込みを行うかを特定するために、ユーザーまたはアプリケーションからの要求が照会される。システムは、意図されている用途に応じて、関連データへの意図されているアクセスに基づき(たとえば、ファイルのサイズおよび/または記憶装置の属性に基づいて)、ユーザー/アプリケーションにそのシステムのバッファを割り当てる。
本発明の発明者は、最近の、資源が限られたマルチアプリケーションのシステム(たとえば、ユーザーインタラクティブな計算機、携帯型コンピュータ、民生オーディオおよび/またはビデオ機器等)にとっては、システム内で生じる電力損失に関して好適に管理される記憶バッファを含めることが、有利であると理解した。システムが、互いに異なるストリーミングビットレートが要求される複数のアプリケーションを実行できる場合には、そのような管理が特に有利であることが分かった。本発明の発明者は、そうしたアプローチに鑑み、本発明を考案した。
本発明は、たとえば充電池ならびに/もしくは使捨て電池のために利用可能な電力が限られており、かつ/または機器内での電力損失が熱負荷の問題を引き起こしやすい、携帯型機器に特に適している。
本発明の第1の目的は、資源が限られたマルチアプリケーションのシステムと組み合わされた際に、低減された電力損失をもたらすことのできる、動的メモリバッファを提供することである。
本発明の第2の目的は、生じる電力損失を低減しようとしながら、その動的メモリバッファに課される要求に応じてサイズを動的に変更することができる、動的メモリバッファを提供することである。
本発明の第1の側面によれば、計算手段上で実行状態にある1つ以上のソフトウェアアプリケーションと、当該バッファを介して上記の1つ以上のアプリケーションと通信状態にある1つ以上のデータ生成および/または受信装置との間において、バッファリングを行うための動的メモリバッファであって、上記の1つ以上の装置内で生じる電力損失を低減するように、上記の1つ以上のアプリケーションに割り当てられる当該バッファの1つ以上の割当分の割当てを制御する、バッファ管理手段を含むことを特徴とする動的メモリバッファが提供される。
本発明は、上記の1つ以上の装置内で生じる電力損失の低減と、バッファのより効率的な使用の保障との、少なくとも一方を実現できる点で利点がある。
上記のバッファにおいては、管理手段が、上記の1つ以上のアプリケーションによって当該バッファに課せられるデータストリーミングレートの要求に応じて、当該バッファの上記の1つ以上の割当分の割当てを制御するように動作可能であることが好ましい。バッファ容量の割当ては、データのストリーミングが生じている際の電力損失の低減に特に関係する。
また、上記のバッファにおいては、管理手段が、上記の1つ以上の装置に対する許容可能な最大電力損失の限界値への接近に応じて、当該バッファの上記の1つ以上の割当分の割当てを制御するように動作可能であることが好ましい。最大電力の閾値に基づいてバッファの割当てを決定する形態は、管理手段がバッファを制御するための、より直接的な形態である。
さらに、上記のバッファにおいては、管理手段が、上記の1つ以上の装置内における所定割合が掛け合わされた電力損失に応じて、当該バッファの1つ以上の割当分の割当てを制御するように動作可能とされ、その所定割合が掛け合わされた電力損失が、実質的に制限のないバッファメモリ容量と関連付けられた1つ以上のアプリケーションについて生じる、対応の潜在的な漸近電力損失値に比例するものとされることが好ましい。さらに好ましくは、上記の所定割合が掛け合わされた電力損失は、対応の潜在的な漸近電力損失値の、105%から300%の範囲内にある値とされる。最も好ましくは、上記の所定割合が掛け合わされた電力損失は、対応の潜在的な漸近電力損失値の、約110%とされる。
予測不可能かつ/または新規なタイプの要求が課された場合に対するバッファの適応性をより高めるためには、管理手段は、上記の1つ以上の装置内で損なわれている電力の尺度を導出し、その尺度を用いて当該バッファの1つ以上の割当分の割当てを制御することにより、上記の1つ以上の装置内で生じる電力損失を反復的に低減するように動作可能な、ニューラルネットワークとして実装される。
計算手段上で実行状態にある上記の1つ以上のソフトウェアアプリケーションと共に動作している際の、その計算手段、当該バッファ、および上記の1つ以上の装置は、資源が限られたマルチアプリケーションシステムに対応する。有利な形態では、かかるシステムは、プログラム素材の再生および/または記録を行うことのできるオーディオ装置およびビデオ装置の少なくとも一方にあたる。
好ましくは、たとえば実装のコストおよび複雑さを抑制するために、上記のバッファの管理手段は、上記の計算手段と上記の1つ以上の装置との少なくとも一方において実行可能な、ソフトウェア中に実装される。
また、上記のバッファにおいては、上記の1つ以上のアプリケーションからのデータレートの要求および/または上記の1つ以上の装置に対する予め決められた電力損失限界値に応じて、当該バッファの1つ以上の割当分を、上記の1つ以上のアプリケーションに割り当てるのに用いるため、管理手段内に、予め決められたデータアレイが含まれていることが好ましい。
さらに、上記のバッファにおいては、当該バッファの少なくとも一部が、ESP(electronic shock protection)バッファを含んでいることが好ましい。
また、データストリーミング動作時における上記の1つ以上の装置内での損失を減らすため、それら装置の少なくとも1つが、データをストリーミングする際に、ストップとスタートとの間で切り換えられるデューティーサイクルのモードで動作するように構成されることが好ましい。
本発明の第2の側面によれば、計算手段上で実行状態にある1つ以上のソフトウェアアプリケーションと、動的メモリバッファを介して上記の1つ以上のアプリケーションと通信状態にある1つ以上のデータ生成および/または受信装置との間において、バッファリングを行うためのその動的メモリバッファを制御する方法であって、上記の1つ以上の装置内で生じる電力損失を低減するように、上記の1つ以上のアプリケーションに割り当てられる上記のバッファの1つ以上の割当分の割当てを制御するバッファ管理手段を、そのバッファが含むようになす工程を含むことを特徴とする方法が提供される。
この方法は、本発明の上記の目的の少なくとも一方に対処することができる方法である。
上記の方法においては、管理手段が、上記の1つ以上のアプリケーションによってバッファに課せられるデータストリーミングレートの要求に応じて、バッファの上記の1つ以上の割当分の割当てを制御するように動作可能であることが好ましい。
また、上記の方法においては、管理手段が、上記の1つ以上の装置に対する許容可能な最大電力損失の限界値への接近に応じて、バッファの上記の1つ以上の割当分の割当てを制御するように動作可能であることが好ましい。
さらに、上記の方法においては、管理手段が、上記の1つ以上の装置内における所定割合が掛け合わされた電力損失に応じて、バッファの1つ以上の割当分の割当てを制御するように動作可能とされ、その所定割合が掛け合わされた電力損失が、実質的に制限のないバッファメモリ容量に対して上記の1つ以上のアプリケーションについて生じる、対応の潜在的な漸近電力損失値に比例するものとされることが好ましい。さらに好ましくは、上記の所定割合が掛け合わされた電力損失は、対応の潜在的な漸近電力損失値の、105%から300%の範囲内にある値とされる。最も好ましくは、上記の所定割合が掛け合わされた電力損失は、対応の潜在的な漸近電力損失値の、約110%とされる。
また、上記の方法においては、管理手段が、上記の1つ以上の装置内で損なわれている電力の尺度を導出し、その尺度を用いてバッファの1つ以上の割当分の割当てを制御することにより、上記の1つ以上の装置内で生じる電力損失を反復的に低減するように動作可能な、ニューラルネットワークとして実装されることが好ましい。
さらに、上記の方法においては、計算手段上で実行状態にある上記の1つ以上のソフトウェアアプリケーションと共に動作している際の、その計算手段、バッファ、および上記の1つ以上の装置が、資源が限られたマルチアプリケーションシステムに対応することが好ましい。
好ましくは、たとえばコスト抑制および/または当該方法の適用の簡単化のために、管理手段は、上記の計算手段と上記の1つ以上の装置との少なくとも一方において実行可能な、ソフトウェア中に実装される。
また、上記の方法においては、上記の1つ以上のアプリケーションからのデータレートの要求および/または上記の1つ以上の装置に対する予め決められた電力損失限界値に応じて、バッファの1つ以上の割当分を、上記の1つ以上のアプリケーションに割り当てるのに用いるため、管理手段内に、予め決められたデータアレイが含まれていることが好ましい。
さらに、上記の方法においては、たとえば当該方法がオーディオCDプレーヤ等の携帯型機器に適用された場合の物理的な衝撃に対処するために、バッファの少なくとも一部が、ESPバッファを含んでいることが好ましい。
また、データストリーミング時における潜在的な損失を低減するため、上記の装置の少なくとも1つが、データをストリーミングする際に、ストップとスタートとの間で切り換えられるデューティーサイクルのモードで動作するように構成されることが好ましい。
本発明の各特徴的な構成は、本発明の範囲から逸脱することなく、任意の組合せが可能である点を理解されたい。
以下、図面を参照しながら、本発明の実施形態を説明する。ただし、これらの実施形態は単なる例である。
本発明は、メモリ記憶装置の特定の動作の仕方に基づいている。図1には、全体として参照番号10で示された記憶装置構成が図示されている。構成10は、記憶装置(STORE DEV.)20と、メモリバッファ(BUFFER)30と、コンピュータのハードウェア(図示せず)上で実行状態にある個々のソフトウェアアプリケーションを1つ以上含む、ソフトウェアアプリケーション群(APPLC.)40とを含んでいる。記憶装置20は、第1のデータ接続50を介して、メモリバッファ30の第1のポートに接続されている。同様に、ソフトウェアアプリケーション群40は、そのコンピュータのハードウェアと、第2のデータ接続60とを介して、バッファ30の第2のポートに接続されている。
変更例として、たとえばオフチップのDRAM(Dynamic Random Access Memory)の場合のように、バッファ30に単一の双方向性ポートを付与して、入力データと出力データとの双方を、インターリーブさせて取り扱うようにすることもできる。
動作中におけるバッファ30を通るデータの流れは、一方向または双方向に生じ得る。バッファ30は、好ましくは、オンチップの半導体SRAMと、オフチップの半導体SDRAM(Static Dynamic Random Access Memory)との少なくとも一方により実装される。これに加えて、あるいはこれに代えて、DRAMによりバッファ30を実装することもできるし、たとえば磁気メモリといったその他の技術を用いることもできる。ソフトウェアアプリケーション群40は、たとえば、オーディオ再生、ビデオ再生、オーディオ記録およびビデオ記録の、少なくとも1つを行うことができるものとされ得る。
本発明に特に適しているのは、記憶装置20が、1つ以上の機械的記憶ドライブ(たとえば、1つ以上の磁気ハードディスクユニットおよび光ディスクユニット)として実装される場合である。そのようなドライブは、物理的媒体(たとえば磁化可能な磁気層内の磁区)に記憶されたデータにアクセス可能、および/またはかかる媒体にデータを書込可能な、特定の最大ビットレートBRmaxを有する。さらに、記憶装置のタイプが異なると、この最大ビットレートBRmaxも異なる。加えて、これらのドライブはそれぞれ、動作中に損失する対応の最小エネルギー閾値電力Pminを有する。閾値電力Pminはたとえば、1種類以上の機械的駆動および光学的励起を包含する。機械的駆動は、磁気または光ディスクを、対応の読出/書込ヘッドに対して回転させるための電気モーターを包含している。同様に、光学的励起は、固体レーザーに、安定した書込および/または読出用のレーザー動作を行わせるためのレーザー電流や、光検出器の増幅器バイアス電流を包含している。最小電力Pminは、ドライブにより出力されるまたは受信され得るデータビットレートには、ほとんど依存しない。
一般に、かかるドライブを、より高いビットレートで機能するように変更すると、最小電力Pminは増分させられる。この増分は、たとえば、実質的に以下の式1で表されるような増分となる。
Figure 2007503042
ここで、Pdriveは動作中のドライブにより消費される電力であり、Kは比例係数である。
いくつかの特定のタイプのドライブについては、ドライブにより消費される電力Pdriveは、式1に示されているような線形関数ではなく、最大ビットレートBRmaxのより高次の関数となるかもしれない。さらに、いくつかの特定のタイプのドライブは、起動のため、対応の電力消費を伴ういくらかの初期時間を必要とする。たとえば、光ディスクドライブは、光ディスクからの安定したデータ取出しおよび/または光ディスクへの信頼性の高いデータ書込みに適した角速度まで、その光ディスクを加速するための時間を要する、電気モーターを含む。一定動作のため実質的に式1で表された動作を行う独自のドライブの例としては、固体青色レーザー技術に基づいた、フィリップス独自の「ポータブル・ブルー」ドライブが挙げられる。このドライブは、「ブルーレイ」光ドライブ構成の小型版であり、毎秒30メガビット(30Mbps)の最大読出ビットレートを発揮することができる。かかる読出レートは、デコーダ等の多くの電子機器の処理能力よりも高速である。
上記のようなドライブの動作はまた、コンピュータのハードウェア上で実行状態にあり、かつ1つ以上の上記のようなドライブにアクセスするように動作可能な、図1中のアプリケーション群40に対応する1つ以上のソフトウェアアプリケーションと併せて考えることができる。それらのアプリケーションが、ドライブ中のデータにランダムアクセスするためおよび/またはドライブにデータをランダムに書き込むために、1つ以上のドライブとやりとりを行う際(すなわち、構成10の第1の動作モードの際)、その1つ以上のドライブは、絶対必要な程度を超えてアプリケーションを遅延させることがないよう、最大速度(すなわち最大ビットレートBRmax)で動作させられるのが有利である。そのような第1の動作モードでは、バッファ30の導入は、構成10内で生じる電力損失を低減させることができない。
これに対して、第2の動作モードでは、1つ以上のアプリケーションは、「ストリーミング」形式で、1つ以上のドライブへのアクセスを要求し得る。この「ストリーミング」形式では、1つ以上のドライブからのデータの読出しおよび/または1つ以上のドライブへのデータの書込みの平均レートは、最大ビットレートBRmaxよりも低い。本発明は、この第2の動作モードに特に関係する。これは、第2の動作モードにおいては、バッファ30の導入が、構成10内で生じる電力損失の低減を可能とするためである。
ドライブが「ストリーミング」形式で使用される実例は、最近のDVD(Digital Video Disc)装置やCD(Compact Disc)装置といった、オーディオビジュアル機器の内にある。オーディオ再生においては、平均の「ストリーミング」データレートとして、毎秒128から1440キロビット(kbps)の範囲内にあるレートが生じる場合が多い。同様に、ビデオ再生では、平均の「ストリーミング」データレートとして、384kbps以上のレートが生じることが多い。
本発明の発明者は、構成10がストリーミング形式で動作させられる場合には、連続動作させられている記憶装置20が、1つ以上のアプリケーションからの最大ビットレートを提供することを、バッファ30の導入が防止すると理解した。換言すれば、バッファ30を組み込むことにより、装置20が、以下の式2で与えられるデューティーサイクルDを有するスタート/ストップの反復動作で機能することが可能とされる。
Figure 2007503042
ここで、TONは、ストリーミング中において装置20が最大ビットレートBRmaxで動作している際の、装置20の平均の時間周期であり、TOFFは、ストリーミング中において装置20がパワーダウン状態で動作している際の、装置20の平均の時間周期である。
したがって、バッファ30がデータ受信および/または装置20へのデータ出力を行うビットレートのピーク値はBRmaxであり、一方、装置20へのデータ出力および/または装置20からのデータ出力の平均レートBRavrは、
Figure 2007503042
で与えられる。ここで、各ON期間の最初の起動期間におけるエネルギー損失を無視すれば、平均電力消費量Pavrは、
Figure 2007503042
により近似計算することができる。なお、Poffは、OFF状態にある装置20内で生じるスタンバイ電力損失である。
装置20が、常に平均ビットレートBRavrで動作し、常にこのレートでデータ付与および/またはデータ受信を行うように設計されていれば、式1より、等価な電力損失Peqは、
Figure 2007503042
より計算することができる。
上記の第2の動作モードに関して言えば、本発明は、スタート/ストップ動作モードに基づく、式4より得られる電力Pavrに依存している。この電力Pavrは、アプリケーション40へおよび/またはアプリケーション40からの、バッファ30を通るデータのストリーミングの間において、常に平均ビットレートBRavrで動作するように設計された装置20に対する電力Peqよりも小さい。換言すると、本発明は、Pavr<Peqということに依存している。
本発明はさらに、上記の式4が、各ON期間TONの開始時における当初の電力損失Pstartを無視した近似式であるという、発明者の理解に基づいている。装置内の平均電力使用量Pavrをより精確に示す値は、
Figure 2007503042
により与えられる。
式6は、図2に見られる電力曲線の形態を記述した式である。ここで、このグラフを参照番号100で示す。グラフ100は、バッファ30のサイズを示す横軸110と、装置20内で生じる電力損失を示す縦軸120とを含んでいる。装置20内で生じる電力消費量と比較すれば副次的な影響のものであるが、バッファ30の大きなサイズは、それに付随したより高い電力消費量を有するので、実際には、もう少し複雑なモデルが適している。電力曲線130は、装置20からおよび/または装置20への平均ビットレートBavrが毎秒512キロビットである場合に対応する。曲線130より、構成10内の電力損失は、バッファ30のサイズが2メガビット(Mb)未満に減ると急速に増大することが見て取れる。2Mbpsより上では、電力消費量は、Pasで示す最小電力消費量に向かって漸近するように減少する。
構成10中では、実用上の理由(たとえば、構成20が安価な大量生産の民生品に対応するものである場合におけるコストの考慮)から、バッファ30のサイズは有限でなくてはならない。一方、バッファ30のサイズは、構成10に与えられた電力予算に適合するように選択されることが有利である。かかるバッファサイズの選択については、後で図5を参照しながらより詳細に説明する。さらに一方で、本発明の発明者は、バッファサイズと、構成10内において生じる電力損失との間の妥協点に到達する手法としては、いくつかの選択肢があることを理解した。かかる選択肢の例としては、たとえば以下が挙げられる。
(a)漸近値Pasに特定の割合を掛け合わせた値(たとえば値Pasの1.3倍)に、妥協点を選択設定することができる。
(b)曲線130が値Pasに実質的に類似している点に、妥協点を選択設定することができる。
本発明の発明者はさらに、構成10がマルチアプリケーション環境に対応する場合(すなわち、図1中のアプリケーション群40が、同時に実行される複数のソフトウェアアプリケーションに対応し、それら複数のアプリケーションの各々が、バッファ30を介して装置20にアクセスしようとする場合)には、曲線130は過度に単純化されたモデルであると理解した。かかるマルチアプリケーション環境では、複数のアプリケーションが、互いに異なる平均ビットレートで装置20にアクセスするように動作可能であるので、最適なバッファサイズの計算はさらに複雑となる。前述のとおり、バッファ30自体がかなりのコストを要するものであり、バッファ30をあまりに大きなサイズに構成することは不経済であるが、バッファ30をあまりに小さく構成すると、構成10内で複数のアプリケーションが実行される場合に、バッファ30の飽和が生じる。
そのため、本発明の発明者は、1からnの記号で示され、記憶装置へのアクセスに関し互いに異なるビットレート要求と関連付けられている、複数のソフトウェアアプリケーション(1からnで示す)を実行する構成は、最適バッファサイズ(たとえばB、B、・・・B)を有する仲介バッファを付与され、記憶装置の電力損失へのそれらの対応する寄与分P、P、・・・Pは、それらのアプリケーションの要求に応えるのに必要な全体のバッファサイズという観点、および記憶装置20内の電力損失を最適化するという観点から、それぞれ個別に計算することができることを理解した。本発明の内容をさらに明らかにするため、以下、図3について説明する。
図3には、図1に示した構成10と同様の、装置20と、バッファ30と、アプリケーション群40とを含む構成が示されている。この構成200は、装置20と、バッファ30と、アプリケーション群40が実行されるコンピュータハードウェアとに接続された、バッファ管理ユニット210をさらに含んでいる。ユニット210は、装置20内で生じる電力損失の低減を試みるよう、アプリケーション群40をなす各アプリケーションに割り当てられるバッファ30の領域サイズを管理するように動作可能である。
ユニット210は、アプリケーション群40をなす各アプリケーションに必要なバッファ30のサイズを動的に計算し、アプリケーションと装置20との間のストリーミングデータの通信開始に先立って、かかる通信用にバッファの割当分を割り当てるように動作可能とされている。したがって、ストリーミングのためにアプリケーション群40をなす各アプリケーションに割り当てられたバッファ30の割当分は、そのアプリケーションのデータレートが一定という前提のもとでは好ましくは不変のままである。たとえばアプリケーション自身の要求等によって、アプリケーションのデータレートが変更された場合には、ユニット210は、好ましくは、バッファ30の適切な割当分を再計算し、この割当分をそのアプリケーションに再割当てするように動作可能とされる。バッファ30の適切な割当てを決定するため、ユニット210は、(a)アプリケーションのビットレートと、(b)装置20の所望の電力損失とを、主パラメータとして用いている。
本発明によれば、これらの主パラメータを用いることによって、所望のデータストリーミングの目的に合わせてバッファ30のサイズをよりよく最適化する、バッファ30の動的な管理のための解決策を提供することが容易となる。そのような動的な管理は、装置20から読み出されるデータと、装置20に書き込まれるデータとの両方に関係する。さらに、多くの記憶装置は、装置20からのデータの読出レート、および装置20へのデータの書込レートとして、互いに異なるレートを示す点を理解されたい。装置20内におけるそのような読出/書込速度の違いは、動作中の装置20内において、互いに異なる電力損失が生じるという結果を招きやすい。
以下、管理ユニット210の動作をさらに明らかにするため、図4を説明する。
図4には、全体が参照番号300で示されたグラフが示されている。このグラフ300は、バッファ30のメモリ容量を表す横軸310と、装置20内で生じる電力損失を示す縦軸320とを含んでいる。グラフ300は、バッファ30のサイズと、それに付随する装置20内における電力損失との関係を、バッファを通る平均データストリーミングレート(UDR)のいくつかの互いに異なる値(具体的には、毎秒128キロビット(kbps)、512kbps、毎秒1メガビット(Mbps)、および1.44Mbps)に対して示している。
図4からは、グラフの各曲線が、概して、バッファサイズが増大するにつれて減少する漸近的な形状を有することが見て取れる。各曲線には、それに付随する漸近値がある。たとえば、128kbpsのデータレートに対する曲線は、10mWのオーダーの漸近値Pasを有する。さらに、例示的な電力限界値Pasl(具体的には16mW)を実現するためには、バッファ30の、Bビット(具体的には、たとえば1.3メガビット)の容量を有する割当分を提供する必要がある。この例では、電力限界値Paslは、漸近値Pasに、ある割合を掛け合わせた値(たとえば、Pasl=1.6×Pas)として表される。掛け合わせる割合としては、後でより詳しく説明するように、他の例示的な割合も可能である。
構成200内においては、コンピュータハードウェアは、バッファ30の対応割当分を必要とする、「n」個のソフトウェアアプリケーションを同時に実行する。これらバッファ30の対応割当分は、BからBのサイズを有する。「n」個のアプリケーションそれぞれについてのバッファ30の使用は、装置20内において、対応の電力損失PからPをもたらす。構成200の単純なモデルにおいては、個々の電力損失PからPの総和は、構成200内において生じる電力損失の合計値Psumのごく近似的な指標を、以下の式7のように与える。
Figure 2007503042
しかしながら、実際には、同時に実行状態にある複数のアプリケーションについての、装置20内で生じる損失の合計値の計算は、式7に表した計算よりもずっと複雑なものである。
そのため、管理ユニット210には、構成200のある電力モデルが与えられる。このモデルは、アプリケーションのデータレートRの要求に応えるのに必要なバッファ30の最適な割当分(具体的にはBopt)を計算するために、ユニット210により必要とされる。この電力モデルは、好ましくは、データレートRを入力パラメータとして受け取るように構成されて、管理ユニット210で実行されるソフトウェア内に埋め込まれた、数学的な関数の形態で実装される。これに代えて、またはこれに加えて、電力モデルを、構成200の当初の設計時に準備された、予め計算された表として実装することもできる。かかる表は、好ましくは、レートRの特定の値に対応する最適バッファサイズBoptの、複数の値を含むものとされる。これらの複数個の値は、好適な離散値、および/または範囲を有する値とされ得る。さらに好ましくは、上記のような電力モデルは、装置20自体の中に存在していてもよいし、かつ/またはアプリケーション群40が実行されるコンピュータハードウェア内に存在していてもよい。有利な形態では、管理ユニット210は、上記のコンピュータハードウェア上で実行される、別の特別なソフトウェアアプリケーションとして提供されることも可能である。
装置20上におけるデータレートの要求と特性とが予め分かっていないソフトウェアアプリケーションを実行するように構成された構成200では、様々なデータレートの要求Rに対する装置20内における合計の電力損失をモニタリングし、電力損失を低減するようにバッファ容量の割当てを反復的に行う人工知能のニューラルネットワークとして、管理ユニット210を実装することも可能である。好ましくは、そのようなニューラルネットワークは、ソフトウェア内に実装され、全体の電力損失を低減するため最適なバッファ割当てを反復する際に使用するのに、ほぼ適切なバッファサイズを与えられる。
アプリケーションの特定のデータレートに対する最適なバッファサイズBoptの計算は、装置20を動作させるのに採用されているファイルシステムと緊密に実行を行う、ソフトウェアによる決定プロセス中に実装されてもよい。そのような構成では、好ましくは、上記のコンピュータハードウェア上で実行されているアプリケーション群40のうちの1つ以上のソフトウェアアプリケーションは、装置20へのアクセスがストリーミング条件のアクセスであるか否かを示す情報を、上記の決定プロセスへと送り、アプリケーション群40内の付随するアプリケーションが装置20にアクセスする際に望ましい1つ以上のデータレートを、宣言するように動作可能とされる。決定プロセスは、上記の電力モデルを用いて最適なバッファサイズBoptを計算し、バッファ30の適切な割当分を割り当てる。好ましくは、1つ以上のソフトウェアアプリケーションと、装置20との双方が、バッファ30の割り当てられた割当分に対応するバッファメモリのアドレスに関する情報を受け取る。
ここで、1つの問題は、上記の決定プロセスがどのように機能するかである。装置20内で生じる電力損失の最適化という問題は、いくつかの手法で解決することができる。有利な形態では、この決定プロセスにより行われる電力計算は、データレートRが変化させられない静的な状態と同一のものとされる。しかしながら、本発明の発明者は、とりわけ好ましいと思われる2つのアプローチ、具体的には、電力予算の観点からの第1のアプローチ、および互いに独立した割当てを行う第2のアプローチを特定した。以下、図5および6を参照して、これら2つのプロセスを、それぞれさらに詳しく説明する。
図5を参照すると、全体が参照番号400で示されたグラフが示されている。このグラフ400は、バッファ30の割当サイズに対応する横軸410を含んでいる。グラフ400はさらに、構成200の装置20内において生じる電力損失に対応する縦軸420を含んでいる。毎秒128キロビット(kbps)、512kbps、毎秒1メガビット(Mbps)、および1.44Mbpsのストリーミングデータレートに対応する、各電力損失曲線が示されている。グラフ400には、Pmaxで表された電力限界値と、128kbps、512kbpsおよび1.44Mbpsのデータレートにおいてこの電力限界値Pmaxに到達するのに必要な、対応のバッファサイズB、B、Bとが示されている。
第1のアプローチでは、損失されてもよいが超えてはならない好適な大きさの電力予算Pmaxが割り当てられる。その後、グラフ400に従って、実行されているアプリケーション群40をなすアプリケーションに対して、対応の最適バッファサイズB、B、Bが計算される。
図6を参照すると、全体が参照番号500で示されたグラフが示されている。図5と同様に、この図6のグラフ500も、バッファ30の割当サイズに対応する横軸510を含んでいる。グラフ500はさらに、構成200の装置20内において生じる電力損失に対応する縦軸520を含んでいる。毎秒128キロビット(kbps)、512kbps、毎秒1メガビット(Mbps)、および1.44Mbpsのストリーミングデータレートに対応する、各電力損失曲線が示されている。
グラフ500の各曲線は、バッファ30のサイズが非常に大きくされた際の対応の電力損失について、漸近値を有している。かかる漸近値を、たとえば128kbps、512kbpsおよび1.44Mbpsのデータレートに対して、それぞれPas1、Pas2、・・・Pasnと表すこととする。第2のアプローチは、対応のバッファサイズB、B、・・・Bを、上記の漸近値に所定割合を掛け合わせた値Pasl1、Pasl2およびPaslnとして選択する工程を含み、これらの所定割合を掛け合わせた値は、図示されているように、200%Pas1、130%Pas2および130%Pasnに、それぞれほぼ等しい。しかしながら、たとえば105%から300%の範囲内にあるような、他の割合を選択してもよい点を理解されたい。さらに図示されているように、必要であれば、異なるデータレートRに対しては、上記の割合を互いに異なる割合としてもよい。
上記の例では、最適なバッファサイズの選択は、ESPバッファを含まない構成200に基づいていた。しかしながら、ESPバッファが含まれる場合にも、本発明に関し上記で説明したのと同様にして、ESPバッファの各割当分をソフトウェアアプリケーションに割り当てることができる。そのようなESPバッファによって与えられる衝撃防止の所与の持続時間に対し、割り当てられるESPバッファのサイズは、処理されているデータレートRの関数とすることができる。
上記において説明した本発明の実施形態は、本発明の範囲から逸脱することなく変更が可能である点を理解されたい。
また、上記においては、「含む」、「備える」、「包含する」、「有する」、「〜である」等の表現を用いたが、これらの表現は本発明を分かりやすく説明する目的のものであって、非限定的に捉えられるべきであり、とりわけ1つまたは複数の追加の項目が存在する可能性を許容すべき表現である。単数への言及は、複数への言及も含むものと捉えられるべきであり、逆に、複数への言及は、単数への言及も含むものと捉えられるべきである。
たとえば磁気および/または光ディスクドライブといった機械的装置と、コンピュータのハードウェア上で実行状態にあるソフトウェアアプリケーションとの間に配されたメモリバッファを含む構成の模式図 バッファを通る送信の平均のストリーミングデータレートが毎秒512キロビット(512kbps)である場合について、メモリバッファ内で生じる電力損失を、バッファサイズの関数として示した第1のグラフ 電力効率のよいバッファの使用を制御するためのバッファ管理ユニットを追加的に含む、図1の構成の模式図 バッファを通る送信の、毎秒128キロビット(128kbps)から毎秒1.44メガビット(1.44Mbps)の範囲内にある様々な平均送信データレートについて、図3のメモリバッファ内における電力損失の変化を、バッファサイズの関数として示した第2のグラフ 図3のメモリバッファ内における電力損失を、バッファサイズの関数として示した第3のグラフであって、様々な平均送信データレートについて、バッファ内で所与の電力損失を実現するのに必要な最小バッファサイズに対応するマークを含む第3のグラフ 図3のメモリバッファ内における電力損失を、バッファサイズの関数として示した第4のグラフであって、ある範囲内の様々な平均送信データレートについて、所定割合が掛け合わされた最小漸近電力損失値に対応するマークと、それに対応するバッファサイズとを含む第4のグラフ

Claims (24)

  1. 計算手段上で実行状態にある1つ以上のソフトウェアアプリケーションと、当該バッファを介して前記1つ以上のアプリケーションと通信状態にある1つ以上のデータ生成および/または受信装置との間において、バッファリングを行うための動的メモリバッファであって、
    前記1つ以上の装置内で生じる電力損失を低減するように、前記1つ以上のアプリケーションに割り当てられる当該バッファの1つ以上の割当分の割当てを制御する、バッファ管理手段を含むことを特徴とする動的メモリバッファ。
  2. 前記管理手段が、前記1つ以上のアプリケーションによって当該バッファに課せられるデータストリーミングレートの要求に応じて、当該バッファの前記1つ以上の割当分の割当てを制御するように動作可能であることを特徴とする請求項1記載の動的メモリバッファ。
  3. 前記管理手段が、前記1つ以上の装置に対する許容可能な最大電力損失の限界値への接近に応じて、当該バッファの前記1つ以上の割当分の割当てを制御するように動作可能であることを特徴とする請求項1または2記載の動的メモリバッファ。
  4. 前記管理手段が、前記1つ以上の装置内における所定割合が掛け合わされた電力損失に応じて、当該バッファの前記1つ以上の割当分の割当てを制御するように動作可能とされており、
    前記所定割合が掛け合わされた電力損失が、実質的に制限のないバッファメモリ容量と関連付けられた前記1つ以上のアプリケーションについて生じる、対応の潜在的な漸近電力損失値に比例することを特徴とする請求項1または2記載の動的メモリバッファ。
  5. 前記所定割合が掛け合わされた電力損失が、対応の潜在的な漸近電力損失値の、105%から300%の範囲内にあることを特徴とする請求項4記載の動的メモリバッファ。
  6. 前記所定割合が掛け合わされた電力損失が、対応の潜在的な漸近電力損失値の、約110%であることを特徴とする請求項5記載の動的メモリバッファ。
  7. 前記管理手段が、前記1つ以上の装置内で損なわれている電力の尺度を導出し、該尺度を用いて当該バッファの前記1つ以上の割当分の割当てを制御することにより、前記1つ以上の装置内で生じる電力損失を反復的に低減するように動作可能な、ニューラルネットワークとして実装されていることを特徴とする請求項1または2記載の動的メモリバッファ。
  8. 前記計算手段上で実行状態にある前記1つ以上のソフトウェアアプリケーションと共に動作している際の、前記計算手段、当該バッファ、および前記1つ以上の装置が、資源が限られたマルチアプリケーションシステムに対応することを特徴とする請求項1から7いずれか1項記載の動的メモリバッファ。
  9. 前記管理手段が、前記計算手段と前記1つ以上の装置との少なくとも一方において実行可能な、ソフトウェア中に実装されていることを特徴とする請求項1から8いずれか1項記載の動的メモリバッファ。
  10. 前記1つ以上のアプリケーションからのデータレートの要求および/または前記1つ以上の装置に対する予め決められた電力損失限界値に応じて、当該バッファの前記1つ以上の割当分を、前記1つ以上のアプリケーションに割り当てるのに用いるため、前記管理手段内に、予め決められたデータアレイが含まれていることを特徴とする請求項9記載の動的メモリバッファ。
  11. 当該バッファの少なくとも一部が、ESP(electronic shock protection)バッファを含んでいることを特徴とする請求項1から10いずれか1項記載の動的メモリバッファ。
  12. 前記装置の少なくとも1つが、データをストリーミングする際に、ストップとスタートとの間で切り換えられるデューティーサイクルのモードで動作するように構成されていることを特徴とする請求項1から11いずれか1項記載の動的メモリバッファ。
  13. 計算手段上で実行状態にある1つ以上のソフトウェアアプリケーションと、動的メモリバッファを介して前記1つ以上のアプリケーションと通信状態にある1つ以上のデータ生成および/または受信装置との間において、バッファリングを行うための前記動的メモリバッファを制御する方法であって、
    前記1つ以上の装置内で生じる電力損失を低減するように、前記1つ以上のアプリケーションに割り当てられる前記バッファの1つ以上の割当分の割当てを制御するバッファ管理手段を、前記バッファが含むようになす工程を含むことを特徴とする方法。
  14. 前記管理手段が、前記1つ以上のアプリケーションによって前記バッファに課せられるデータストリーミングレートの要求に応じて、前記バッファの前記1つ以上の割当分の割当てを制御するように動作可能であることを特徴とする請求項13記載の方法。
  15. 前記管理手段が、前記1つ以上の装置に対する許容可能な最大電力損失の限界値への接近に応じて、前記バッファの前記1つ以上の割当分の割当てを制御するように動作可能であることを特徴とする請求項13または14記載の方法。
  16. 前記管理手段が、前記1つ以上の装置内における所定割合が掛け合わされた電力損失に応じて、前記バッファの前記1つ以上の割当分の割当てを制御するように動作可能とされており、
    前記所定割合が掛け合わされた電力損失が、実質的に制限のないバッファメモリ容量に対して前記1つ以上のアプリケーションについて生じる、対応の潜在的な漸近電力損失値に比例することを特徴とする請求項13または14記載の方法。
  17. 前記所定割合が掛け合わされた電力損失が、対応の潜在的な漸近電力損失値の、105%から300%の範囲内にあることを特徴とする請求項16記載の方法。
  18. 前記所定割合が掛け合わされた電力損失が、対応の潜在的な漸近電力損失値の、約110%であることを特徴とする請求項17記載の方法。
  19. 前記管理手段が、前記1つ以上の装置内で損なわれている電力の尺度を導出し、該尺度を用いて前記バッファの前記1つ以上の割当分の割当てを制御することにより、前記1つ以上の装置内で生じる電力損失を反復的に低減するように動作可能な、ニューラルネットワークとして実装されていることを特徴とする請求項13または14記載の方法。
  20. 前記計算手段上で実行状態にある前記1つ以上のソフトウェアアプリケーションと共に動作している際の、前記計算手段、前記バッファ、および前記1つ以上の装置が、資源が限られたマルチアプリケーションシステムに対応することを特徴とする請求項13から19いずれか1項記載の方法。
  21. 前記管理手段が、前記計算手段と前記1つ以上の装置との少なくとも一方において実行可能な、ソフトウェア中に実装されていることを特徴とする請求項13から20いずれか1項記載の方法。
  22. 前記1つ以上のアプリケーションからのデータレートの要求および/または前記1つ以上の装置に対する予め決められた電力損失限界値に応じて、前記バッファの前記1つ以上の割当分を、前記1つ以上のアプリケーションに割り当てるのに用いるため、前記管理手段内に、予め決められたデータアレイが含まれていることを特徴とする請求項21記載の方法。
  23. 前記バッファの少なくとも一部が、ESPバッファを含んでいることを特徴とする請求項13から22いずれか1項記載の方法。
  24. 前記装置の少なくとも1つが、データをストリーミングする際に、ストップとスタートとの間で切り換えられるデューティーサイクルのモードで動作するように構成されていることを特徴とする請求項13から23いずれか1項記載の方法。
JP2006523725A 2003-08-20 2004-08-05 動的メモリバッファ Pending JP2007503042A (ja)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
EP03102599 2003-08-20
PCT/IB2004/051405 WO2005020062A1 (en) 2003-08-20 2004-08-05 Dynamic memory buffer

Publications (1)

Publication Number Publication Date
JP2007503042A true JP2007503042A (ja) 2007-02-15

Family

ID=34203231

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2006523725A Pending JP2007503042A (ja) 2003-08-20 2004-08-05 動的メモリバッファ

Country Status (6)

Country Link
US (1) US7231340B2 (ja)
EP (1) EP1658554A1 (ja)
JP (1) JP2007503042A (ja)
KR (1) KR20060066097A (ja)
CN (1) CN1839369A (ja)
WO (1) WO2005020062A1 (ja)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2013538411A (ja) * 2010-09-30 2013-10-10 インテル コーポレイション ストレージドライブの管理

Families Citing this family (20)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7319860B2 (en) * 2002-11-07 2008-01-15 Research In Motion Limited Pseudo-interactive input processing in wireless environments
WO2006062270A1 (en) * 2004-12-08 2006-06-15 Electronics And Telecommunications Research Institute Power management method for platform and that platform
JP2008542904A (ja) 2005-06-09 2008-11-27 エヌエックスピー ビー ヴィ ネットワークとメモリとを結合するメモリコントローラ及び方法
US7640381B1 (en) * 2005-10-07 2009-12-29 Ji Zhang Input/output decoupling system method having a cache for exchanging data between non-volatile storage and plurality of clients having asynchronous transfers
WO2007072287A2 (en) * 2005-12-20 2007-06-28 Koninklijke Philips Electronics N.V. Method of controlling disk accesses between a hard-disk drive and a number of stream buffers
WO2007107938A1 (en) * 2006-03-22 2007-09-27 Koninklijke Philips Electronics N.V. A device and a method for saving energy by sharing a buffer
US7613848B2 (en) * 2006-06-13 2009-11-03 International Business Machines Corporation Dynamic stabilization for a stream processing system
CN101479686A (zh) 2006-06-27 2009-07-08 皇家飞利浦电子股份有限公司 用于管理多个数据处理单元的功率消耗的设备和方法
US8156353B2 (en) * 2007-09-17 2012-04-10 Intel Corporation Techniques for communications power management based on system states
TWI368845B (en) * 2008-12-02 2012-07-21 Ite Tech Inc Multimedia palying method and apparatus thereof
JP6127552B2 (ja) 2013-02-07 2017-05-17 株式会社リコー 情報処理装置
CN103501458B (zh) * 2013-10-17 2017-04-12 上海龙晶科技有限公司 实现解复用系统的片外动态存储器的数据存储和传输方法
KR20150051056A (ko) * 2013-11-01 2015-05-11 에스케이하이닉스 주식회사 반도체 장치 및 그 동작 방법
USRE49652E1 (en) 2013-12-16 2023-09-12 Qualcomm Incorporated Power saving techniques in computing devices
KR102525295B1 (ko) 2016-01-06 2023-04-25 삼성전자주식회사 데이터 관리 방법 및 장치
CN107204198B (zh) * 2016-03-18 2020-06-09 深圳市中兴微电子技术有限公司 高速访问双倍速率同步动态随机存储器的控制方法及装置
US10761590B1 (en) * 2017-09-15 2020-09-01 Seagate Technology Llc Data storage performance scaling based on external energy
US11307796B2 (en) * 2018-09-27 2022-04-19 International Business Machines Corporation Mapping memory allocation requests using various memory attributes
WO2022212217A1 (en) 2021-04-01 2022-10-06 Mythic, Inc. Systems and methods for enhancing inferential accuracy of an artificial neural network during training on a mixed-signal integrated circuit
WO2022216609A1 (en) * 2021-04-05 2022-10-13 Mythic, Inc. Systems and methods for intelligent graph-based buffer sizing for a mixed-signal integrated circuit

Family Cites Families (13)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4258418A (en) * 1978-12-28 1981-03-24 International Business Machines Corporation Variable capacity data buffer system
US5179662A (en) * 1989-08-31 1993-01-12 International Business Machines Corporation Optimized i/o buffers having the ability to increase or decrease in size to meet system requirements
TW226057B (ja) * 1991-12-23 1994-07-01 Philips Nv
US5423046A (en) * 1992-12-17 1995-06-06 International Business Machines Corporation High capacity data storage system using disk array
US5797042A (en) * 1995-03-16 1998-08-18 Intel Corporation Method and apparatus for adjusting the buffering characteristic in the pipeline of a data transfer system
GB9615279D0 (en) * 1996-07-20 1996-09-04 Philips Electronics Nv Method and apparatus for reading data from a disc carrier
US5951658A (en) * 1997-09-25 1999-09-14 International Business Machines Corporation System for dynamic allocation of I/O buffers for VSAM access method based upon intended record access where performance information regarding access is stored in memory
JPH11273243A (ja) * 1998-03-20 1999-10-08 Toshiba Corp ディスク装置及び同装置に適用されるライトバッファ制御方法
US6167524A (en) * 1998-04-06 2000-12-26 International Business Machines Corporation Apparatus and method for efficient battery utilization in portable personal computers
US6678813B1 (en) * 1999-10-28 2004-01-13 Hewlett-Packard Development Company, L.P. Dynamically adaptive buffer mechanism
US6683889B1 (en) * 1999-11-15 2004-01-27 Siemens Information & Communication Networks, Inc. Apparatus and method for adaptive jitter buffers
KR100519611B1 (ko) * 2002-10-25 2005-10-10 학교법인 한양학원 저전력 데이터 재생 방법 및 장치
US7587532B2 (en) * 2005-01-31 2009-09-08 Texas Instruments Incorporated Full/selector output from one of plural flag generation count outputs

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2013538411A (ja) * 2010-09-30 2013-10-10 インテル コーポレイション ストレージドライブの管理
US9507402B2 (en) 2010-09-30 2016-11-29 Intel Corporation Monitoring transaction requests using a policy engine within a storage drive driver to change power capability and latency settings for a storage drive

Also Published As

Publication number Publication date
US7231340B2 (en) 2007-06-12
KR20060066097A (ko) 2006-06-15
US20060195706A1 (en) 2006-08-31
WO2005020062A1 (en) 2005-03-03
EP1658554A1 (en) 2006-05-24
CN1839369A (zh) 2006-09-27

Similar Documents

Publication Publication Date Title
JP2007503042A (ja) 動的メモリバッファ
JP5336390B2 (ja) リンク式シェル
US8584133B2 (en) Dynamic performance and resource management in a processing system
US7334144B1 (en) Host-based power savings method and apparatus
KR101443418B1 (ko) 파워 할당 관리 방법 및 시스템
JP2009543217A (ja) 無線記憶デバイスに関する電力管理のためのシステムおよび方法
JP2010102715A (ja) ディスクベースのファイルシステムのための大きなブロック割当て
JP4564966B2 (ja) 電力節約方法及びシステム
JP4992835B2 (ja) ディスク記憶装置およびプログラム
US7283443B2 (en) Power saving method for portable streaming devices
US7774632B2 (en) Adaptive power management method in portable electronic device
JP2004334459A (ja) 記録再生装置、記録再生方法、および記録再生プログラム
US8094525B2 (en) Information recording method and information recording apparatus
JP2009500771A (ja) 記録媒体動作時のパワーマネジメント
US20090287792A1 (en) Method of providing service relating to content stored in portable storage device and apparatus therefor
CN111290701B (zh) 数据读写控制方法、装置、介质和电子设备
KR100673093B1 (ko) 휴대형 멀티미디어 재생기에서 다중 파일 캐싱을 이용한리얼타임 멀티미디어 파일 재생 방법
JP4709857B2 (ja) 情報処理装置
JP2007180693A (ja) 映像信号記録装置
JP2014175954A (ja) データ記録装置、その制御方法及びコンピュータプログラム
JP2007048366A (ja) ディスク装置
KR20090021029A (ko) 스토리지 디바이스 및 그 구동방법
JP2022088106A (ja) ストレージシステム
WO2007072287A2 (en) Method of controlling disk accesses between a hard-disk drive and a number of stream buffers
JP2001256168A (ja) Usbデバイス

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20070803

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20100325

A02 Decision of refusal

Free format text: JAPANESE INTERMEDIATE CODE: A02

Effective date: 20100902