(57)【要約】マルチプロセッサシステムにおいて割り込み要求を複数のプロトコルに分散する方法である。この方法は、複数の現在のトランザクションを各トランザクションが関連する複数のプロセッサ（１０４，１０６，１０８）の各々で実行するステップと、割り込み要求を発生するステップと、各プロセッサについてトランザクション完了時間を推定するステップと、前記割り込み要求を最小の推定トランザクション完了時間を有するプロセッサに転送するステップ（１０２）とを含む。トランザクション完了時間の推定は、トランザクション完了時間に関する情報が格納され且つ連続的に更新されるように周期的に生起される。本発明の一つの態様では、各プロセッサのトランザクション完了時間の推定ステップは割り込み要求が発生される時に行われる。本発明の他の態様では、割り込み要求を伝えるステップが、トランザクション完了時間の推定前に、割り込み要求を中間プロセッサに伝えるステップを含む。
2009534719.tif 000002
【特許請求の範囲】
【請求項１】
マルチプロセッサシステムにおいて割り込み負荷を複数のプロセッサに分散する方法であって、
現在のトランザクションを第１のプロセッサで実行するステップと、
現在のトランザクションの実行中に割り込み要求を受信するステップと、
現在のトランザクションについて第１のトランザクション完了時間を推定するステップと、
前記割り込み要求を第２のプロセッサに再転送するステップと、
を具えることを特徴とする方法。
【請求項２】
請求項１記載の方法において、第２のプロセッサで実行中の現在のトランザクションについて第２のトランザクション完了時間を推定するステップと、  前記第２のトランザクション完了時間が前記第１のトランジスタ完了時間より小さいときにのみ前記割り込み要求を第２のプロセッサに再転送するステップを更に具えることを特徴とする方法。
【請求項３】
請求項１記載の方法において、マルチプロセッサシステム内の各プロセッサについてトランザクション完了時間を推定するステップと、前記割り込み要求を最小の推定トランザクション完了時間を有するプロセッサに再転送するステップを更に具えることを特徴とする方法。
【請求項４】
請求項３記載の方法において、前記プロセッサは対称型システムのプロセッサであり、前記プロセッサが実質的に均等な負荷で動作するようにプロセッサ間で負荷分散を行うステップを更に具える方法。
【請求項５】
マルチプロセッサシステムにおいて割り込み負荷を複数のプロセッサに分散する方法であって、
現在のトランザクションを第１のプロセッサで実行するステップと、
現在のトランザクションの実行中に割り込み要求を受信するステップと、
前記割り込み要求を第１のプロセッサに転送するステップと、
前記割り込み要求が発生されたときに現在のトランザクションについて第１のトランザクション完了時間を推定するステップと、
前記割り込み要求を第２のプロセッサに再転送するステップと、
を具えることを特徴とする方法。
【請求項６】
請求項５記載の方法において、第２のプロセッサで実行中の現在のトランザクションについて第２のトランザクション完了時間を推定するステップと、  前記第２のトランザクション完了時間が前記第１のトランジスタ完了時間より小さいときにのみ前記割り込み要求を第２のプロセッサに再転送するステップを更に具えることを特徴とする方法。
【請求項７】
請求項５記載の方法において、マルチプロセッサシステム内の各プロセッサについてトランザクション完了時間を推定するステップと、前記割り込み要求を最小の推定トランザクション完了時間を有するプロセッサに再転送するステップを更に具えることを特徴とする方法。
【請求項８】
請求項７記載の方法において、前記プロセッサは対称型システムのプロセッサであり、前記プロセッサが実質的に均等な負荷で動作するようにプロセッサ間で負荷分散を行うステップを更に具える方法。
【請求項９】
マルチプロセッサシステムにおいて割り込み負荷を複数のプロセッサに分散する方法であって、
複数の現在のトランザクションを各トランザクションが関連する複数のプロセッサの各々で実行するステップと、
割り込み要求を発生するステップと、
各プロセッサについてトランザクション完了時間を推定するステップと、
前記割り込み要求を最小の推定トランザクション完了時間を有するプロセッサに転送するステップと、
を具えることを特徴とする方法。
【請求項１０】
請求項９記載の方法において、各プロセッサについてトランザクション完了時間を推定する前記ステップは周期的に発生することを特徴とする方法。
【請求項１１】
請求項９記載の方法において、各プロセッサについてトランザクション完了時間を推定する前記ステップは、前記割り込み要求が発生されるときに発生することを特徴とする方法。
【請求項１２】
請求項９記載の方法において、前記割り込み要求を、前記トランザクション完了時間を推定する前に、中間プロセッサに伝えるステップを更に具えることを特徴とする方法。
【請求項１３】
請求項９記載の方法において、前記プロセッサは対称型システムのプロセッサであり、前記プロセッサが実質的に均等な負荷で動作するようにプロセッサ間で負荷分散を行うステップを更に具えることを特徴とする方法。
【請求項１４】
割り込み負荷を分配するシステムであって、
各プロセッサがトランザクションを実行できる複数のプロセッサと、
割り込み要求を分配するために前記プロセッサと通信する割り込み分散器とを具え、
前記割り込み分散器は、各割り込み要求が分配される際に、前記割り込み要求が最小のトランザクション完了時間を有するプロセッサに割り振られるように、各プロセッサについてトランザクション完了時間を推定するように構成されていることを特徴とするシステム。
【請求項１５】
請求項１４記載のシステムにおいて、前記プロセッサは同期式であり、実質的に一定の周波数で動作することを特徴とするシステム。
【請求項１６】
請求項１５記載のシステムにおいて、前記プロセッサは一プロセッサコアの一部分を構成することを特徴とするシステム。
【請求項１７】
請求項１５記載のシステムにおいて、前記プロセッサは個別ユニットであり、システムはメインメモリと前記メインメモリを前記プロセッサに接続するバスとを含むことを特徴とするシステム。
【請求項１８】
請求項１７記載のシステムにおいて、各プロセッサと関連し通信するキャッシュメモリを更に具えることを特徴とするシステム。
【請求項１９】
請求項１４記載のシステムにおいて、前記プロセッサは非同期式であり、各プロセッサについてトランザクション完了時間を推定するのに加えて、前記割り込み分散器が各プロセッサについて推定されたトランザクション時間を各使用可能なプロセッサ周波数毎に表にすることを特徴とするシステム。
【請求項２０】
請求項１４記載のシステムにおいて、前記割り込み分散器は各プロセッサと関連するトランザクションハンドラと通信し、各トランザクションハンドラがぞれぞれのプロセスを連続的にモニタしてトランザクション完了時間を推定することを特徴とするシステム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、データ処理方法及びシステム、特に最適割り込み処理を有するマルチプロセッサに関する。
【背景技術】
【０００２】
データ処理システムは、一般にプロセッサと、プログラム及びデータを格納するメインメモリと、プロセッサ命令を一時的に格納するキャッシュメモリとを含む。このような処理システムはさまざまな要求を有し得る。プロセッサ又はプロセッサ群が多数のアプリケーションを同時にランすることができる。
【０００３】
典型的なシステムはプロセッサタスクをスケジュールするタスクスケジューラを有する。新しいタスクが発生するとき及びタスクがスケジュール変更を必要とするときに割り込み要求がプロセッサに通知される。
【０００４】
いくつかのシステムは固定のスケジュールポリシを用いるために、高い優先順位のアプリケーション又は高い優先順位のタスクが自動的にプロセッサに現在のタスクを中断させる。これはシングルプロセッサシステムに対して有用であるが、マルチプロセッサシステムの最適化のためにはもっと精巧な優先順位付けポリシが要求される。
【０００５】
いくつかのマルチプロセッサシステムはもっとフレキシブルな割り込みスケジュールポリシを使用する。一つのこのようなシステムでは、割り込み要求は第１のプロセッサに転送され、第１のプロセッサが高い負荷で動作している場合には、このポリシでは自動的に第１のプロセッサがその割り込み要求を利用されていない第２のプロセッサへ再転送し、割り込みタスクが一層効率的に実行される。
【０００６】
割り込み要求の自動再転送は割り込み履歴テーブル及びプロセッサ履歴テーブルの使用に依存し、これらのテーブルは一緒に割り込みスケジュールを更新するために使用できる。このように、割り込みスケジュールはプロセッサ履歴情報に基づいて更新することができる。システムは、スケジュールテーブル情報、既知の予め決定された基準値及びプロセッサ統計情報を比較し、割り込みスケジュールテーブルを最適に変更する。一つの模範的なシステムが米国特許第６，２３７，０５８号明細書に開示されている。
【０００７】
あいにく、プロセッサ履歴及び割り込み履歴が分かっていて使用されている場合であっても、割り込み要求が終了間近のタスクを妨害するようにスケジュールされる状況が起こり得る。終了間近のタスクへの割り込みは、キャッシュをオーバライトする不所望な影響を与え、他のシステマティックレイテンシを導入し得る。従って、割り込みスケジュール及び割り込みスケジュールポリシを総合システムパフォーマンスが改善されるように変更するもっと良好な方法の開発が望まれている。
【発明の開示】
【０００８】
基本的な理解及び高レベルの概観を与えるために簡単な要約を以下に提示する。この要約は広範囲に及ぶものではない。主要な又は重要な要素を特定するつもりも、範囲を特定するつもりもない。この要約の唯一の目的は、後に提示される本発明のいくつかの好適実施例のより詳細な説明の前置きとして、いくつかのコンセプトを簡単な形で提示することにある。加えて、ここで使用するセクション見出しは単に便宜上つけただけで、何ら限定の意図はない。
【０００９】
マルチプロセッサシステムの最適なシステムパフォーマンスは、割り込み要求が処理される方法に依存する。最適なシステムパフォーマンスは、現在のトランザクションが完了できるように割り込み要求の実行を遅らせたり、別のプロセッサに再転送することを必要とする。
【００１０】
マルチプロセッサシステムにおいてはプロセッサタスクは共有され、トランザクションに分割される場合が多い。トランザクションはプロセッサ周波数、バス速度及びメモリのアクセシビリティ及び速度に依存する所定の時間を必要とする。システムパフォーマンスを最適にするためには、システムが高い優先順位のタスクに対する割り込み要求に直面したときでも、多くのトランザクションが完了されるのが理想的である。従って、トランザクション完了時間は、それが注意深く予測、推定もしくは計算されたなら、最適システムパフォーマンスを得るために使用できる重要な考慮事項である。これは、割り込み要求を受け入れるために種々のレベルのキャッシュ又はメインメモリをパージする又は再割当てする必要があるときに特に真である。
【００１１】
マルチプロセッサシステムにおいて割り込み負荷をプロセッサに分散する本発明の方法では、現在のトランザクションを第１のプロセッサで実行し、割り込み要求を発生し、この割り込み要求を第１のプロセッサに送る。本発明の方法では、現在のトランザクションについて第１のトランザクション完了時間を推定する。
【００１２】
本発明の一つの態様によれば、それぞれのシステムプロセッサと関連するトランザクションハンドラがトランザクション完了時間を推定する。トランザクションハンドラはトランザクション完了時間をもっとも正確に且つ高速に推定すべくそれぞれのプロセッサを連続的に監視する。代替方法では、トランザクションハンドラ又は他のデバイスは、割り込み要求が発生される時間にトランザクション完了時間を推定し、割り込み要求を第２のプロセッサへ再転送する。
【００１３】
本発明の方法では、更に、第２のプロセッサで実行されている現在のトランザクションについて第２のトランザクション完了時間を推定する。第２のトランザクション完了時間が第１のトランザクション完了時間より小さい場合には、割り込み要求は直ちに再２のプロセッサに再転送される。
【００１４】
本発明の一つの方法では、各プロセッサがトランザクションを処理する際に各プロセッサについてトランザクション完了時間の推定が行われる。この方法によれば、割り込み要求は最低の推定トランザクション完了時間を有するプロセッサに転送される。
【００１５】
本発明の方法は、プロセッサが実質的に均等な負荷で動作するようにプロセッサ間のロードバランシングを用いる対称型マルチプロセッサシステムに特に適用可能であるが、本発明は非対称型マルチプロセッサシステムにも適用できる。他の態様及び実施の形態は図に示され、以下に詳細に説明される。
【発明を実施するための最良の形態】
【００１６】
本発明は、添付図面と関連して以下に記載する本発明の種々の実施例の詳細な説明を参照するともっと完全に理解される。
【００１７】
本発明は種々の変更及び代替が可能であるが、その特定の実施例を図面に例示し、以下に詳細に説明する。しかし、本発明はこれらの特定の実施例に限定されるものではない。それどころか、本発明は添付の特許請求の範囲で限定される発明の精神及び範囲に含まれるすべての変更、同等及び代替構成をカバーすることを意図するものである。
【００１８】
図１は本発明によるシステムを示す。システム１００は割り込み分散器１０２、プロセッサ１０４、プロセッサ１０６、プロセッサ１０８、キャッシュメモリ１１０、キャッシュメモリ１１２、キャッシュメモリ１１４、システムバス１１６及びメインメモリ１０８を含む。
【００１９】
各プロセッサ１０４，１０６，１０８はそれぞれ特定のキャッシュメモリ１１０，１１２，１１４と直接通信する。システムバス１１６はプロセッサ１０４，１０６，１０８をシステム１００内でメインメモリ１１８と通信可能にする。
【００２０】
システム１００は割り込み負荷をプロセッサの間で分散するよう機能する。各プロセッサは、トランザクションの実行を促進するためにそれぞれのキャッシュメモリ又はメインメモリを用いて、トランザクションおよびタスクを実行することができる。割り込み分散器１０２は、プロセッサ１０４，１０６，１０８と通信して割り込み要求をこれらのプロセッサに分散する。割り込み分散器１０２は、各割り込み要求が分散されるとき、その割り込み要求が最小のトランザクション完了時間を有するプロセッサに割り当てられるように、各プロセッサ１０４，１０６，１０８毎にトランザクション完了時間を推定するように構成される。本発明のこの例示的実施例では３つのプロセッサが示されているが、本発明は多数の追加のプロセッサを用いるシステムにも有用であると理解されたい。
【００２１】
本発明の一つの態様では、プロセッサ１０４，１０６，１０８は同期式であり、実質的に一定の周波数及び電圧で動作するように設計される。
【００２２】
本発明の代替態様では、プロセッサ１０４，１０６，１０８は非同期式であり、変化した又は可変の電圧で動作するように設計される。割り込み分散器１０２は、各プロセッサ１０４，１０６，１０８毎にトランザクション完了時間を推定するのに加えて、各プロセッサの推定トランジスタ完了時間を使用可能なプロセッサ周波数毎に表にする。
【００２３】
本発明の他の態様では、プロセッサ１０４，１０６，１０８は一つのプロセッサコアの一部分を構成し、システム１００はシングルデバイスに構成される。
【００２４】
本発明は多数の個別ユニットで実現することもできることを理解されたい。この実現例では、プロセッサは個別ユニットであり、システムはメインメモリと、メインメモリをプロセッサに接続するバスとを含む。従って、キャッシュメモリ１１０，１１２，１１４はそれぞれプロセッサ１０４，１０６，１０８だけに割り当てられ、通信上各自のプロセッサとだけ関連する。
【００２５】
図２は、本発明による信号２００を示す。システム１００は、プロセッサ２０２，２０４，２０６，２０８と、各プロセッサとそれぞれ関連するトランザクションハンドラ２１０，２１２，２１４，２１６とを含む。システム２００は第１のアービタ２１８、第２のアービタ２２２、第３のアービタ２２６と、メモリリソース２２０，２２４，２２８，２３０，２３２と、割り込み分散器２３４とを含む。
【００２６】
トランザクションハンドラ２１０，２１２，２１４，２１６は第１のアービタ２１８を介してメモリリソース２２０と通信する。メモリリソース２２０は第２のアービタ２２２を介してメモリリソース２２４と通信する。メモリリソース２２４はメインメモリモジュールであるメモリリソース２２８，２３８，２３２と通信システムする。
【００２７】
システム２００はメモリの階層及びメモリとバスを含む複数の共用リソースを有する。プロセッサは共用リソースの使用を競争する。プロセッサ２０２，２０４，２０６，２０８は読出し及び書込みトランザクションを発行し、これらのトランザクションは各プロセッサ２０２，２０４，２０６，２０８とそれぞれ関連するそれぞれのトランザクションハンドラ２１０，２１２，２１４，２１６により受信される。トランザクションハンドラ２１０，２１２，２１４，２１６はメモリを含み、それらのメモリはそれぞれのプロセッサのトランザクション状態を保持する。本発明の一つの態様では、トランザクションハンドラ２１０，２１２，２１４，２１６はそれぞれのプロセッサ２０２，２０４，２０６，２０８をトランザクション状態について周期的にポーリングする。
【００２８】
現在のトランザクションの完了時間は種々の方法で決定できる。この実施例について考察する。図２のシステムでは、メモリリソース２２０及び２２４はキャッシュメモリである。メモリリソース２２８及び２３０はＳＲＡＭ又はＤＲＡＭメモリである。メモリリソース２３２は磁気又は光ドライブメモリである。
【００２９】
プロセッサ２０２がＳＲＡＭ／ＤＲＡＭメモリ２２８内の所定のアドレスで実行されるべき読出し及び書込み命令を含むトランザクションを発行する。プロセッサ２０２と関連するトランザクションハンドラ２１０がこのトランザクションの処理を開始する。
【００３０】
複数のプロセッサ２０４，２０６及び２０８がレベル２のキャッシュメモリリソース２２０を共用する。トランザクションハンドラ２１０が、アービタバス２１８上でアービトレーションを行い、所定の持続時間Ｔ１後に共用キャッシュメモリリソース２２０（Ｌ２キャッシュ）にアクセスする。トランザクションがキャッシュヒットを生じ、共用Ｌ２キャッシュメモリリソース２２０がトランザクションをサーブできる場合には、トランザクションはΔＴ１サイクルの持続時間を有する追加のプロセッササイクル数内に完了する。しかし、共用Ｌ２キャッシュメモリリソース２２０がキャッシュミスを生じる場合には、下位レベルのメモリがトランザクションをサーブしなければならない。特に、トランザクションは必要な命令を格納するメモリリソースによりサーブされなければならない。この場合には、Ｌ３／Ｌ４メモリリソース２２４，２２８，メモリリソース２３０又はメインメモリ２３２がトランザクションをサーブしなければならない。トランザクションがＬ３メモリ２２４に転送される場合には、アービトレーションのためにＴ２の持続時間を有する追加のプロセッササイクルを必要とする。従って、Ｌ３キャッシュヒットはＴ２の持続時間を有する予測可能な数のプロセッササイクルを要することになるが、Ｌ３キャッシュミスは、トランザクションはＬ４メモリでサーブされなければならないという高い確実性を生じる。Ｌ４メモリのアクセスはＴ３の標準持続時間を有する所定数のプロセッササイクルを必要とする。
【００３１】
Ｔ１，Ｔ２及びＴ３は静的に予測できる持続時間を有することが認められる。本発明の一つの態様では、これらの時間は、特定のキャッシュレベル、キャッシュメモリ速度及びトランザクション長を考慮した平均キャッシュアクセス時間に基づいて予測する。本発明の別の態様では、平均時間を用いることができる。本発明の他の態様では、実際の時間を各場合において計算する。
【００３２】
トランザクションハンドラ２１０，２１２，２１４及び２１６は、それぞれのプロセッサ２０２，２０４，２０６及び２０８についてトランザクション時間を追跡し、トランザクションがどの段階に進んでいるかを知る。本発明の一つの態様では、トランザクションハンドラは各プロセッサをポーリングし、各プロセッサトランザクションの進捗状況を表にする。本発明の他の態様では、トランザクションハンドラはそれぞれのプロセッサを周期的にポーリングする。特に、各トランザクションハンドラは、トランザクションの各段階における各トランザクションの平均、最小及び最大完了時間に関する情報を推定するためにタイマカウンタを有する。この情報に基づいて、任意のトランザクションに対する完了時間を推定できる。
【００３３】
例えば、第１のプロセッサ２０８及び第２のプロセッサ２１０により発行された２つのトランザクションが存在し得る。第１のプロセッサ２０８からの第１のトランザクションはＬ２キャッシュへのアクセスを待っているが、第２のトランザクションはＬ３キャッシュへのアクセスを待っている。トランザクションの完了はキャッシュヒットがあるかに依存する。第１及び第２のトランザクションの両方に対してキャッシュヒットがある場合には、これらのトランザクションに対する完了時間は同じとすることができる（Ｌ２及びＬ３キャッシュに対する平均アービトレーション時間はおなじであるものと仮定する）。しかし、両トランザクションともキャッシュミスした場合には、両トランザクションがＬ４キャッシュでサーブされる場合、第２のトランザクションが第１のトランザクションより先に完了する可能性が高い。しかし、キャッシュヒット情報が両トランザクションに対して得られる場合には、割り込みをキャッシュヒットを生じたプロセッサに容易に割り当てることができる。
【００３４】
本発明は、図２について記載したアーキテクチャに対して有用であるが、本発明を利用する他の可能なシステム構成を考案することができる。例えば、本発明は、キャッシュメモリを必要としないアーキテクチャを用いるように構成することができる。この構成は、例えばＩＢＭ  Ｃｅｌｌアーキテクチャに見られる。このシナリオでは、各レベルのメモリをアクセスする平均時間をもっと正確に予測することができる。
【００３５】
図３はマルチプロセッサシステムにおいて割り込み負荷を複数のプロセッサに分散する方法３００を示す。この方法３００は、現在のトランザクションを第１のプロセッサで実行するステップ３０２と、割り込み要求を受信するステップ３０４と、現在のトランザクションについてトランザクション完了時間を推定するステップ３０６と、前記割り込み要求を第２のプロセッサに再転送するステップ３０８と、前記割り込み要求を処理するステップ３１０とを含む。この割り込み要求を処理するステップ３１０は割り込み要求を受信するステップ３０４を反復させることができる。
【００３６】
現在のトランザクションを実行するステップ３０２は、トランザクションの特定の部分を処理するために第１のプロセッサを用いる。トランザクションは一般に定義可能な平均持続時間を有する。実行ステップ３０２は処理トランザクションの開始を含み、多数のプロセッササイクルを含むことができるが、トランザクションはまだ完全には終了していない。
【００３７】
割り込み分散器１０２はトランザクションの完了前に割り込み要求を発生する。この割り込み要求は第１のプロセッサ又は中間のプロセッサに伝えられる。第１のプロセッサ又は中間のプロセッサは、この割り込み要求を受信する（３０４）と、第１のプロセッサでの現在のトランザクションの実行（３０２）について完了時間を推定する。
【００３８】
第１のプロセッサが割り込み要求の受信後に完了時間を推定する（３０６）が、完了時間の推定（３０６）は中間プロセッサ、割り込み分散器、トランザクションハンドラ又は他のデバイスにより実行することもできる。ステップ３０６のタイミングは割り込み要求の発生時、割り込み要求の受信（３０４）時又は割り込み要求の受信（３０４）後に生起させることができる。
【００３９】
本発明の一つの態様では、完了時間の推定（３０６）は割り込み要求の発生より前に割り込み分散器１０２により達成される。割り込み分散器１０２が各トランザクション毎に予測されたトランザクション完了時間を予め表にすることができるように予測解析補助プロセッサが使用される。
【００４０】
割り込み要求の受信ステップ（３０４）は第１のプロセッサの現在トランザクションの実行ステップ（３０２）中に起り、割り込み要求を第２のプロセッサへ再転送するステップ（３０８）は、現在トランザクションが完了までに所定の又は推定された残存サイクル数を有し、第２のプロセッサが第２のプロセッサの現在トランザクションに対してこの所定の又は推定された残存さ数より小さい残存サイクル数を有するときに最適に生起する。
【００４１】
対称型処理システムにおいては、サイクルは固定の持続時間を有し、プロセッサがほぼ又は実質的に均等な負荷で動作するようにプロセッサ間の負荷分散が生じる。第２のトランザクション完了時間を推定するステップが第２のプロセッサで実行中の現在トランザクションに対して起り、第２のトランザクション完了時間が第１のトランジスタ完了時間より小さいときにのみ割り込み要求の第２のプロセッサへの再転送（３０８）が起こり得る。２より多数のプロセッサを有するシステムが最適に使用される。従って、再転送ステップ（３０８）は割り込み要求をシステム内の最小の推定トランザクション完了時間を有する使用可能なプロセッサに送る。
【００４２】
図４はマルチプロセッサにおいて割り込み負荷を複数のプロセッサに分散する方法４００を示す。この方法４００は、現在トランザクションを複数のプロセッサで実行するステップ４０２と、トランザクション完了時間を推定するためにこれらのプロセッサをポーリングするステップ４０４と、割り込み要求を発生するステップ４０６と、割り込み要求を最小の推定トランザクション時間を有するプロセッサに再転送するステップ４０８と、割り込み要求を処理し割り込み要求発生ステップ４０６を反復させるステップ４１０とを含む。
【００４３】
現在トランザクションを複数のプロセッサで実行するステップ４０２は、特定のプロセッサへのトランザクションの事前割り当てに頼る。これは、典型的には、対称型マルチプロセッサシステムのロードバランシング技術又は非対称型マルチプロセッサシステムの他のプロトコルにより達成される。トランザクション完了時間を推定するためにプロセッサをポーリングするステップ４０４は予測解析を使用する必要性を除去する。ポーリングは、割り込み要求の発生（４０６）に応答して又は割り込み要求を予期して周期的に行うことができる。
【００４４】
割り込み要求が発生される時をある程度の確かさで予測するために過去の割り込み要求を割り込みテーブルで追跡し外挿処理を行うことで、割り込み要求を予期することを達成できる。ポーリングステップ４０４は、割り込み要求が発生される選択された確度が得られるときに開始される。理想的には、システムパフォーマンスをアダプティブに最適化するために選択された確度がシステム制約により調整されるようにする。
【００４５】
本発明の別の代替態様では、ポーリングは、周期的ではなく割り込み要求がプロセッサにより受信されるのに応答して生起する。如何なる場合にも、割り込み要求はシステムパフォーマンスの最適化のために最小の推定トランザクション時間を有するプロセッサに転送される。
【００４６】
本発明をいくつかの特定の例示的実施例について説明したが、添付の特許請求の範囲に記載された本発明の精神及び範囲から逸脱することなく多くの変更を加えることができることは当業者が認識するところである。
【図面の簡単な説明】
【００４７】
【図１】本発明によるシステムを示す。
【図２】本発明によるシステムを示す。
【図３】本発明による方法を示すフローチャートである。
【図４】本発明による方法を示すフローチャートである。
【図１】
2009534719.tif 000003
【図２】
2009534719.tif 000004
【図３】
2009534719.tif 000005
【図４】
2009534719.tif 000006
【国際調査報告】
2009534719.tif 000007
2009534719.tif 000008