(57)【要約】温度センサーがマルチコアプロセッサの温度を検知し得る。マルチコアプロセッサの温度がマルチコアプロセッサのための温度しきい値を超えたことに応じて、マルチコアプロセッサのクロック速度を低減することなしにマルチコアプロセッサの１つまたは複数のビジープロセッサコアが電力コラプスされ得る。
2016534423.tif 000002
【特許請求の範囲】
【請求項１】
マルチコアプロセッサを熱緩和するための方法であって、
マルチコアプロセッサの温度が温度しきい値を超えたことに応じて、前記マルチコアプロセッサのクロック速度を低減することなしに前記マルチコアプロセッサの１つまたは複数のビジープロセッサコアを電力コラプスさせること
を備える、方法。
【請求項２】
前記マルチコアプロセッサのコアの間で、交代で電力コラプスさせるべき前記マルチコアプロセッサの前記１つまたは複数のビジープロセッサコアを決定すること
をさらに備える、請求項１に記載の方法。
【請求項３】
前記マルチコアプロセッサの前記１つまたは複数のビジープロセッサコアの電力漏れ特性に基づいて、電力コラプスさせるべき前記マルチコアプロセッサの前記１つまたは複数のビジープロセッサコアを決定すること
をさらに備える、請求項１に記載の方法。
【請求項４】
前記マルチコアプロセッサの前記１つまたは複数のビジープロセッサコアのクールダウン速度に基づいて、電力コラプスさせるべき前記マルチコアプロセッサの前記１つまたは複数のビジープロセッサコアを決定すること
をさらに備える、請求項１に記載の方法。
【請求項５】
前記温度しきい値が緊急温度しきい値よりも小さい、請求項１に記載の方法。
【請求項６】
前記マルチコアプロセッサの１つまたは複数のビジープロセッサコアを電力コラプスさせることは、
シーケンサで、前記１つまたは複数のビジープロセッサコアが処理すべき命令をスケジュールしないと決定すること
をさらに備える、請求項１に記載の方法。
【請求項７】
１つまたは複数のビジープロセッサコアを電力コラプスさせることが、
前記１つまたは複数のビジープロセッサコアに関連する１つまたは複数のキャッシュを電力コラプスさせること
をさらに備える、請求項１に記載の方法。
【請求項８】
前記マルチコアプロセッサの前記温度を検知すること
をさらに備える、請求項１に記載の方法。
【請求項９】
マルチコアプロセッサと、
前記マルチコアプロセッサの温度が温度しきい値を超えたことに応じて、前記マルチコアプロセッサのクロック速度を低減することなしに前記マルチコアプロセッサの１つまたは複数のビジープロセッサコアを電力コラプスさせるように構成された電力制御モジュールと
を備える装置。
【請求項１０】
前記電力制御モジュールが、前記マルチコアプロセッサのコアの間で、交代で電力コラプスさせるべき前記マルチコアプロセッサの前記１つまたは複数のビジープロセッサコアを決定するようにさらに構成された、請求項９に記載の装置。
【請求項１１】
前記電力制御モジュールが、前記マルチコアプロセッサの前記１つまたは複数のビジープロセッサコアの電力漏れ特性に基づいて、電力コラプスさせるべき前記マルチコアプロセッサの前記１つまたは複数のビジープロセッサコアを決定するようにさらに構成された、請求項９に記載の装置。
【請求項１２】
前記電力制御モジュールが、前記マルチコアプロセッサの前記１つまたは複数のビジープロセッサコアのクールダウン速度に基づいて、電力コラプスさせるべき前記マルチコアプロセッサの前記１つまたは複数のビジープロセッサコアを決定するようにさらに構成された、請求項９に記載の装置。
【請求項１３】
前記温度しきい値が緊急温度しきい値よりも小さい、請求項９に記載の装置。
【請求項１４】
前記１つまたは複数のビジープロセッサコアが処理すべき命令をスケジュールしないと決定するように構成されたシーケンサ
をさらに備える、請求項９に記載の装置。
【請求項１５】
１つまたは複数のビジープロセッサコアを電力コラプスさせることが、
前記１つまたは複数のビジープロセッサコアに関連する１つまたは複数のキャッシュを電力コラプスさせること
をさらに備える、請求項９に記載の装置。
【請求項１６】
前記マルチコアプロセッサの前記温度を検知するように構成された温度センサー
をさらに備える、請求項９に記載の装置。
【請求項１７】
マルチコアプロセッサの温度を検知するための手段と、
前記マルチコアプロセッサの前記温度を検知するための前記手段によって検知された前記マルチコアプロセッサの温度が温度しきい値を超えたことに応じて、前記マルチコアプロセッサのクロック速度を低減することなしに前記マルチコアプロセッサの１つまたは複数のビジープロセッサコアを電力コラプスさせるための手段と
を備える装置。
【請求項１８】
前記マルチコアプロセッサのコアの間で、交代で電力コラプスさせるべき前記マルチコアプロセッサの前記１つまたは複数のビジープロセッサコアを決定するための手段
をさらに備える、請求項１７に記載の装置。
【請求項１９】
前記マルチコアプロセッサの前記１つまたは複数のビジープロセッサコアの電力漏れ特性に基づいて、電力コラプスさせるべき前記マルチコアプロセッサの前記１つまたは複数のビジープロセッサコアを決定するための手段
をさらに備える、請求項１７に記載の装置。
【請求項２０】
前記マルチコアプロセッサの前記１つまたは複数のビジープロセッサコアのクールダウン速度に基づいて、電力コラプスさせるべき前記マルチコアプロセッサの前記１つまたは複数のビジープロセッサコアを決定するための手段
をさらに備える、請求項１７に記載の装置。
【請求項２１】
前記温度しきい値が緊急温度しきい値よりも小さい、請求項１７に記載の装置。
【請求項２２】
前記マルチコアプロセッサの１つまたは複数のビジープロセッサコアを電力コラプスさせるための前記手段が、
前記１つまたは複数のビジープロセッサコアが処理すべき命令をスケジュールしないと決定するための手段
をさらに備える、請求項１７に記載の装置。
【請求項２３】
１つまたは複数のビジープロセッサコアを電力コラプスさせるための前記手段が、
前記１つまたは複数のビジープロセッサコアに関連する１つまたは複数のキャッシュを電力コラプスさせるための手段
をさらに備える、請求項１７に記載の装置。
【請求項２４】
実行されたとき、１つまたは複数のプログラマブルプロセッサに、
マルチコアプロセッサの温度が温度しきい値を超えたことに応じて、前記マルチコアプロセッサのクロック速度を低減することなしに前記マルチコアプロセッサの１つまたは複数のビジープロセッサコアを電力コラプスさせること
を行わせる命令を記憶するコンピュータ可読記憶媒体。
【請求項２５】
前記命令が、前記１つまたは複数のプログラマブルプロセッサに、
前記マルチコアプロセッサのコアの間で、交代で電力コラプスさせるべき前記マルチコアプロセッサの前記１つまたは複数のビジープロセッサコアを決定すること
をさらに行わせる、請求項２４に記載のコンピュータ可読記憶媒体。
【請求項２６】
前記命令が、前記１つまたは複数のプログラマブルプロセッサに、
前記マルチコアプロセッサの前記１つまたは複数のビジープロセッサコアの電力漏れ特性に基づいて、電力コラプスさせるべき前記マルチコアプロセッサの前記１つまたは複数のビジープロセッサコアを決定すること
をさらに行わせる、請求項２４に記載のコンピュータ可読記憶媒体。
【請求項２７】
前記命令が、前記１つまたは複数のプログラマブルプロセッサに、
前記マルチコアプロセッサの前記１つまたは複数のビジープロセッサコアのクールダウン速度に基づいて、電力コラプスさせるべき前記マルチコアプロセッサの前記１つまたは複数のビジープロセッサコアを決定すること
をさらに行わせる、請求項２４に記載のコンピュータ可読記憶媒体。
【請求項２８】
前記温度しきい値が緊急温度しきい値よりも小さい、請求項２４に記載のコンピュータ可読記憶媒体。
【請求項２９】
前記命令は、前記１つまたは複数のプログラマブルプロセッサに、
シーケンサで、前記１つまたは複数のビジープロセッサコアが処理すべき命令をスケジュールしないと決定すること
をさらに行わせる、請求項２４に記載のコンピュータ可読記憶媒体。
【請求項３０】
前記命令が、前記１つまたは複数のプログラマブルプロセッサに、
前記１つまたは複数のビジープロセッサコアに関連する１つまたは複数のキャッシュを電力コラプスさせること
をさらに行わせる、請求項２４に記載のコンピュータ可読記憶媒体。
【発明の詳細な説明】
【技術分野】
【０００１】
[0001]本開示は、マルチコアプロセッサのための温度管理に関する。
【背景技術】
【０００２】
[0002]マルチコアグラフィックス処理ユニット（ＧＰＵ）またはマルチコア中央処理ユニット（ＣＰＵ）などのマルチコアプロセッサは、使用中に、マルチコアプロセッサがコンピュータ命令を処理するにつれて熱を放散し得る。プロセッサコアによって生成される熱は、動的電力放散および静的漏れによって生成される熱を含み得る。動的電力放散は、プロセッサがコンピュータ命令を処理するにつれてプロセッサのトランジスタの充電および放電によって発生される熱であり得、静的漏れは、プロセッサが電源投入されたときに、プロセッサのトランジスタが使用中でないとき（たとえば、プロセッサが、電源投入されたがアイドルであるとき）でも流れるゲート漏れ電流および他の漏れ電流から発生される熱であり得る。マルチコアプロセッサは、それらの熱エンベロープ（thermal envelope）を、またはプロセッサによって許容される最大電力ドローを上回る性能が可能であり得るので、プロセッサが過熱するのを防ぐために熱緩和（thermal mitigation）ストラテジーが実装され得る。
【発明の概要】
【０００３】
[0003]概して、本開示の態様は、それらの熱エンベロープを超えているマルチコアプロセッサの加速された熱緩和のための技法について説明する。それの温度しきい値よりも高い温度を有するマルチコアプロセッサは、クロックおよび／または電圧を変更することなしに１つまたは複数のビジープロセッサコアを電力コラプスさせる（power collapse）ことによって、それの処理能力のより多くを維持しながら、それの温度を温度しきい値未満に急速に戻すことができる。
【０００４】
[0004]一例では、マルチコアプロセッサを熱緩和するための方法は、マルチコアプロセッサの温度が温度しきい値を超えたことに応じて、マルチコアプロセッサのクロック速度を低減することなしにマルチコアプロセッサの１つまたは複数のビジープロセッサコアを電力コラプスさせることを含む。
【０００５】
[0005]別の例では、装置は、マルチコアプロセッサと、マルチコアプロセッサの温度が温度しきい値を超えたことに応じて、マルチコアプロセッサのクロック速度を低減することなしにマルチコアプロセッサの１つまたは複数のビジープロセッサコアを電力コラプスさせることように構成された電力制御モジュールとを含む。
【０００６】
[0006]別の例では、装置は、マルチコアプロセッサの温度を検知するための手段と、マルチコアプロセッサの温度を検知するための手段によって検知されたマルチコアプロセッサの温度が温度しきい値を超えたことに応じて、マルチコアプロセッサのクロック速度を低減することなしにマルチコアプロセッサの１つまたは複数のビジープロセッサコアを電力コラプスさせるための手段とを含む。
【０００７】
[0007]別の例では、コンピュータ可読記憶媒体など、コンピュータ可読媒体は、実行されたとき、１つまたは複数のプログラマブルプロセッサに、マルチコアプロセッサの温度が温度しきい値を超えたことに応じて、マルチコアプロセッサのクロック速度を低減することなしにマルチコアプロセッサの１つまたは複数のビジープロセッサコアを電力コラプスさせる命令を記憶する。
【０００８】
[0008]１つまたは複数の例の詳細が以下の添付の図面および説明に記載されている。他の特徴、目的、および利点は、説明および図面、ならびに特許請求の範囲から明らかになろう。
【図面の簡単な説明】
【０００９】
【図１】[0009]本開示のいくつかの態様による、１つまたは複数のビジーコアが熱緩和のために停止され得る、マルチコアプロセッサを含む例示的なプロセッサユニットを示すブロック図。
【図２】[0010]本開示のいくつかの態様による、マルチコアプロセッサを熱緩和する例示的な方法を示すフローチャート。
【図３Ａ】[0011]本開示の態様による、交代でのマルチコアプロセッサのビジーコアの電力コラプスを示す概念図。
【図３Ｂ】本開示の態様による、交代でのマルチコアプロセッサのビジーコアの電力コラプスを示す概念図。
【図３Ｃ】本開示の態様による、交代でのマルチコアプロセッサのビジーコアの電力コラプスを示す概念図。
【図３Ｄ】本開示の態様による、交代でのマルチコアプロセッサのビジーコアの電力コラプスを示す概念図。
【図４Ａ】[0012]本開示の態様による、インテリジェント交代アルゴリズムによるマルチコアプロセッサのビジーコアの電力コラプスを示す概念図。
【図４Ｂ】本開示の態様による、インテリジェント交代アルゴリズムによるマルチコアプロセッサのビジーコアの電力コラプスを示す概念図。
【図４Ｃ】本開示の態様による、インテリジェント交代アルゴリズムによるマルチコアプロセッサのビジーコアの電力コラプスを示す概念図。
【図４Ｄ】本開示の態様による、インテリジェント交代アルゴリズムによるマルチコアプロセッサのビジーコアの電力コラプスを示す概念図。
【図５】[0013]本開示の１つまたは複数の態様を実装するように構成され得るデバイスの一例を示すブロック図。
【発明を実施するための形態】
【００１０】
[0014]マルチコアプロセッサを熱緩和するためのいくつかの潜在的手法は、プロセッサの温度が温度しきい値を超えたときにプロセッサコアのためのクロックレートと電圧レベルとを低減することを含み得る。プロセッサの温度が通常レベルに戻ると、プロセッサのための元のクロックレートと電圧レベルとが復元され得る。しかしながら、プロセッサのプロセッサコアのためのクロックは、一般に、プロセッサ上のメモリおよびキャッシュなど、プロセッサコア以外のプロセッサの他の構成要素によって使用されるクロックでもあるので、プロセッサのクロックレートを低減することは、これらの構成要素の性能をも低減することになる。さらに、クロックレートと電圧レベルとを低減することは動的電力放散を低減し得るが、そのような手法は、静的漏れによって生じる熱を緩和しない。
【００１１】
[0015]したがって、本開示の態様は、プロセッサのためのクロックレートまたは電圧レベルを低減することなしに、温度しきい値を超えたときにマルチコアプロセッサの１つまたは複数のコアを電力コラプスさせる（すなわち、オフにする）ことを含む。温度しきい値は、それを上回るとプロセッサが熱によって損傷を与えられ得る温度しきい値であり得る、緊急しきい値よりも低いことがある。電力コラプスされるコアは、コアが命令をアクティブに実行しているという点で、ビジーコアであり得る。プロセッサのビジーコアを電力コラプスさせることは、動的電力放散と静的漏れとの両方を低減するとともに、メモリおよびキャッシュなど、プロセッサの他の構成要素が通常の低減されないクロックレートで動作し続けることができるので、クロックレートと電圧レベルとを低減する以前の手法と比較して増加した性能を与える。たとえば、プロセッサのすべての４つのコアが使用中である４コアプロセッサにおいて、４つのコアのうちの２つのみが動作し続けるように、コアのうちの２つを電力コラプスさせることは、プロセッサのクロック速度を５０％だけ低減することよりも良好な性能を与え得る。さらに、上記で説明したように、コアを電力コラプスさせることは、無効にされたコアの動的電力と静的漏れとの両方を低減するので、ビジーコアを電力コラプスさせることは、プロセッサの温度が、クロックレートと電圧とを低減する以前に提案されたソリューションよりもはるかに速く温度しきい値未満に戻るように、プロセッサがより急速に冷却することを可能にし得る。
【００１２】
[0016]図１は、本開示のいくつかの態様による、１つまたは複数のビジーコアが熱緩和のために停止され得る、マルチコアプロセッサを含む例示的なプロセッサユニットを示すブロック図である。図１に示されているように、処理ユニット１０２は複数のプロセッサコア１０４Ａ〜１０４Ｎ（以下「プロセッサコア１０４」）を含み得る。いくつかの例では、プロセッサコア１０４は単一の集積回路ダイ中に含まれ得る。他の例では、プロセッサコア１０４は、単一のチップパッケージ中の複数の集積回路ダイ中に含まれ得る。処理ユニット１０２は複数のプロセッサコア１０４を含むので、処理ユニット１０２はマルチコアマイクロプロセッサであり得る。処理ユニット１０２は、いくつかの例では、実行のためにコンピュータプログラムの命令を処理するように構成された中央処理ユニット（ＣＰＵ）など、マイクロプロセッサであり得るか、またはディスプレイ（図示せず）においてグラフィカルシーンをレンダリングするためのグラフィックス処理命令を処理するように構成されたグラフィックス処理ユニット（ＧＰＵ）であり得る。
【００１３】
[0017]プロセッサコア１０４の各プロセッサコアは、キャッシュ１１２Ａ〜１１２Ｎ（以下「キャッシュ１１２」）のうちの１つまたは複数に関連し得る。いくつかの例では、キャッシュ１１２は、プロセッサコア１０４に第１のレベルのキャッシングを与えるＬ１キャッシュであり得る。処理ユニット１０２はキャッシュ１１４をも含み得る。いくつかの例では、キャッシュ１１４は、プロセッサコア１０４に第２のレベルのキャッシングを与えるＬ２キャッシュであり得る。処理ユニット１０２はまた、メモリ１１６に動作可能に結合され得る。
【００１４】
[0018]シーケンサ１０６は、プロセッサコア１０４の間の命令の実行を管理およびスケジュールするように構成され得る。プロセッサコア１０４中の個々のプロセッサコアは、命令を並列に処理するように構成され得る。プロセッサコア１０４中のあるプロセッサコアが命令を処理しているとき、そのプロセッサコアはビジーと見なされ得る。対照的に、プロセッサコア１０４中のあるプロセッサコアが命令を処理していないとき、そのプロセッサはアイドルと見なされ得る。
【００１５】
[0019]クロック１２０は、処理ユニット１０２の構成要素を調節する指定されたクロック速度で周期クロック信号を生成するように構成され得る。クロック１２０は、処理ユニット１０２に動作可能に結合され得、クロック信号を処理ユニット１０２に送信し得る。処理ユニット１０２は、クロック１２０によって生成されたクロック信号を、プロセッサコア１０４、キャッシュ１１２、およびキャッシュ１１４など、それの構成要素に供給し得る。いくつかの例では、クロック１２０はクロック信号をメモリ１１６にも送信し得る。処理ユニット１０２はメモリ１１６に対してデータの読取りおよび書込みを行い得る。キャッシュ１１２およびキャッシュ１１４は、プロセッサコア１０４のために、メモリ１１６から読み取られたデータと、メモリ１１６に書き込まれるべきデータとをキャッシュし得る。
【００１６】
[0020]本開示の技法によれば、処理ユニット１０２は、処理ユニット１０２の温度が温度しきい値を超えたことに応じて、クロック１２０のクロック速度を低減することなしに、プロセッサコア１０４のうちの１つまたは複数のビジープロセッサコアを電力コラプスさせ得る。温度センサー１１０は、処理ユニット１０２の温度を検知するように構成され得、処理ユニット１０２の温度を連続的に検知し得る。温度センサー１１０は、いくつかの例では、プロセッサコア１０４を備える集積回路ダイの部分の温度、またはプロセッサコア１０４を備えるチップパッケージの部分の温度を検知し得る。温度センサー１１０の例は、温度に基づいて変化する抵抗を有する抵抗器であるサーミスタを含み得る。
【００１７】
[0021]処理ユニット１０２のための温度しきい値は、処理ユニット１０２の所望の性能、処理ユニット１０２の所望の電力消費、および処理ユニット１０２の寿命などの様々なファクタに基づいて指定され得る。たとえば、高性能が望まれる場合は、比較的より高い温度しきい値が指定され得るが、電力節約が望まれる場合は、比較的より低い温度が選定され得る。処理ユニット１０２のための温度しきい値は、処理ユニット１０２の温度が温度しきい値を超えた場合、短期的に処理ユニット１０２の切迫した障害の大きい危険がある、緊急温度しきい値よりも低いことがあり得る。
【００１８】
[0022]処理ユニット１０２は、温度センサー１１０から測定された温度を読み取るかまたはさもなければ受信し得、測定された温度を処理ユニット１０２のための温度しきい値と比較し得る。処理ユニット１０２が、温度センサー１１０からの測定された温度が処理ユニット１０２のための指定された温度しきい値を超えると決定した場合、処理ユニット１０２は、電力制御モジュール１０８が、処理ユニット１０２の温度を下げるためにプロセッサコア１０４のうちの１つまたは複数のビジープロセッサコアを電力コラプスさせることを可能にし得る。
【００１９】
[0023]プロセッサコア１０４のうちの１つまたは複数のプロセッサコアを電力コラプスさせることは、電力制御モジュール１０８が、１つまたは複数のプロセッサコアへの電力、電圧、および／または電流をオフにすること、ならびにクロック信号が１つまたは複数のプロセッサコアに到達するのを防ぐことを含み得る。プロセッサコア１０４のうちの１つまたは複数のプロセッサコアを電力コラプスさせることは、１つまたは複数のプロセッサコアに関連するキャッシュ１１２のうちの１つまたは複数のキャッシュなど、１つまたは複数のプロセッサコアの１つまたは複数の関連する構成要素を電力コラプスさせることをも含み得る。同様に、電力制御モジュール１０８は、１つまたは複数のプロセッサコアに関連するキャッシュ１１２のうちの１つまたは複数のキャッシュへの電力、電圧、および／または電流をオフにし得る。
【００２０】
[0024]処理ユニット１０２のプロセッサコア１０４のうちの１つまたは複数のプロセッサコアを電力コラプスさせるために、処理ユニット１０２は、電力コラプスされるべき１つまたは複数のプロセッサコアの指示をシーケンサ１０６と電力制御モジュール１０８とに通信し得る。シーケンサ１０６は、電力コラプスされるべき１つまたは複数のプロセッサコアに対して追加命令がスケジュールされないように、プロセッサコア１０４を管理し得る。シーケンサ１０６はまた、１つまたは複数のプロセッサコアのスレッドについての状態情報を保存し、１つまたは複数のプロセッサコアのレジスタを保存し、１つまたは複数のプロセッサコアに関連する１つまたは複数のキャッシュをフラッシュし得る。シーケンサ１０６はまた、電力コラプスされるべき１つまたは複数のプロセッサコアがそれらの現在命令を処理し終えたときを決定するために、プロセッサコア１０４を監視し得る。シーケンサ１０６は、電力コラプスされるべき１つまたは複数のプロセッサコアがそれらの現在命令を処理し終えたと決定したことに応じて、シーケンサ１０６がプロセッサコア１０４を準備し終えたという指示を処理ユニット１０２に送り得る。応じて、処理ユニット１０２は、電力制御モジュール１０８が、１つまたは複数のプロセッサコアに関連するキャッシュ１１２のうちの１つまたは複数のキャッシュなど、１つまたは複数のプロセッサコアに関連する処理ユニット１０２の１つまたは複数の構成要素を電力コラプスさせることを含めて、１つまたは複数のプロセッサコアを電力コラプスさせることを可能にし得る。
【００２１】
[0025]プロセッサコア１０４のうちの１つまたは複数のコアが電力コラプスされている間、プロセッサコア１０４のうちの残りのプロセッサコアは計算命令を処理し続け得、温度センサー１１０は処理ユニット１０２の温度を測定し続け得る。処理ユニット１０２は、測定された温度が処理ユニット１０２のための温度しきい値を下回ったかどうかを決定し得、測定された温度が処理ユニット１０２のための温度しきい値未満であることに応じて、電力コラプスされた１つまたは複数のプロセッサコアをオンにし得る。電力制御モジュール１０８は、電力コラプスされた１つまたは複数のプロセッサコアおよびそれの関連する構成要素への電力、電圧、および／または電流をオンにし得、クロック信号が１つまたは複数のプロセッサコアおよびそれの関連する構成要素に到達することから可能にし得る。電力制御モジュール１０８はまた、以前に電力コラプスされた１つまたは複数のプロセッサコアという指示をシーケンサ１０６に送り得、応じて、シーケンサ１０６は、１つまたは複数のプロセッサコアによって処理されるべき計算命令をスケジュールし得る。
【００２２】
[0026]いくつかの例では、処理ユニット１０２はシーケンサ１０６を含まないことがある。たとえば、処理ユニット１０２は、シーケンサ１０６を含まないＣＰＵであり得る。この例では、処理ユニット１０２上で実行しているオペレーティングシステムが、プロセッサコア１０４のうちの１つまたは複数のプロセッサコアが電力コラプスされたかどうかを決定し得、応じて、電力コラプスされた１つまたは複数のプロセッサコアに対して追加命令をスケジュールしないと決定し得る。オペレーティングシステムはまた、電力コラプスされた１つまたは複数のプロセッサコアのスレッドについてのオペレーティングシステム状態を保存し、電力コラプスされた１つまたは複数のプロセッサコアに関連するレジスタのコンテンツを保存し得、電力コラプスされた１つまたは複数のプロセッサコアに関連するキャッシュをフラッシュし得る。
【００２３】
[0027]電力制御モジュール１０８がコラプスさせるプロセッサコア１０４のうちのプロセッサコアの数は、処理速度と、処理ユニット１０２の温度が温度しきい値未満に戻るためにどのくらいの時間がかかるかとの間のトレードオフのバランスをとることに依存し得る。プロセッサコア１０４がＮ個のプロセッサコアを含む場合、電力制御モジュール１０８は、処理ユニット１０２の動作モードおよび熱緩和のレートなどのファクタに基づいて、１〜Ｎ個のどれかのビジーコアを電力コラプスさせ得る。
【００２４】
[0028]処理ユニット１０２は、電力制御モジュール１０８が電力コラプスさせるプロセッサコア１０４のうちのプロセッサコアのセットを交代させることによって、プロセッサコア１０４のビジーコアのうちのどれを電力コラプスさせるべきかを決定し得る。たとえば、プロセッサコア１０４が４つのプロセッサコアを含む場合、および、電力制御モジュール１０８が、処理ユニット１０２の温度を熱緩和するために、処理ユニット１０２の温度が温度しきい値を超えるたびに２つのコアを電力コラプスさせる場合、電力制御モジュール１０８は、処理ユニット１０２の温度が温度しきい値を超えるたびに、２つのビジーコアの２つのセットの各々を交互に電力コラプスさせるために２つのビジーコアの２つのセットを交代させ得る。たとえば、プロセッサコア１０４が８つのプロセッサコアを含む場合、電力制御モジュール１０８は、２つのビジーコアの最も過去に電力コラプスされたセットを電力コラプスさせ得る。
【００２５】
[0029]電力制御モジュール１０８が、それが電力コラプスさせるプロセッサコア１０４のうちのビジーコアのセットを交代させるとき、処理ユニット１０２は、処理ユニット１０２の温度が温度しきい値未満に戻るためにかかる時間を決定し得、処理ユニット１０２の温度が温度しきい値未満に戻る前に経過した時間を、そのときに電力コラプスされていたプロセッサコア１０４のうちのビジーコアのセットと関連付け得る。このようにして、処理ユニット１０２は、処理ユニット１０２の温度が温度しきい値未満に戻るために最小量の時間がかかったときに、ビジーコアのどの１つまたは複数のセットが電力コラプスされていたかを識別し得、処理ユニット１０２は、電力制御モジュール１０８が、処理ユニット１０２の温度が温度しきい値を超えたことに応じて、電力コラプスさせるべきビジーコアの１つまたは複数の識別されたセットを電力コラプスさせることを可能にし得る。
【００２６】
[0030]たとえば、プロセッサコア１０４は８つのコアを含み得、電力制御モジュール１０８は一度に２つのコアのセットを電力コラプスさせ得る。処理ユニット１０２が、電力コラプスされたとき、処理ユニット１０２の温度が温度しきい値未満に冷却するための最も短い経過時間を生じるそれぞれ２つのコアの２つのセットを識別した場合、電力制御モジュール１０８は、処理ユニット１０２の温度が温度しきい値を超えるたびに、コアの２つの識別されたセットを交互に電力コラプスさせ得る。
【００２７】
[0031]処理ユニット１０２はまた、最も多い静的漏れを有するコアが電力コラプスされるために選定され得るように、プロセッサコア１０４のうちのビジープロセッサコアの電力漏れ特性に少なくとも部分的に基づいて、プロセッサコア１０４のビジーコアのうちのどれを決定し得る。たとえば、プロセッサコア１０４が使用中であるときのプロセッサコア１０４の各コアの熱放散と温度とを測定するために、処理ユニット１０２上に追加の温度センサー（図示せず）が配置され得る。プロセッサコア１０４の個々のコアの温度に基づいて、電力制御モジュール１０８は、最も高い温度を有するプロセッサコア１０４のうちのコアを電力コラプスさせ得る。別の例では、技術者または他の人員が、プロセッサコア１０４の製造の後に、プロセッサコア１０４の各コアの静的漏れを測定し得、そのような情報は、プロセッサコアの静的漏れに基づいて、電力制御モジュール１０８が電力コラプスさせるプロセッサコア１０４のうちのビジーコアを選択する際に処理ユニット１０２によって使用され得る。
【００２８】
[0032]プロセッサコア１０４のうちの１つまたは複数のプロセッサコアを電力コラプスさせるために、プロセッサユニット１０２は、電力制御モジュール１０８によって電力コラプスされるべきプロセッサコア１０４のうちのプロセッサコアをシーケンサ１０６に示し得る。応じて、シーケンサ１０６は、電力制御モジュール１０８によってコラプスされるべきプロセッサコア１０４のうちのプロセッサコアが、それらのプロセッサコアによって現在処理されている命令のほかに処理すべき追加命令を受信しないように、プロセッサコア１０４によって実行されるべき命令をスケジュールし得る。
【００２９】
[0033]シーケンサ１０６が、電力制御モジュール１０８によって電力コラプスされるべきプロセッサコア１０４のうちのプロセッサコアがそれらの現在命令を処理し終えたと決定したことに応じて、シーケンサ１０６は、プロセッサコア１０４のうちのそれらのプロセッサコアが電力コラプスされ得るという指示を処理ユニット１０２に送り得る。シーケンサ１０６から指示を受信したことに応じて、処理ユニット１０２は、電力制御モジュール１０８が、電力コラプスさせることを処理ユニット１０２が以前に決定したプロセッサコア１０４のうちのプロセッサコアへの電力を切断することを可能にし得る。
【００３０】
[0034]図２は、本開示のいくつかの態様による、マルチコアプロセッサを熱緩和する例示的な方法を示すフローチャートである。図２に示されているように、マルチコアプロセッサ１０２のプロセッサコア１０４は、ソフトウェアアプリケーションを実行するための命令を処理すること、グラフィカルシーンをレンダリングするためのグラフィックス命令を処理すること、デジタル信号プロセッサのための一連のデータサンプルに関する数学演算を処理することなどでビジーであり得る（２０２）。プロセッサコア１０４が命令を処理するにつれて、プロセッサコア１０４は、動的電力放散によって生成される熱とプロセッサコア１０４の静的漏れからの熱とを含む、熱を放散し得る。
【００３１】
[0035]温度センサー１１０がマルチコアプロセッサ１０２の温度を測定し得、測定された温度を電力制御モジュール１０８に通信し得、電力制御モジュール１０８は、マルチコアプロセッサ１０２の測定された温度がしきい値温度よりも高いかどうかを決定し得る（２０４）。マルチコアプロセッサ１０２の測定された温度がしきい値温度を超えない場合、マルチコアプロセッサ１０２のプロセッサコア１０４は命令を処理し続け得る（２０２）。
【００３２】
[0036]マルチコアプロセッサ１０２の測定された温度がしきい値温度を超える場合、マルチコアプロセッサ１０２はプロセッサコア１０４のうちの１つまたは複数を電力コラプスさせ得る（２０６）。プロセッサコアを電力コラプスさせることは、電力コラプスされたプロセッサコアのためのキャッシュ、テクスチャパイプライン、レンダリングバッファなど、プロセッサコアに関連するサポートハードウェア構成要素を電力コラプスさせることを含み得る。
【００３３】
[0037]処理ユニット１０２は、プロセッサコア１０４のうちのどのプロセッサコアが電力コラプスされるかを決定するために、インテリジェントストラテジーを採用し得る。１つのストラテジーでは、処理ユニット１０２は、処理ユニット１０２の温度がそれの温度しきい値を超えるたびに、電力コラプスされるプロセッサコア１０４のうちのプロセッサコアを交代させ得る。たとえば、プロセッサコア１０４は４つのプロセッサコアを備え得、温度が温度しきい値を超えるたびに、２つのプロセッサコアのセットが電力コラプスされ得る。処理ユニット１０２は、それの温度がそれの温度しきい値を超えたことに応じて、プロセッサコア１０４のうちの２つのプロセッサコアの第１のセットを電力コラプスさせ得る。次に処理ユニット１０２の温度がそれの温度しきい値を超えたとき、処理ユニット１０２は、２つのプロセッサコア１０４の第１のセットとは異なるプロセッサコア１０４のうちの２つのプロセッサコアの第２のセットをコラプスさせ得る。他のストラテジーでは、処理ユニット１０２は、最大量の静的漏れを有するプロセッサコア１０４のうちの１つまたは複数のプロセッサコアを電力コラプスさせることを決定し得、または処理ユニット１０２は、電力コラプスされた後に最も速く温度が下がるプロセッサコア１０４のうちの１つまたは複数のプロセッサコアを電力コラプスさせることを決定し得る。
【００３４】
[0038]電源投入されたままであるプロセッサコア１０４の低減されたセットは命令を処理し続け得（２０８）、温度センサー１１０はマルチコアプロセッサ１０２の温度を測定し続け得る。温度センサー１１０は、測定された温度を電力制御モジュール１０８に通信し得、電力制御モジュール１０８は、マルチコアプロセッサ１０２の測定された温度がしきい値温度よりも低いかどうかを決定し得る（２１０）。マルチコアプロセッサ１０２の測定された温度がしきい値温度を超え続ける場合、電源投入されたままであるプロセッサコア１０４の低減されたセットが命令を処理し続け得る（２０８）。マルチコアプロセッサ１０２の測定された温度がもはやしきい値温度を超えない場合、電力制御モジュール１０８は、プロセッサコア１０４のうちの以前に電力コラプスされたプロセッサコアを電源投入し得（２１２）、プロセッサコア１０４のうちのプロセッサコアのフルセットが命令を処理し得る（２０２）。
【００３５】
[0039]図３Ａ〜図３Ｄは、本開示の態様による、コアの間の交代でのマルチコアプロセッサのビジーコアの電力コラプスを示す概念図である。図３Ａ〜図３Ｄに示された例では、プロセッサコア１０４は８つのプロセッサコア１０４Ａ〜１０４Ｈを備え得、処理ユニットの温度が温度しきい値を超えたとき、プロセッサコアのうちの２つが一度に切断され得る。図３Ａに示されているように、プロセッサコア１０４を備える処理ユニット１０２の温度が温度しきい値を超えたとき、処理ユニット１０２は２つのプロセッサコア１０４Ａおよび１０４Ｂをオフにし得る。図３Ｂに示されているように、処理ユニット１０２が、それの温度が温度しきい値を下回ったことに応じてプロセッサコア１０４Ａおよび１０４Ｂをオンに戻した後、次に処理ユニット１０２の温度が温度しきい値を超えた場合、処理ユニット１０２は、２つのプロセッサコア１０４Ｃおよび１０４Ｄをオフにすることによって、熱緩和のためにオフにされるプロセッサコアを交代させ得る。同様に、図３Ｃに示されているように、処理ユニット１０２が、それの温度が温度しきい値を下回ったことに応じてプロセッサコア１０４Ｃおよび１０４Ｄをオンに戻した後、次に処理ユニット１０２の温度が温度しきい値を超えた場合、処理ユニット１０２は、２つのプロセッサコア１０４Ｅおよび１０４Ｆをオフにすることによって、熱緩和のためにオフにされるプロセッサコアを交代させ得る。同様に、図３Ｄに示されているように、処理ユニット１０２が、それの温度が温度しきい値を下回ったことに応じてプロセッサコア１０４Ｅおよび１０４Ｆをオンに戻した後、次に処理ユニット１０２の温度が温度しきい値を超えた場合、処理ユニット１０２は、２つのプロセッサコア１０４Ｇおよび１０４Ｈをオフにすることによって、熱緩和のためにオフにされるプロセッサコアを交代させ得る。
【００３６】
[0040]図４Ａ〜図４Ｄは、本開示の態様による、インテリジェント交代アルゴリズムによるマルチコアプロセッサのビジーコアの電力コラプスを示す概念図である。処理ユニット１０２は、オフにされたとき、プロセッサコア１０４のうちの他のプロセッサコアと比較して、どのプロセッサコアまたはプロセッサコアのセットがより速くクールダウンし得るかを決定し得る。処理ユニット１０２がプロセッサコアのクールダウン速度のそのような決定を行うと、処理ユニット１０２は、処理ユニット１０２の温度が温度しきい値を超えたことに応じて、それらのプロセッサコアを切断し得る。
【００３７】
[0041]図４Ａ〜図４Ｄに示された例では、プロセッサコア１０４Ａおよび１０４Ｂのセットならびにプロセッサコア１０４Ｅおよび１０４Ｆのセットは、それらがオンおよびビジーであることからオフであることに切り替えられたときに最も速く下がる温度を有するプロセッサコアのセットである。その情報に少なくとも部分的に基づいて、処理ユニット１０２は、処理ユニット１０２の温度が温度しきい値を超えた場合、プロセッサコア１０４Ａおよび１０４Ｂのセットをオフにすることと、プロセッサコア１０４Ｃおよび１０４Ｄのセットをオフにすることとを交代させ得る。図４Ａに示されているように、プロセッサコア１０４を備える処理ユニット１０２の温度が温度しきい値を超えたとき、処理ユニット１０２は、２つのプロセッサコア１０４Ａおよび１０４Ｂの第１のセットをオフにし得る。図４Ｂに示されているように、処理ユニット１０２が、処理ユニット１０２の温度が温度しきい値を下回ったことに応じてプロセッサコア１０４Ａおよび１０４Ｂをオンに戻した後、次に処理ユニット１０２の温度が温度しきい値を超えた場合、処理ユニット１０２は、２つのプロセッサコア１０４Ｅおよび１０４Ｆの第２のセットをオフにすること得る。図４Ｃに示されているように、処理ユニット１０２は、プロセッサコア１０４Ａおよび１０４Ｂのセットならびにプロセッサコア１０４Ｅおよび１０４Ｆのセットが、オフにされたときにクールダウンすることにおいてプロセッサコアの最も効率的なセットであると決定したので、処理ユニット１０２が、処理ユニット１０２の温度が温度しきい値を下回ったことに応じてプロセッサコア１０４Ｅおよび１０４Ｆをオンに戻した後、処理ユニット１０２は、次に処理ユニット１０２の温度が温度しきい値を超えた場合、プロセッサコア１０４Ａおよび１０４Ｂをオフにすることに交代し得る。同様に、図４Ｄに示されているように、処理ユニット１０２が、それの温度が温度しきい値を下回ったことに応じてプロセッサコア１０４Ｅおよび１０４Ｆをオンに戻した後、次に処理ユニット１０２の温度が温度しきい値を超えた場合、処理ユニット１０２は、２つのプロセッサコア１０４Ａおよび１０４Ｂをオフにすることによって、熱緩和のためにオフにされるプロセッサコアを交代させ得る。したがって、電力コラプスされた後に最も速くクールダウンするプロセッサコアを決定することによって、および最も速くクールダウンするプロセッサコアのセットを電力コラプスさせることによって、処理ユニット１０２は、それの温度が温度しきい値をより急速に下回ることを可能にし得る。
【００３８】
[0042]図５は、本開示の１つまたは複数の態様を実装するように構成され得るデバイスの一例を示すブロック図である。たとえば、図５はデバイス５０２を示している。デバイス５０２の例としては、限定はしないが、ビデオデバイス、メディアプレーヤ、セットトップボックス、携帯電話およびいわゆるスマートフォンなどのワイヤレスハンドセット、携帯情報端末（ＰＤＡ）、デスクトップコンピュータ、ラップトップコンピュータ、ゲーミングコンソール、ビデオ会議ユニット、タブレットコンピューティングデバイスなどがある。
【００３９】
[0043]図５の例では、デバイス５０２は、プロセッサ５２０と、システムメモリ５１８と、ＧＰＵ５２２とを含み得る。プロセッサ５２０およびＧＰＵ５２２は、図１に示された処理ユニット１０２と同様であり得、システムメモリ５１８は、図１に示されたメモリ１１６と同様であり得る。デバイス５０２はまた、ディスプレイプロセッサ５２４と、トランシーバモジュール５２６と、ユーザインターフェース５２８と、ディスプレイ５３０とを含み得る。トランシーバモジュール５２６とディスプレイプロセッサ５２４とは両方とも、プロセッサ５２０および／またはＧＰＵ５２２と同じ集積回路（ＩＣ）の一部であり得るか、両方ともプロセッサ５２０および／またはＧＰＵ５２２を含む１つまたは複数のＩＣの外部にあり得るか、あるいはプロセッサ５２０および／またはＧＰＵ５２２を含むＩＣの外部にあるＩＣ中に形成され得る。
【００４０】
[0044]デバイス５０２は、明快のために図５に示されていない追加のモジュールまたはユニットを含み得る。たとえば、デバイス５０２は、デバイス５０２がモバイルワイヤレス電話である例において電話通信を実現するために、そのいずれも図５に示されていないスピーカーおよびマイクロフォンを含み、またはデバイス５０２がメディアプレーヤである例においてスピーカーを含み得る。デバイス５０２はまた、ビデオカメラを含み得る。さらに、デバイス５０２に示された様々なモジュールおよびユニットは、デバイス５０２のあらゆる例において必要であるとは限らない。たとえば、ユーザインターフェース５２８およびディスプレイ５３０は、デバイス５０２が、デスクトップコンピュータ、あるいは外部ユーザインターフェースまたはディスプレイとインターフェースする能力がある他のデバイスである例において、デバイス５０２の外部にあり得る。
【００４１】
[0045]ユーザインターフェース５２８の例には、限定はしないが、トラックボール、マウス、キーボード、および他のタイプの入力デバイスがある。ユーザインターフェース５２８はまた、タッチスクリーンであり得、ディスプレイ５３０の一部として組み込まれ得る。トランシーバモジュール５２６は、デバイス５０２と別のデバイスまたはネットワークとの間のワイヤレスまたはワイヤード通信を可能にするための回路を含み得る。トランシーバモジュール５２６は、ワイヤードまたはワイヤレス通信のための変調器、復調器、増幅器および他のそのような回路を含み得る。
【００４２】
[0046]いくつかの例では、ＧＰＵ５２２は、十分に形成された画像をシステムメモリ５１８に記憶し得る。ディスプレイプロセッサ５２４は、システムメモリ５１８から画像を取り出し、ディスプレイ５３０のピクセルを、画像を表示するために点灯させる値を出力し得る。ディスプレイ５３０は、ＧＰＵ５２２によって生成された画像コンテンツを表示するデバイス５０２のディスプレイであり得る。ディスプレイ５３０は、液晶ディスプレイ（ＬＣＤ）、有機発光ダイオードディスプレイ（ＯＬＥＤ）、陰極線管（ＣＲＴ）ディスプレイ、プラズマディスプレイ、または別のタイプのディスプレイデバイスであり得る。
【００４３】
[0047]１つまたは複数の例において、前述の機能は、ハードウェア、ソフトウェア、ファームウェア、またはそれらの任意の組合せで実装され得る。ソフトウェアで実装される場合、機能は、１つまたは複数の命令またはコードとして、コンピュータ可読媒体上に記憶されるか、またはコンピュータ可読媒体を介して送信され得る。コンピュータ可読媒体は、ある場所から別の場所へのコンピュータプログラムの転送を可能にする任意の媒体を含む、コンピュータデータ記憶媒体または通信媒体を含み得る。データ記憶媒体は、本開示で説明した技法の実装のための命令、コードおよび／またはデータ構造を取り出すために、１つまたは複数のコンピュータまたは１つまたは複数のプロセッサによってアクセスされ得る、任意の利用可能な媒体であり得る。限定ではなく例として、そのようなコンピュータ可読媒体は、ＲＡＭ、ＲＯＭ、ＥＥＰＲＯＭ（登録商標）、ＣＤ−ＲＯＭまたは他の光ディスクストレージ、磁気ディスクストレージまたは他の磁気記憶デバイス、あるいは命令またはデータ構造の形態の所望のプログラムコードを搬送または記憶するために使用され得、コンピュータによってアクセスされ得る任意の他の媒体を備えることができる。また、いかなる接続もコンピュータ可読媒体と適切に呼ばれる。たとえば、ソフトウェアが、同軸ケーブル、光ファイバーケーブル、ツイストペア、デジタル加入者回線（ＤＳＬ）、または赤外線、無線、およびマイクロ波などのワイヤレス技術を使用して、ウェブサイト、サーバ、または他のリモートソースから送信される場合、同軸ケーブル、光ファイバーケーブル、ツイストペア、ＤＳＬ、または赤外線、無線、およびマイクロ波などのワイヤレス技術は、媒体の定義に含まれる。本明細書で使用するディスク（disk）およびディスク（disc）は、コンパクトディスク（disc）（ＣＤ）、レーザーディスク（登録商標）（disc）、光ディスク（disc）、デジタル多用途ディスク（disc）（ＤＶＤ）、フロッピー（登録商標）ディスク（disk）およびＢｌｕ−ｒａｙ（登録商標）ディスク（disc）を含み、ディスク（disk）は、通常、データを磁気的に再生し、ディスク（disc）は、データをレーザーで光学的に再生する。上記の組合せもコンピュータ可読媒体の範囲内に含まれるべきである。
【００４４】
[0048]コードは、１つまたは複数のデジタル信号プロセッサ（ＤＳＰ）、汎用マイクロプロセッサ、特定用途向け集積回路（ＡＳＩＣ）、フィールドプログラマブル論理アレイ（ＦＰＧＡ）、または他の等価な集積回路もしくはディスクリート論理回路など、１つまたは複数のプロセッサによって実行され得る。したがって、本明細書で使用する「プロセッサ」および「処理ユニット」という用語は、前述の構造、または本明細書で説明した技法の実装に好適な任意の他の構造のいずれかを指すことがある。さらに、いくつかの態様では、本明細書で説明した機能は、符号化および復号のために構成された専用のハードウェアモジュールおよび／またはソフトウェアモジュール内に与えられるか、あるいは複合コーデックに組み込まれ得る。また、本技法は、１つまたは複数の回路または論理要素で十分に実装され得る。
【００４５】
[0049]本開示の技法は、ワイヤレスハンドセット、集積回路（ＩＣ）またはＩＣのセット（たとえば、チップセット）を含む、多種多様なデバイスまたは装置で実装され得る。本開示では、開示する技法を実行するように構成されたデバイスの機能的態様を強調するために様々な構成要素、モジュール、またはユニットについて説明したが、それらの構成要素、モジュール、またはユニットを、必ずしも異なるハードウェアユニットによって実現する必要があるとは限らない。むしろ、上記で説明したように、様々なユニットが、好適なソフトウェアおよび／またはファームウェアとともに、上記で説明した１つまたは複数のプロセッサを含めて、コーデックハードウェアユニットにおいて組み合わせられるか、または相互動作ハードウェアユニットの集合によって与えられ得る。
【００４６】
[0050]様々な例について説明した。これらおよび他の例は以下の特許請求の範囲内に入る。
【図１】
2016534423.tif 000003
【図２】
2016534423.tif 000004
【図３Ａ】
2016534423.tif 000005
【図３Ｂ】
2016534423.tif 000006
【図３Ｃ】
2016534423.tif 000007
【図３Ｄ】
2016534423.tif 000008
【図４Ａ】
2016534423.tif 000009
【図４Ｂ】
2016534423.tif 000010
【図４Ｃ】
2016534423.tif 000011
【図４Ｄ】
2016534423.tif 000012
【図５】
2016534423.tif 000013
【手続補正書】
【提出日】平成28年6月29日(2016.6.29)
【手続補正１】
【補正対象書類名】特許請求の範囲
【補正対象項目名】全文
【補正方法】変更
【補正の内容】
【特許請求の範囲】
【請求項１】
マルチコアプロセッサを熱緩和するための方法であって、
電力コラプスされたとき、前記マルチコアプロセッサの温度が温度しきい値を下回る最も短い経過時間を生じる１つまたは複数のビジープロセッサコアのセットを決定するために前記１つまたは複数のビジープロセッサコアの各セットを電力コラプスさせることに応答して前記マルチコアプロセッサの前記温度が前記温度しきい値を下回る経過時間を決定することを含む、前記マルチコアプロセッサの前記温度が前記温度しきい値を超えたという事例（instances）に応じて前記マルチコアプロセッサのクロック速度を低減することなしに前記マルチコアプロセッサのコアの間で、交代で前記マルチコアプロセッサの前記１つまたは複数のビジープロセッサコアのセットを電力コラプスさせることと、
後の事例（a subsequent instance）で前記マルチコアプロセッサの前記温度が前記温度しきい値を超えたことに応じて、電力コラプスされたとき、前記マルチコアプロセッサの前記温度が前記温度しきい値を下回る前記最も短い経過時間を生じる前記１つまたは複数のビジープロセッサコアの前記セットを電力コラプスさせることと
を備える、方法。
【請求項２】
前記マルチコアプロセッサの前記１つまたは複数のビジープロセッサコアの電力漏れ特性に基づいて、電力コラプスさせるべき前記マルチコアプロセッサの前記１つまたは複数のビジープロセッサコアのセットを決定すること
をさらに備える、請求項１に記載の方法。
【請求項３】
前記マルチコアプロセッサの前記１つまたは複数のビジープロセッサコアのセットのクールダウン速度に基づいて、電力コラプスさせるべき前記マルチコアプロセッサの前記１つまたは複数のビジープロセッサコアのセットを決定すること
をさらに備える、請求項１に記載の方法。
【請求項４】
前記温度しきい値が緊急温度しきい値よりも小さい、請求項１に記載の方法。
【請求項５】
前記マルチコアプロセッサの前記１つまたは複数のビジープロセッサコアのセットを電力コラプスさせることは、
シーケンサで、前記１つまたは複数のビジープロセッサコアのセットが処理すべき命令をスケジュールしないと決定すること
をさらに備える、請求項１に記載の方法。
【請求項６】
１つまたは複数のビジープロセッサコアのセットを電力コラプスさせることが、
前記１つまたは複数のビジープロセッサコアのセットに関連する１つまたは複数のキャッシュを電力コラプスさせること
をさらに備える、請求項１に記載の方法。
【請求項７】
前記マルチコアプロセッサの前記温度を検知すること
をさらに備える、請求項１に記載の方法。
【請求項８】
マルチコアプロセッサと、
電力コラプスされたとき、前記マルチコアプロセッサの温度が温度しきい値を下回る最も短い経過時間を生じる１つまたは複数のビジープロセッサコアのセットを決定するために前記１つまたは複数のビジープロセッサコアの各セットを電力コラプスさせることに応答して前記マルチコアプロセッサの前記温度が前記温度しきい値を下回る経過時間を決定することを含む、前記マルチコアプロセッサの前記温度が前記温度しきい値を超えたという事例に応じて前記マルチコアプロセッサのクロック速度を低減することなしに前記マルチコアプロセッサのコアの間で、交代で前記マルチコアプロセッサの前記１つまたは複数のビジープロセッサコアのセットを電力コラプスさせ、
後の事例で前記マルチコアプロセッサの前記温度が前記温度しきい値を超えたことに応じて、電力コラプスされたとき、前記マルチコアプロセッサの前記温度が前記温度しきい値を下回る前記最も短い経過時間を生じる前記１つまたは複数のビジープロセッサコアの前記セットを電力コラプスさせるように構成された電力制御モジュールと
を備える装置。
【請求項９】
前記電力制御モジュールが、前記マルチコアプロセッサの前記１つまたは複数のビジープロセッサコアのセットの電力漏れ特性に基づいて、電力コラプスさせるべき前記マルチコアプロセッサの前記１つまたは複数のビジープロセッサコアのセットを決定するようにさらに構成された、請求項８に記載の装置。
【請求項１０】
前記電力制御モジュールが、前記マルチコアプロセッサの前記１つまたは複数のビジープロセッサコアのセットのクールダウン速度に基づいて、電力コラプスさせるべき前記マルチコアプロセッサの前記１つまたは複数のビジープロセッサコアのセットを決定するようにさらに構成された、請求項８に記載の装置。
【請求項１１】
前記温度しきい値が緊急温度しきい値よりも小さい、請求項８に記載の装置。
【請求項１２】
前記１つまたは複数のビジープロセッサコアのセットが処理すべき命令をスケジュールしないと決定するように構成されたシーケンサ
をさらに備える、請求項８に記載の装置。
【請求項１３】
前記１つまたは複数のビジープロセッサコアのセットを電力コラプスさせることが、
前記１つまたは複数のビジープロセッサコアのセットに関連する１つまたは複数のキャッシュを電力コラプスさせること
をさらに備える、請求項８に記載の装置。
【請求項１４】
前記マルチコアプロセッサの前記温度を検知するように構成された温度センサー
をさらに備える、請求項８に記載の装置。
【請求項１５】
電力コラプスされたとき、マルチコアプロセッサの温度が温度しきい値を下回る最も短い経過時間を生じる１つまたは複数のビジープロセッサコアのセットを決定するために前記１つまたは複数のビジープロセッサコアの各セットを電力コラプスさせることに応答して前記マルチコアプロセッサの前記温度が前記温度しきい値を下回る経過時間を決定することを含む、前記マルチコアプロセッサの前記温度が前記温度しきい値を超えたという事例に応じて前記マルチコアプロセッサのクロック速度を低減することなしに前記マルチコアプロセッサのコアの間で、交代で前記マルチコアプロセッサの前記１つまたは複数のビジープロセッサコアのセットを電力コラプスさせるための手段と、
後の事例で前記マルチコアプロセッサの前記温度が前記温度しきい値を超えたことに応じて、電力コラプスされたとき、前記マルチコアプロセッサの前記温度が前記温度しきい値を下回る前記最も短い経過時間を生じる前記１つまたは複数のビジープロセッサコアの前記セットを電力コラプスさせるための手段と
を備える装置。
【請求項１６】
前記マルチコアプロセッサの前記１つまたは複数のビジープロセッサコアのセットの電力漏れ特性に基づいて、電力コラプスさせるべき前記マルチコアプロセッサの前記１つまたは複数のビジープロセッサコアのセットを決定するための手段
をさらに備える、請求項１５に記載の装置。
【請求項１７】
前記マルチコアプロセッサの前記１つまたは複数のビジープロセッサコアのセットのクールダウン速度に基づいて、電力コラプスさせるべき前記マルチコアプロセッサの前記第１の１つまたは複数のビジープロセッサコアのセットを決定するための手段
をさらに備える、請求項１５に記載の装置。
【請求項１８】
前記温度しきい値が緊急温度しきい値よりも小さい、請求項１５に記載の装置。
【請求項１９】
前記マルチコアプロセッサの前記１つまたは複数のビジープロセッサコアのセットを電力コラプスさせるための前記手段が、
前記１つまたは複数のビジープロセッサコアのセットが処理すべき命令をスケジュールしないと決定するための手段
をさらに備える、請求項１５に記載の装置。
【請求項２０】
前記１つまたは複数のビジープロセッサコアのセットを電力コラプスさせるための前記手段が、
前記１つまたは複数のビジープロセッサコアのセットに関連する１つまたは複数のキャッシュを電力コラプスさせるための手段
をさらに備える、請求項１５に記載の装置。
【請求項２１】
実行されたとき、１つまたは複数のプログラマブルプロセッサに、
電力コラプスされたとき、マルチコアプロセッサの温度が温度しきい値を下回る最も短い経過時間を生じる１つまたは複数のビジープロセッサコアのセットを決定するために前記１つまたは複数のビジープロセッサコアの各セットを電力コラプスさせることに応答して前記マルチコアプロセッサの前記温度が前記温度しきい値を下回る経過時間を決定することを含む、前記マルチコアプロセッサの前記温度が前記温度しきい値を超えたという事例に応じて前記マルチコアプロセッサのクロック速度を低減することなしに前記マルチコアプロセッサのコアの間で、交代で前記マルチコアプロセッサの前記１つまたは複数のビジープロセッサコアのセットを電力コラプスさせることと、
後の事例で前記マルチコアプロセッサの前記温度が前記温度しきい値を超えたことに応じて、電力コラプスされたとき、前記マルチコアプロセッサの前記温度が前記温度しきい値を下回る前記最も短い経過時間を生じる前記１つまたは複数のビジープロセッサコアの前記セットを電力コラプスさせること
を行わせる命令を記憶するコンピュータ可読記憶媒体。
【請求項２２】
前記命令が、前記１つまたは複数のプログラマブルプロセッサに、
前記マルチコアプロセッサの前記１つまたは複数のビジープロセッサコアのセットの電力漏れ特性に基づいて、電力コラプスさせるべき前記マルチコアプロセッサの前記１つまたは複数のビジープロセッサコアのセットを決定すること
をさらに行わせる、請求項２１に記載のコンピュータ可読記憶媒体。
【請求項２３】
前記命令が、前記１つまたは複数のプログラマブルプロセッサに、
前記マルチコアプロセッサの前記１つまたは複数のビジープロセッサコアのセットのクールダウン速度に基づいて、電力コラプスさせるべき前記マルチコアプロセッサの前記１つまたは複数のビジープロセッサコアのセットを決定すること
をさらに行わせる、請求項２１に記載のコンピュータ可読記憶媒体。
【請求項２４】
前記温度しきい値が緊急温度しきい値よりも小さい、請求項２１に記載のコンピュータ可読記憶媒体。
【請求項２５】
前記命令は、前記１つまたは複数のプログラマブルプロセッサに、
シーケンサで、前記１つまたは複数のビジープロセッサコアのセットが処理すべき命令をスケジュールしないと決定すること
をさらに行わせる、請求項２１に記載のコンピュータ可読記憶媒体。
【請求項２６】
前記命令が、前記１つまたは複数のプログラマブルプロセッサに、
前記１つまたは複数のビジープロセッサコアのセットに関連する１つまたは複数のキャッシュを電力コラプスさせること
をさらに行わせる、請求項２１に記載のコンピュータ可読記憶媒体。
【手続補正２】
【補正対象書類名】明細書
【補正対象項目名】００４６
【補正方法】変更
【補正の内容】
【００４６】
[0050]様々な例について説明した。これらおよび他の例は以下の特許請求の範囲内に入る。
以下に、出願当初の特許請求の範囲に記載された発明を付記する。
［Ｃ１］
マルチコアプロセッサを熱緩和するための方法であって、
マルチコアプロセッサの温度が温度しきい値を超えたことに応じて、前記マルチコアプロセッサのクロック速度を低減することなしに前記マルチコアプロセッサの１つまたは複数のビジープロセッサコアを電力コラプスさせること
を備える、方法。
［Ｃ２］
前記マルチコアプロセッサのコアの間で、交代で電力コラプスさせるべき前記マルチコアプロセッサの前記１つまたは複数のビジープロセッサコアを決定すること
をさらに備える、Ｃ１に記載の方法。
［Ｃ３］
前記マルチコアプロセッサの前記１つまたは複数のビジープロセッサコアの電力漏れ特性に基づいて、電力コラプスさせるべき前記マルチコアプロセッサの前記１つまたは複数のビジープロセッサコアを決定すること
をさらに備える、Ｃ１に記載の方法。
［Ｃ４］
前記マルチコアプロセッサの前記１つまたは複数のビジープロセッサコアのクールダウン速度に基づいて、電力コラプスさせるべき前記マルチコアプロセッサの前記１つまたは複数のビジープロセッサコアを決定すること
をさらに備える、Ｃ１に記載の方法。
［Ｃ５］
前記温度しきい値が緊急温度しきい値よりも小さい、Ｃ１に記載の方法。
［Ｃ６］
前記マルチコアプロセッサの１つまたは複数のビジープロセッサコアを電力コラプスさせることは、
シーケンサで、前記１つまたは複数のビジープロセッサコアが処理すべき命令をスケジュールしないと決定すること
をさらに備える、Ｃ１に記載の方法。
［Ｃ７］
１つまたは複数のビジープロセッサコアを電力コラプスさせることが、
前記１つまたは複数のビジープロセッサコアに関連する１つまたは複数のキャッシュを電力コラプスさせること
をさらに備える、Ｃ１に記載の方法。
［Ｃ８］
前記マルチコアプロセッサの前記温度を検知すること
をさらに備える、Ｃ１に記載の方法。
［Ｃ９］
マルチコアプロセッサと、
前記マルチコアプロセッサの温度が温度しきい値を超えたことに応じて、前記マルチコアプロセッサのクロック速度を低減することなしに前記マルチコアプロセッサの１つまたは複数のビジープロセッサコアを電力コラプスさせるように構成された電力制御モジュールと
を備える装置。
［Ｃ１０］
前記電力制御モジュールが、前記マルチコアプロセッサのコアの間で、交代で電力コラプスさせるべき前記マルチコアプロセッサの前記１つまたは複数のビジープロセッサコアを決定するようにさらに構成された、Ｃ９に記載の装置。
［Ｃ１１］
前記電力制御モジュールが、前記マルチコアプロセッサの前記１つまたは複数のビジープロセッサコアの電力漏れ特性に基づいて、電力コラプスさせるべき前記マルチコアプロセッサの前記１つまたは複数のビジープロセッサコアを決定するようにさらに構成された、Ｃ９に記載の装置。
［Ｃ１２］
前記電力制御モジュールが、前記マルチコアプロセッサの前記１つまたは複数のビジープロセッサコアのクールダウン速度に基づいて、電力コラプスさせるべき前記マルチコアプロセッサの前記１つまたは複数のビジープロセッサコアを決定するようにさらに構成された、Ｃ９に記載の装置。
［Ｃ１３］
前記温度しきい値が緊急温度しきい値よりも小さい、Ｃ９に記載の装置。
［Ｃ１４］
前記１つまたは複数のビジープロセッサコアが処理すべき命令をスケジュールしないと決定するように構成されたシーケンサ
をさらに備える、Ｃ９に記載の装置。
［Ｃ１５］
１つまたは複数のビジープロセッサコアを電力コラプスさせることが、
前記１つまたは複数のビジープロセッサコアに関連する１つまたは複数のキャッシュを電力コラプスさせること
をさらに備える、Ｃ９に記載の装置。
［Ｃ１６］
前記マルチコアプロセッサの前記温度を検知するように構成された温度センサー
をさらに備える、Ｃ９に記載の装置。
［Ｃ１７］
マルチコアプロセッサの温度を検知するための手段と、
前記マルチコアプロセッサの前記温度を検知するための前記手段によって検知された前記マルチコアプロセッサの温度が温度しきい値を超えたことに応じて、前記マルチコアプロセッサのクロック速度を低減することなしに前記マルチコアプロセッサの１つまたは複数のビジープロセッサコアを電力コラプスさせるための手段と
を備える装置。
［Ｃ１８］
前記マルチコアプロセッサのコアの間で、交代で電力コラプスさせるべき前記マルチコアプロセッサの前記１つまたは複数のビジープロセッサコアを決定するための手段
をさらに備える、Ｃ１７に記載の装置。
［Ｃ１９］
前記マルチコアプロセッサの前記１つまたは複数のビジープロセッサコアの電力漏れ特性に基づいて、電力コラプスさせるべき前記マルチコアプロセッサの前記１つまたは複数のビジープロセッサコアを決定するための手段
をさらに備える、Ｃ１７に記載の装置。
［Ｃ２０］
前記マルチコアプロセッサの前記１つまたは複数のビジープロセッサコアのクールダウン速度に基づいて、電力コラプスさせるべき前記マルチコアプロセッサの前記１つまたは複数のビジープロセッサコアを決定するための手段
をさらに備える、Ｃ１７に記載の装置。
［Ｃ２１］
前記温度しきい値が緊急温度しきい値よりも小さい、Ｃ１７に記載の装置。
［Ｃ２２］
前記マルチコアプロセッサの１つまたは複数のビジープロセッサコアを電力コラプスさせるための前記手段が、
前記１つまたは複数のビジープロセッサコアが処理すべき命令をスケジュールしないと決定するための手段
をさらに備える、Ｃ１７に記載の装置。
［Ｃ２３］
１つまたは複数のビジープロセッサコアを電力コラプスさせるための前記手段が、
前記１つまたは複数のビジープロセッサコアに関連する１つまたは複数のキャッシュを電力コラプスさせるための手段
をさらに備える、Ｃ１７に記載の装置。
［Ｃ２４］
実行されたとき、１つまたは複数のプログラマブルプロセッサに、
マルチコアプロセッサの温度が温度しきい値を超えたことに応じて、前記マルチコアプロセッサのクロック速度を低減することなしに前記マルチコアプロセッサの１つまたは複数のビジープロセッサコアを電力コラプスさせること
を行わせる命令を記憶するコンピュータ可読記憶媒体。
［Ｃ２５］
前記命令が、前記１つまたは複数のプログラマブルプロセッサに、
前記マルチコアプロセッサのコアの間で、交代で電力コラプスさせるべき前記マルチコアプロセッサの前記１つまたは複数のビジープロセッサコアを決定すること
をさらに行わせる、Ｃ２４に記載のコンピュータ可読記憶媒体。
［Ｃ２６］
前記命令が、前記１つまたは複数のプログラマブルプロセッサに、
前記マルチコアプロセッサの前記１つまたは複数のビジープロセッサコアの電力漏れ特性に基づいて、電力コラプスさせるべき前記マルチコアプロセッサの前記１つまたは複数のビジープロセッサコアを決定すること
をさらに行わせる、Ｃ２４に記載のコンピュータ可読記憶媒体。
［Ｃ２７］
前記命令が、前記１つまたは複数のプログラマブルプロセッサに、
前記マルチコアプロセッサの前記１つまたは複数のビジープロセッサコアのクールダウン速度に基づいて、電力コラプスさせるべき前記マルチコアプロセッサの前記１つまたは複数のビジープロセッサコアを決定すること
をさらに行わせる、Ｃ２４に記載のコンピュータ可読記憶媒体。
［Ｃ２８］
前記温度しきい値が緊急温度しきい値よりも小さい、Ｃ２４に記載のコンピュータ可読記憶媒体。
［Ｃ２９］
前記命令は、前記１つまたは複数のプログラマブルプロセッサに、
シーケンサで、前記１つまたは複数のビジープロセッサコアが処理すべき命令をスケジュールしないと決定すること
をさらに行わせる、Ｃ２４に記載のコンピュータ可読記憶媒体。
［Ｃ３０］
前記命令が、前記１つまたは複数のプログラマブルプロセッサに、
前記１つまたは複数のビジープロセッサコアに関連する１つまたは複数のキャッシュを電力コラプスさせること
をさらに行わせる、Ｃ２４に記載のコンピュータ可読記憶媒体。
【手続補正書】
【提出日】平成28年6月30日(2016.6.30)
【手続補正１】
【補正対象書類名】特許請求の範囲
【補正対象項目名】全文
【補正方法】変更
【補正の内容】
【特許請求の範囲】
【請求項１】
マルチコアプロセッサを熱緩和するための方法であって、
電力コラプスされたとき、前記マルチコアプロセッサの温度が温度しきい値を下回る最も短い経過時間を生じる１つまたは複数のビジープロセッサコアのセットを決定するために前記１つまたは複数のビジープロセッサコアの各セットを電力コラプスさせることに応答して前記マルチコアプロセッサの前記温度が前記温度しきい値を下回る経過時間を決定することを含む、前記マルチコアプロセッサの前記温度が前記温度しきい値を超えたという事例（instances）に応じて前記マルチコアプロセッサのクロック速度を低減することなしに前記マルチコアプロセッサのコアの間で、交代で前記マルチコアプロセッサの前記１つまたは複数のビジープロセッサコアのセットを電力コラプスさせることと、
後の事例（a subsequent instance）で前記マルチコアプロセッサの前記温度が前記温度しきい値を超えたことに応じて、電力コラプスされたとき、前記マルチコアプロセッサの前記温度が前記温度しきい値を下回る前記最も短い経過時間を生じる前記１つまたは複数のビジープロセッサコアの前記セットを電力コラプスさせることと
を備える、方法。
【請求項２】
前記マルチコアプロセッサの前記１つまたは複数のビジープロセッサコアの電力漏れ特性に基づいて、電力コラプスさせるべき前記マルチコアプロセッサの前記１つまたは複数のビジープロセッサコアのセットを決定すること
をさらに備える、請求項１に記載の方法。
【請求項３】
前記マルチコアプロセッサの前記１つまたは複数のビジープロセッサコアのセットのクールダウン速度に基づいて、電力コラプスさせるべき前記マルチコアプロセッサの前記１つまたは複数のビジープロセッサコアのセットを決定すること
をさらに備える、請求項１に記載の方法。
【請求項４】
前記温度しきい値が緊急温度しきい値よりも小さい、請求項１に記載の方法。
【請求項５】
前記マルチコアプロセッサの前記１つまたは複数のビジープロセッサコアのセットを電力コラプスさせることは、
シーケンサで、前記１つまたは複数のビジープロセッサコアのセットが処理すべき命令をスケジュールしないと決定すること
をさらに備える、請求項１に記載の方法。
【請求項６】
１つまたは複数のビジープロセッサコアのセットを電力コラプスさせることが、
前記１つまたは複数のビジープロセッサコアのセットに関連する１つまたは複数のキャッシュを電力コラプスさせること
をさらに備える、請求項１に記載の方法。
【請求項７】
前記マルチコアプロセッサの前記温度を検知すること
をさらに備える、請求項１に記載の方法。
【請求項８】
マルチコアプロセッサと、
電力コラプスされたとき、前記マルチコアプロセッサの温度が温度しきい値を下回る最も短い経過時間を生じる１つまたは複数のビジープロセッサコアのセットを決定するために前記１つまたは複数のビジープロセッサコアの各セットを電力コラプスさせることに応答して前記マルチコアプロセッサの前記温度が前記温度しきい値を下回る経過時間を決定することを含む、前記マルチコアプロセッサの前記温度が前記温度しきい値を超えたという事例に応じて前記マルチコアプロセッサのクロック速度を低減することなしに前記マルチコアプロセッサのコアの間で、交代で前記マルチコアプロセッサの前記１つまたは複数のビジープロセッサコアのセットを電力コラプスさせ、
後の事例で前記マルチコアプロセッサの前記温度が前記温度しきい値を超えたことに応じて、電力コラプスされたとき、前記マルチコアプロセッサの前記温度が前記温度しきい値を下回る前記最も短い経過時間を生じる前記１つまたは複数のビジープロセッサコアの前記セットを電力コラプスさせるように構成された電力制御モジュールと
を備える装置。
【請求項９】
前記電力制御モジュールが、前記マルチコアプロセッサの前記１つまたは複数のビジープロセッサコアのセットの電力漏れ特性に基づいて、電力コラプスさせるべき前記マルチコアプロセッサの前記１つまたは複数のビジープロセッサコアのセットを決定するようにさらに構成された、請求項８に記載の装置。
【請求項１０】
前記電力制御モジュールが、前記マルチコアプロセッサの前記１つまたは複数のビジープロセッサコアのセットのクールダウン速度に基づいて、電力コラプスさせるべき前記マルチコアプロセッサの前記１つまたは複数のビジープロセッサコアのセットを決定するようにさらに構成された、請求項８に記載の装置。
【請求項１１】
前記温度しきい値が緊急温度しきい値よりも小さい、請求項８に記載の装置。
【請求項１２】
前記１つまたは複数のビジープロセッサコアのセットが処理すべき命令をスケジュールしないと決定するように構成されたシーケンサ
をさらに備える、請求項８に記載の装置。
【請求項１３】
前記１つまたは複数のビジープロセッサコアのセットを電力コラプスさせることが、
前記１つまたは複数のビジープロセッサコアのセットに関連する１つまたは複数のキャッシュを電力コラプスさせること
をさらに備える、請求項８に記載の装置。
【請求項１４】
前記マルチコアプロセッサの前記温度を検知するように構成された温度センサー
をさらに備える、請求項８に記載の装置。
【請求項１５】
電力コラプスされたとき、マルチコアプロセッサの温度が温度しきい値を下回る最も短い経過時間を生じる１つまたは複数のビジープロセッサコアのセットを決定するために前記１つまたは複数のビジープロセッサコアの各セットを電力コラプスさせることに応答して前記マルチコアプロセッサの前記温度が前記温度しきい値を下回る経過時間を決定することを含む、前記マルチコアプロセッサの前記温度が前記温度しきい値を超えたという事例に応じて前記マルチコアプロセッサのクロック速度を低減することなしに前記マルチコアプロセッサのコアの間で、交代で前記マルチコアプロセッサの前記１つまたは複数のビジープロセッサコアのセットを電力コラプスさせるための手段と、
後の事例で前記マルチコアプロセッサの前記温度が前記温度しきい値を超えたことに応じて、電力コラプスされたとき、前記マルチコアプロセッサの前記温度が前記温度しきい値を下回る前記最も短い経過時間を生じる前記１つまたは複数のビジープロセッサコアの前記セットを電力コラプスさせるための手段と
を備える装置。
【請求項１６】
前記マルチコアプロセッサの前記１つまたは複数のビジープロセッサコアのセットの電力漏れ特性に基づいて、電力コラプスさせるべき前記マルチコアプロセッサの前記１つまたは複数のビジープロセッサコアのセットを決定するための手段
をさらに備える、請求項１５に記載の装置。
【請求項１７】
前記マルチコアプロセッサの前記１つまたは複数のビジープロセッサコアのセットのクールダウン速度に基づいて、電力コラプスさせるべき前記マルチコアプロセッサの前記第１の１つまたは複数のビジープロセッサコアのセットを決定するための手段
をさらに備える、請求項１５に記載の装置。
【請求項１８】
前記温度しきい値が緊急温度しきい値よりも小さい、請求項１５に記載の装置。
【請求項１９】
前記マルチコアプロセッサの前記１つまたは複数のビジープロセッサコアのセットを電力コラプスさせるための前記手段が、
前記１つまたは複数のビジープロセッサコアのセットが処理すべき命令をスケジュールしないと決定するための手段
をさらに備える、請求項１５に記載の装置。
【請求項２０】
前記１つまたは複数のビジープロセッサコアのセットを電力コラプスさせるための前記手段が、
前記１つまたは複数のビジープロセッサコアのセットに関連する１つまたは複数のキャッシュを電力コラプスさせるための手段
をさらに備える、請求項１５に記載の装置。
【請求項２１】
実行されたとき、１つまたは複数のプログラマブルプロセッサに、
電力コラプスされたとき、マルチコアプロセッサの温度が温度しきい値を下回る最も短い経過時間を生じる１つまたは複数のビジープロセッサコアのセットを決定するために前記１つまたは複数のビジープロセッサコアの各セットを電力コラプスさせることに応答して前記マルチコアプロセッサの前記温度が前記温度しきい値を下回る経過時間を決定することを含む、前記マルチコアプロセッサの前記温度が前記温度しきい値を超えたという事例に応じて前記マルチコアプロセッサのクロック速度を低減することなしに前記マルチコアプロセッサのコアの間で、交代で前記マルチコアプロセッサの前記１つまたは複数のビジープロセッサコアのセットを電力コラプスさせることと、
後の事例で前記マルチコアプロセッサの前記温度が前記温度しきい値を超えたことに応じて、電力コラプスされたとき、前記マルチコアプロセッサの前記温度が前記温度しきい値を下回る前記最も短い経過時間を生じる前記１つまたは複数のビジープロセッサコアの前記セットを電力コラプスさせること
を行わせる命令を記憶する非一時的なコンピュータ可読記憶媒体。
【請求項２２】
前記命令が、前記１つまたは複数のプログラマブルプロセッサに、
前記マルチコアプロセッサの前記１つまたは複数のビジープロセッサコアのセットの電力漏れ特性に基づいて、電力コラプスさせるべき前記マルチコアプロセッサの前記１つまたは複数のビジープロセッサコアのセットを決定すること
をさらに行わせる、請求項２１に記載の非一時的なコンピュータ可読記憶媒体。
【請求項２３】
前記命令が、前記１つまたは複数のプログラマブルプロセッサに、
前記マルチコアプロセッサの前記１つまたは複数のビジープロセッサコアのセットのクールダウン速度に基づいて、電力コラプスさせるべき前記マルチコアプロセッサの前記１つまたは複数のビジープロセッサコアのセットを決定すること
をさらに行わせる、請求項２１に記載の非一時的なコンピュータ可読記憶媒体。
【請求項２４】
前記温度しきい値が緊急温度しきい値よりも小さい、請求項２１に記載の非一時的なコンピュータ可読記憶媒体。
【請求項２５】
前記命令は、前記１つまたは複数のプログラマブルプロセッサに、
シーケンサで、前記１つまたは複数のビジープロセッサコアのセットが処理すべき命令をスケジュールしないと決定すること
をさらに行わせる、請求項２１に記載の非一時的なコンピュータ可読記憶媒体。
【請求項２６】
前記命令が、前記１つまたは複数のプログラマブルプロセッサに、
前記１つまたは複数のビジープロセッサコアのセットに関連する１つまたは複数のキャッシュを電力コラプスさせること
をさらに行わせる、請求項２１に記載の非一時的なコンピュータ可読記憶媒体。
【国際調査報告】
2016534423.tif 000014
2016534423.tif 000015
2016534423.tif 000016