JP5054115B2 - 非対称型マルチプロセッサ装置上の診断動作の実行 - Google Patents

非対称型マルチプロセッサ装置上の診断動作の実行 Download PDF

Info

Publication number
JP5054115B2
JP5054115B2 JP2009533925A JP2009533925A JP5054115B2 JP 5054115 B2 JP5054115 B2 JP 5054115B2 JP 2009533925 A JP2009533925 A JP 2009533925A JP 2009533925 A JP2009533925 A JP 2009533925A JP 5054115 B2 JP5054115 B2 JP 5054115B2
Authority
JP
Japan
Prior art keywords
execution
master
diagnostic
unit
thread
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.)
Expired - Fee Related
Application number
JP2009533925A
Other languages
English (en)
Other versions
JP2010507855A (ja
Inventor
サイモン・アンドリュー・フォード
アラステア・デビッド・レイド
キャサリン・エリザベス・ニーボーン
エドムンド・グリムレイ−エヴァンス
Original Assignee
アーム・リミテッド
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 アーム・リミテッド filed Critical アーム・リミテッド
Publication of JP2010507855A publication Critical patent/JP2010507855A/ja
Application granted granted Critical
Publication of JP5054115B2 publication Critical patent/JP5054115B2/ja
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/36Preventing errors by testing or debugging software
    • G06F11/362Software debugging
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/28Error detection; Error correction; Monitoring by checking the correct order of processing
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/22Detection or location of defective computer hardware by testing during standby operation or during idle time, e.g. start-up testing
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/36Preventing errors by testing or debugging software
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/36Preventing errors by testing or debugging software
    • G06F11/362Software debugging
    • G06F11/3636Software debugging by tracing the execution of the program
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/30Monitoring
    • G06F11/34Recording or statistical evaluation of computer activity, e.g. of down time, of input/output operation ; Recording or statistical evaluation of user activity, e.g. usability assessment
    • G06F11/3466Performance evaluation by tracing or monitoring

Description

本発明は、データ処理システムに関する。具体的に、本発明は、非対称型マルチプロセッサ装置に用いる診断メカニズムの提供に関する。
デバッグメカニズム、追跡メカニズム及びプロファイリングメカニズムのような診断メカニズムは、データ処理システム開発の分野で重要になってきている。データ処理システムがより複雑になり、その開発及びテスト期間が短くなっているので、データ処理システムに関連付けられる問題を識別し、その設計及び構成を調整することによってそれらデータ処理システムの性能を高めるのに使用できる、強力で取扱いが楽な診断メカニズムの需要が高まっている。
データ処理システムにおけるもう1つの傾向は、マルチプロセッサシステムの使用の増加である。これらは、プログラム又はタスクの異なるスレッドで通常同時の処理を許容することによって、比較的高い性能を与えるのに使用される。そのようなマルチプロセッサシステムの一形式は、対称型マルチプロセッサシステムとして知られる。そのような対称型システムは通常、プログラム及びデータメモリの同一のコヒーレントビューを各々有する複数の同一プロセッサコアを含み、オペレーティングシステムソフトウェアは、個々のプロセッサへの実行すべきタスク/スレッドの割り当て、及びプロセッサ間のタスク/スレッドの移行に関与する。即ち、プログラム命令実行の単一スレッドは、オペレーティングシステム制御下で複数のプロセッサ間において時分割される。そのような対称型システムにおいて、オペレーティングシステムは、オペレーティングシステムのスケジューリングが1つのプロセッサからもう1つのプロセッサへの実行を移行する時であっても、どこの個々のタスク/スレッドが実行されているかを判断し、単一のプロセッサ上で実行する単一スレッドの出現をプログラマに提供するのに使用することができる。そのような手法は、プロセッサが同一である点、及び移行がオペレーティングシステムによって、即ちプログラム自体によってトリガされることなく実行される点に限定される。
対称型マルチプロセッサシステムが処理性能を高めることができる一方、それは、幾分非効率である。一例として、実行されるべき処理が、DSPタイプコアによって実行されるのが最善(例えば、かなり数的に集約的及び反復的)で他のタスクが汎用プロセッサによって実行されるのが好ましい(例えば、フロー制御、ユーザ入力等)いくつかの動作を要求する場合、その後対称型マルチプロセッサは、そのような処理を実行するのに比較的非効率な方法である。これは、認識されており、非対称型マルチプロセシング(AMP)システムを提供することが知られている。そのようなシステムの一例は、テキサスインストラメンツによって設計されるOMAPプラットフォームである。そのようなプラットフォームにおいて、複数の異なるプロセッサは、他のタスクにわたっていくつかのタスクにそれをより適合させる特徴を有するこれらの各々に提供される。一例として、非対称型マルチプロセッサは、DSPコアだけでなく汎用マイクロプロセッサコアを含んでもよい。そのような非対称型マルチプロセッサは、処理性能に関して強力な利点を有し、比較的低いコスト及び低電力消費をもたらすことができる一方で、その不均一性(heterogeneous nature)に起因してプログラム及び開発がさらに困難である。そのような非対称型マルチプロセッサシステムを良好に使用するために、オペレーティングシステムの制御下ではなく、プログラム自体によってスレッド間のタスクの移行を実行するのが通常である。また、異なるプロセッサの異なる処理アーキテクチャは、かなり異なる診断メカニズムが各プロセッサに適しうることを意味する。AMPシステムの同期リモートプロシージャコールは、SMPシステムにおけるスレッドのオペレーティングシステム制御の移行と同様、1つのプロセッサから他のプロセッサへのスレッドのプログラム制御された移行と見なされることができるが、システムのこの簡単な見なしは、どのプロセッサが動作を実行するかに従ってシステムを分割する既存の診断メカニズムによって支援されない。これは、たとえ診断メカニズムがより重要であることを、そのような非対称型処理システムをプログラミングする複雑性及び困難性が意味しても、対称型マルチプロセシングシステムに関連付けられる比較的単純な診断手法が非対称型マルチプロセッサシステムにただちに使用できない結果を有する。従来のAMPシステムにおいて、各プロセッサ上で走るコードが分離して扱われる。各プロセッサのためのコードは、まるでそれが、他のプロセッサ上の分離したプログラムと通信する分離したプログラムであるかのようにデバッグされる。
QNX SOFTWARE SYSTEMS:"QNX Neutrino RTOS-System Architecture"[Online] February 2006 (2006-02), pages 1-407, XP002463005 Canada Retrieved from the Internet: URL: http://www.qnx.com/download/feature.ht ml programid=14695> [retrieved on 2007-12-13] describes homogeneous and heterogeneous asymmetric multiprocessing J. ENGBLON:"Debugging Real-Time Multiprocessor Systems" EMBEDDED SYSTEMS CONFERENCE,[Online] 3 April 2006 (2006-04-03),-7 April 2006 (2006-04-07) pages 1-15, XP002463007 San Jose, CA, USA Retrieved from the Internet: URL:http://www.virtutech.com/pdf/engblom-e sc2006.pdf> [retrieved on 2007-12-13] describes debugging real-time multiprocessor systems
1つの実施形態によると、本発明は、データ処理動作を実行するために各プログラム命令に応答する複数の実行メカニズムと、プログラム命令実行のスレッドは、前記複数の実行メカニズム間で時分割され、前記複数の実行メカニズムの少なくとも1つは、一つ以上の他の前記複数の実行メカニズムとは異なる処理アーキテクチャを有し、診断動作を実行するために各実行メカニズムに各々関連付けられる複数のスレーブ診断ユニットと、前記複数のスレーブ診断ユニットに接続され、実行メカニズム間における所定のスレッドの実行の移行に応答し、どの前記スレーブ診断ユニットが前記所定のスレッドに関して診断動作を実行するのに現在アクティブであるかの対応する変化を行うことで、前記マスター診断は、どの実行メカニズムが前記所定のスレッドを実行しているかの変化を追跡する、マスター診断ユニットとを具備し、実行の前記移行は、1つの実行メカニズムからもう1つの実行メカニズムへの同期リモートプロシージャコールによる非対称型マルチプロセッサ装置である。
本発明の手法は、非対称型マルチプロセッサ内の各実行メカニズムが独自のスレーブ診断ユニットを備える構造を提供する。これらスレーブ診断ユニットは、実行ユニット間におけるスレッドの移行を追跡するのに関与するマスター診断ユニットに接続されるので、たとえこれが非対称型マルチプロセッサシステムにおいて異なる実行メカニズムにわたって分割される時でも所定のスレッドの実行の単一ビューの提供を可能とする。この重要性は、実行の個々のスレッドがそのような異種環境にわたって追跡可能なので、プログラミング設定に生じる問題を識別及び理解するタスクを軽減し、例えばAMPシステムのプロセッサにわたり分割されるコードは、単一のエンティティとしてデバッグされることができる。
そのような非対称型マルチプロセッサシステムの動作を理解する複雑性及び困難性は、複合的であるので、本発明の手法による利点は、複数の実行メカニズムが同一のメモリマップを共有しないよう非対称型メモリ階層を含むシステムにおいて高められる。そのような非対称型メモリ階層を有するシステムにおいて、異なる実行メカニズムによって使用される異なるメモリマップの複雑性は、同一のデータ項目が異なる実行メカニズムによって異なる方法で参照されることがあるので、個々の実行メカニズムに関連付けられる個々の診断ユニットの使用についてプログラマの理解をより困難にする。スレッド変化を追跡できる本発明の手法によるマスター診断ユニットは、プログラマに代わって異なってマッピングされたこれらメモリを考慮することができるので、プログラマのタスクをかなり軽減する。
非対称型マルチプロセッサは、非対称型メモリ階層を有することにより非対称である一方、その処理アーキテクチャが異なる実行メカニズムのうち少なくとも一部により非対称でもある。これは、異なるプロセッサが異なる種類のタスクでターゲットにされることができるような共通的な場合であり、本発明の手法は、そのような複雑性を扱うプログラマを支援するのに役立つ。
上記の通り、本発明の手法は、実行メカニズム間におけるタスクの移行を制御するプログラム自体のシステムを扱うことができる。これを達成する特定の効果的な方法は、本発明による手法なしで診断センス(diagnostic sense)から扱うのが困難であり、1つの実行メカニズムからもう1つの実行メカニズムへの同期リモートプロシージャコールがスレッドの実行の移行を開始するものである。この場合、移行は、プログラムによって明白に実行され、リモートプロシージャコールは、被発信者の実行メカニズム上で実行し異なる目的地の実行メカニズムをターゲットにしうるルーチンのプールのうち1つによって実行されることができる。
本発明の手法による有用性は、マスター診断ユニットが実行メカニズムによる所定スレッドの実行からの診断出力を提供し、そのスレッドに対する実効メカニズムの変化に応答し、診断出力の対応する変化を行い、プログラマが実行メカニズムの移行の発生を認識できる時に高められる。プログラムの問題が移行に関連付けられることによりこの情報がプログラマに役立つことがよくある。
異なる実行メカニズムに関連付けられるスレーブ診断ユニットは、実行の特定スレッド上で診断動作を実行するためにプログラミングを要求することができる。マスター診断ユニットは、異なる実行メカニズムによって実行されるスレッドを追跡し、所定のスレッドに関する診断コマンドを、関連時間で所定スレッドに関連付けられるスレーブ診断ユニットに向けることができる。
診断ユニットは、各種異なる形式をとることができる。例えば、ブレイクポイントユニット、ウォッチポイントユニット、追跡ユニット及び/又はプロファイリングユニットにすることができる。これら診断ユニットは、純粋なハードウェア・ハードウェア及びソフトウェアの組合せ又は純粋なソフトウェアによって提供されてもよい。いくつかの診断ユニットは、プロセッサの実時間動作を追跡するために特に高い帯域幅を必要とする追跡ユニットのようなハードウェアで実装するのにより適している。
実行メカニズムは、上記の通り各種異なる形式をとることができるのが分かる。例えば、実行メカニズムは、一つ以上の汎用プロセッサ、ダイレクトメモリアクセスユニット、コプロセッサ、VLIMプロセッサ、デジタル信号プロセッサ及び/又はハードウェアアクセラレータユニットを含むことができる。汎用プロセッサ以外のこれら各種形式の実行メカニズムは、各種異なる形式の特殊用途プロセッサとみなすことができる。
上記の非対称型メモリ階層は、同様に各種異なる方法で形成されてもよい。提供されるメモリは、キャッシュメモリ、プライベートメモリ、共有メモリ又はグローバルメモリでもよい。これらは、非対称形式でともに組み合わされてもよく、非対称型マルチプロセッサ装置の最終的な実装及び使用に対して効果的であるが、システム上で診断動作を実行するにおいて困難性の増加したレベルを提供する。並列システムは通常、複数のスレッドを含み、それら各々は、複数の実行メカニズムにわたって時分割されうることが分かる。
もう1つの実施形態によると、本発明は、複数の実行メカニズムでデータ処理動作を実行する各プログラム命令に応答する段階であって、プログラム命令実行のスレッドは、前記複数の実行メカニズム間で時分割され、前記複数の実行メカニズムの少なくとも1つは、一つ以上の他の前記複数の実行メカニズムとは異なる処理アーキテクチャを有する、段階と、関連付けられる各スレーブ診断ユニットで前記複数の実行メカニズム上で診断動作を実行する段階と、前記複数のスレーブ診断ユニットに接続され、実行メカニズム間で所定のスレッドの実行の移行に応答し、どの前記スレーブ診断ユニットが前記所定のスレッドに関して診断動作を実行するのに現在アクティブであるかの対応する変化を行うことで、前記マスター診断は、どの実行メカニズムが前記所定のスレッドを実行しているかの変化を追跡するマスター診断ユニットを使用する段階とを具備し、実行の前記移行は、1つの実行メカニズムからもう1つの実行メカニズムへの同期リモートプロシージャコールによる方法を提供する。
図1は、本発明の手法の一例による非対称型マルチプロセッサ装置を概略的に示す。 図2は、異なる実行メカニズム間におけるプログラム内の所定スレッドの実行の移行とマスター診断ユニットによるそのような移行の追跡とを概略的に示す。 図3は、診断動作の開始とスレッド移行の追跡とを概略的に示すフロー図である。 図4は、1つの実施形態による本発明の手法の診断メカニズムの初期プログラミングを概略的に示すフロー図である。
図1は、汎用コンピュータ4に接続される非対称型マルチプロセッサ装置2を概略的に示す。汎用コンピュータは、診断動作をプログラム及び制御するために使用される。非対称型マルチプロセッサ装置2は、汎用プロセッサ6、デジタル信号プロセッサ8、アクセラレータ10及びダイレクトメモリアクセス(DMA)ユニット12の形式で複数の実行メカニズムを含む。実行メカニズムの異なる組合せは、VLIMプロセッサ及び/又はコプロセッサ等、非対称型マルチプロセッサ装置内に提供されてもよいことが分かる。また、非対称型マルチプロセッサ装置等は、識別可能な、所定の種類からなる複数の実行メカニズムだけでなく、例えば、複数のDSPユニットを備えた単一の汎用プロセッサのような、異なる種類からなる一つ以上の実行メカニズムも含むことができる。
図1の非対称型マルチプロセッサ装置2は、汎用プロセッサ6にローカルなキャッシュメモリ14と、アクセラレータ10にアクセス可能な共有メモリ16と、汎用プロセッサ6と、DMAユニット12と、プライベートメモリ18とを含む非対称型メモリ階層を有する。プライベートメモリ18は、DSPユニット8及びDMAユニット12にのみアクセス可能である。DMAユニット12は、DMAユニット12によって実行されるべきDMA動作を設定する汎用プロセッサ6によって制御される。これらは、プライベートメモリ18及び共有メモリ16間でデータを転送することを通常含む。そのような配置を用いて、入力データのブロックは、汎用プロセッサ6の制御下で共有メモリ16からプライベートメモリ18に転送されることができ、それは、DSPユニット8によって集中的な数値処理にさらされて、その処理結果は、汎用プロセッサ6によってプライベートメモリ18から共有メモリ16に回復されることが分かる。DSPユニット8によって実行されている処理は、同一のプログラムスレッドの一部であり、それはまた、汎用プロセッサ6上で少なくとも部分的に動作し、スレッド内のポイントは、DSPユニット8による処理が要求される所に到達され、そして同期リモートプロシージャコールは、汎用プロセッサ6からDSPユニット8に作成され、DSPユニット8上で処理を開始する。DSPユニット8による処理の終了時、同期リモートプロシージャコールは、他の場所に作成され、又はリモートプロシージャコールからの単一のリターンが作成されてもよい。
図1で分かる通り、各実行メカニズム6、8及び10は、それぞれスレーブ診断ユニット20、22及び24を含む。DMAユニット12は、汎用プロセッサ6の制御下でのみ動作するので、独自のスレーブ診断ユニットを有さない。異なる実行メカニズム6、8、10によって提供される異なるプロセッサ手法は、スレーブ診断ユニット20、22及び24が異なる形式及び機能を有するだけでなく異なる種類のプログラミングを要求し、異なる形式の出力を生成することを意味するのが分かる。非対称型マルチプロセッサ装置2にわたるこの多様性は、異なる実行メカニズム6、8、10間を移行する所定スレッドの実行を理解しようと試みるプログラマにとって従来から困難なことである。
複数のスレーブ診断ユニット20、22、24に追加して、各スレーブ診断ユニット20、22、24に接続されるマスター診断ユニット26が提供される。マスター診断ユニットは、スレーブ診断ユニット20、22、24を介して、同期リモートプロシージャコール及びリターンを識別する等によって、プログラムスレッド移行を監視する働きをする。マスター診断ユニット26は、実行されるべき診断動作をプログラムするために、診断出力を監視するために、及びプログラマに診断出力を表示するために使用される汎用コンピュータ4に接続される。マスター診断ユニット26は、ハードウェア要素として、ハードウェア及びソフトウェアの組合せ要素として、及び汎用コンピュータ4上で実行する純粋なソフトウェア要素として提供されてもよい。
スレーブ診断ユニット20、22及び24は、図示の通り、各実行メカニズム6、8、10内で提供されているが、スレーブ診断ユニット20、22、24は、対象となる実行メカニズム6、8、10の外側に分離して提供されてもよいことが分かる。スレーブ診断ユニットは、複数の実行メカニズム間で共有されることができ、例えば共有メモリ16に対して書き込み又は読み出されているデータを監視している追跡ユニットは、一つより多い実行メカニズム6、8、10について追跡を実行する。それにもかかわらず、そのような追跡ユニットは、少なくとも1つの実行メカニズムについて追跡を実行した点で、少なくとも1つの実行メカニズムに関連付けられる。
図2は、異なる実行メカニズム間のプログラム実行の所定スレッドの移行を概略的に示す図である。この図において、3つの異なる実行メカニズムがある。これらは、図1の汎用プロセッサ6、DSPユニット8及びアクセラレータ10に対応するために考慮されてもよい一方、異なる実行メカニズムに対する他のマッピングが等しく可能である。図示の通り、プログラムスレッドは、実行メカニズム1上で実行を開始し、その後同期リモートプロシージャコールを介して実行メカニズム2への移行にさらされる。1時期実行メカニズム2上での実行後、リターンは、実行メカニズム1に作成される。後続の移行は、図示の通り実行メカニズム2及び3に作成される。この全期間中、マスター診断ユニット26は、異なる実行メカニズム間でプログラムスレッドの実行を切換える同期リモートプロシージャコールの発生を監視し、どの実行メカニズムがプログラムスレッドの処理に現在アクティブであるかを相応して追跡する。これは、図2の左手側で図示される追跡情報である。この追跡情報は、汎用コンピュータ4上に表示されてプログラマによる相互作用にさらされる時、適切なプログラムスレッドに関連して表示されるべき異なるスレーブ診断ユニット20、22、24から回復される診断情報をチャンネルするためにマスター診断ユニット26によって使用される。診断情報表示は、対象となるプログラムのポイントのための現在アクティブな実行メカニズムの識別を含む。一例として、スレッドが実行メカニズム2上で実行している場合、プログラマは、そのスレッドを停止することを望み、その後停止コマンドは、実行メカニズム2がスレッドの処理において現在アクティブであることをマスター診断ユニット26が判断するので、実行メカニズム2に向けられる。
図3は、マスター診断ユニット26によって実行されるスレッド追跡の種類を概略的に示すフロー図である。ステップ28で、実行メカニズム6、8、10上での異なるスレッドの処理が開始され、関連付けられたスレーブ診断ユニット20、22、24は、その診断パラメータ(例えば、ブレイクポイント、ウォッチポイント、プロファイリングパラメータ、トレースパラメータ等)でプログラムされる。ステップ30で、マスター診断ユニット26は、どのスレッドがどの実行メカニズム上で実行しているか識別し、このデータは、スレッドデータテーブル内のように、マスター診断ユニット26によって収集及び保持される。どの実行メカニズムがどの特定のスレッドを実行するかは、ローディング及び他の要素に依存しランタイムで経験的に判断できるので、プログラム自身によって予め定められないことが分かる。
ステップ32で、マスター診断ユニット26は、同期リモートプロシージャコールの発行等に基づいて、任意のスレッド移行が生じたかをチェックするよう監視する。スレッド移行が検出されると、その後処理は、ステップ34に進み、どのスレッドがどの実行メカニズム上で実行しているかを示すデータは、発信者(caller)がもはやスレッドを実行せず被発信者(callee)が現在そのスレッドを実行していることを考慮するために更新される。
ステップ36で、スレーブ診断ユニット20、22及び24のプログラミングは、発生した移行を考慮するために(必要に応じて)変更される。例えば、発信者の実行ユニットがスレッドに関する特定のブレイクポイント又はウォッチポイントのために監視していた場合、その後実行メカニズムがもはやそのスレッドを実行していない時、その後それらブレイクポイント及びウォッチポイントのために監視を継続することは、異なるプログラムスレッドに応答して発生する実行とともにそれらブレイクポイント又はウォッチポイントのエイリアシングに起因して誤った結果を与えることがあるので適切ではない。ステップ36でスレーブ診断ユニットの任意の必要な再プログラミング後、処理は、ステップ32に戻され、さらなるスレッドの移行のための監視が実行されることができる。
図4は、図1のシステム内で診断動作の設定を概略的に説明する。ステップ38で、汎用コンピュータ4を用いるプログラマは、所定の診断コマンドを実行するよう命令し、このコマンドは、マスター診断ユニット26に送信され、ステップ38で受信される。ステップ40は、どの診断コマンドが実行されるべきかに関してどの実行メカニズム(又はウォッチポイントの場合におけるメモリ)がスレッドに関連付けられるかを判断するマスター診断ユニット26に対応する。ステップ42ではその後、受信されたコマンドに関してスレッドのための関連スレーブ診断ユニットをプログラム/初期化する。
10:アクセラレータ
16:共有メモリ
18:プライベートメモリ
26:マスター診断ユニット

Claims (29)

  1. 非対称型マルチプロセッサ装置であって、
    データ処理動作を実行するために各プログラム命令に応答する複数の実行メカニズムと、プログラム命令実行のスレッドは、前記複数の実行メカニズム間で時分割され、前記複数の実行メカニズムの少なくとも1つは、一つ以上の他の前記複数の実行メカニズムとは異なる処理アーキテクチャを有し、
    診断動作を実行するために各実行メカニズムに各々関連付けられる複数のスレーブ診断ユニットと、
    前記複数のスレーブ診断ユニットに接続され、実行メカニズム間における所定のスレッドの実行の移行に応答し、前記所定のスレッドの処理に関してアクティブとなった前記実行メカニズムがどれであるかを判別することで、マスター診断ユニットは、どの実行メカニズムが前記所定のスレッドを実行しているかの変化を追跡する、マスター診断ユニットと
    を具備し、
    実行の前記移行は、1つの実行メカニズムからもう1つの実行メカニズムへの同期リモートプロシージャコールによることを特徴とする装置。
  2. 前記複数の実行メカニズムが同一のメモリマップを共有しないよう非対称型メモリ階層を具備することを特徴とする請求項1に記載の非対称型マルチプロセッサ装置。
  3. 前記マスター診断ユニットは、実行メカニズムから診断出力を提供し、前記診断出力における対応する変化を行うために前記所定のスレッドの実行メカニズムにおける変化に応答することを特徴とする請求項1〜2の何れか1項に記載の非対称型マルチプロセッサ装置。
  4. 前記マスター診断ユニットは、現在前記所定のスレッドを実行する、実行メカニズムに関連付けられるスレーブ診断ユニットに前記所定のスレッドに関する診断コマンドを向けることを特徴とする請求項1〜3の何れか1項に記載の非対称型マルチプロセッサ装置。
  5. 前記マスター診断ユニットは、一部が実行されることができるそれら実行メカニズムの各々の上で前記所定のスレッドの前記一部に関するブレイクポイントを設定することを特徴とする請求項1〜4の何れか1項に記載の非対称型マルチプロセッサ装置。
  6. 前記ブレイクポイントは、各実行メカニズムによって前記一部に使用されるメモリアドレスに一致するメモリアドレスで設定されることを特徴とする請求項5に記載の非対称型マルチプロセッサ装置。
  7. 前記ブレイクポイントがトリガされる時、前記マスター診断ユニットは、どのスレッドが前記ブレイクポイントをトリガしたかを判断することを特徴とする請求項5に記載の非対称型マルチプロセッサ装置。
  8. 複数のメモリを具備し、前記マスター診断ユニットは、データ項目を格納することができる前記複数のメモリの各々に関するデータ項目のウォッチポイントを設定することを特徴とする請求項1〜7の何れか1項に記載の非対称型マルチプロセッサ装置。
  9. 前記ウォッチポイントは、各メモリ内の前記データ項目に使用されるメモリアドレスに一致するメモリアドレスで設定されることを特徴とする請求項8に記載の非対称型マルチプロセッサ装置。
  10. 前記ウォッチポイントがトリガされる時、前記マスター診断ユニットは、どのスレッドが前記ウォッチポイントをトリガしたかを判断することを特徴とする請求項8に記載の非対称型マルチプロセッサ装置。
  11. 前記スレーブ診断ユニットは、スレーブ追跡ユニットであり、前記マスター診断ユニットは、マスター追跡ユニットであり、前記マスター追跡ユニットは、前記所定のスレッドのための追跡出力を形成する時、異なる実行メカニズム間における前記所定のスレッドの実行の移行を追跡することを特徴とする請求項1〜10の何れか1項に記載の非対称型マルチプロセッサ装置。
  12. 前記スレーブ診断ユニットは、スレーブプロファイリングユニットであり、前記マスター診断ユニットは、マスタープロファイリングユニットであり、前記マスタープロファイリングユニットは、前記所定のスレッドのためのプロファイリング出力を形成する時、異なる実行メカニズム間における前記所定のスレッドの実行の移行を追跡することを特徴とする請求項1〜11の何れか1項に記載の非対称型マルチプロセッサ装置。
  13. 前記複数の実行メカニズムは、
    汎用プロセッサと、
    ダイレクトメモリアクセスユニットと、
    コプロセッサと、
    VLIWプロセッサと、
    デジタル信号プロセッサと、
    ハードウェアアクセラレータユニットと
    の一つ以上を具備することを特徴とする請求項1〜12の何れか1項に記載の非対称型マルチプロセッサ装置。
  14. 前記非対称型メモリ階層は、
    前記実行メカニズムの全てにアクセス可能なグローバル共有メモリと、
    前記実行メカニズムの少なくとも2つにアクセス可能な共有メモリと、
    前記実行メカニズムの1つにアクセス可能なプライベートメモリと
    の2つ以上を具備することを特徴とする請求項2に記載の非対称型マルチプロセッサ装置。
  15. 非対称型マルチプロセッサ装置上で診断動作を実行する方法であって、
    複数の実行メカニズムでデータ処理動作を実行する各プログラム命令に応答する段階であって、プログラム命令実行のスレッドは、前記複数の実行メカニズム間で時分割され、前記複数の実行メカニズムの少なくとも1つは、一つ以上の他の前記複数の実行メカニズムとは異なる処理アーキテクチャを有する、段階と、
    関連付けられる各スレーブ診断ユニットで前記複数の実行メカニズム上で診断動作を実行する段階と、
    前記複数のスレーブ診断ユニットに接続され、実行メカニズム間で所定のスレッドの実行の移行に応答し、前記所定のスレッドの処理に関してアクティブとなった前記実行メカニズムがどれであるかを判別することで、マスター診断ユニットは、どの実行メカニズムが前記所定のスレッドを実行しているかの変化を追跡するマスター診断ユニットを使用する段階と
    を具備し、
    実行の前記移行は、1つの実行メカニズムからもう1つの実行メカニズムへの同期リモートプロシージャコールによることを特徴とする方法。
  16. 前記非対称型マルチプロセシング装置は、前記複数の実行メカニズムが同一のメモリマップを共有しないよう非対称型メモリ階層を具備することを特徴とする請求項15に記載の方法。
  17. 前記マスター診断ユニットは、実行メカニズムから診断出力を提供し、前記診断出力における対応する変化を行うために前記所定のスレッドのための実行メカニズムにおける変化に応答することを特徴とする請求項15〜16の何れか1項に記載の方法。
  18. 前記マスター診断ユニットは、現在前記所定のスレッドを実行する、実行メカニズムに関連付けられるスレーブ診断ユニットに前記所定のスレッドに関する診断コマンドを向けることを特徴とする請求項15〜17の何れか1項に記載の方法。
  19. 前記マスター診断ユニットは、一部が実行されることができるそれら実行メカニズムの各々の上で前記所定のスレッドの前記一部に関するブレイクポイントを設定することを特徴とする請求項15〜18の何れか1項に記載の方法。
  20. 前記ブレイクポイントは、各実行メカニズムによって前記一部に使用されるメモリアドレスに一致するメモリアドレスで設定されることを特徴とする請求項19に記載の方法。
  21. 前記ブレイクポイントがトリガされる時、前記マスター診断ユニットは、どのスレッドが前記ブレイクポイントをトリガしたかを判断することを特徴とする請求項19に記載の方法。
  22. 前記非対称型マルチプロセシング装置は、複数のメモリを具備し、前記マスター診断ユニットは、データ項目を格納することができる前記複数のメモリの各々に関するデータ項目のためのウォッチポイントを設定することを特徴とする請求項15〜21の何れか1項に記載の方法。
  23. 前記ウォッチポイントは、各メモリ内の前記データ項目に使用されるメモリアドレスに一致するメモリアドレスで設定されることを特徴とする請求項22に記載の方法。
  24. 前記ウォッチポイントがトリガされる時、前記マスター診断ユニットは、どのスレッドが前記ウォッチポイントをトリガしたかを判断することを特徴とする請求項22に記載の方法。
  25. 前記スレーブ診断ユニットは、スレーブ追跡ユニットであり、前記マスター診断ユニットは、マスター追跡ユニットであり、前記マスター追跡ユニットは、前記所定のスレッドのための追跡出力を形成する時、異なる実行メカニズム間における前記所定のスレッドの実行の移行を追跡することを特徴とする請求項15〜24の何れか1項に記載の方法。
  26. 前記スレーブ診断ユニットは、スレーブプロファイリングユニットであり、前記マスター診断ユニットは、マスタープロファイリングユニットであり、前記マスタープロファイリングユニットは、前記所定のスレッドのためのプロファイリング出力を形成する時、異なる実行メカニズム間における前記所定のスレッドの実行の移行を追跡することを特徴とする請求項15〜25の何れか1項に記載の方法。
  27. 前記複数の実行メカニズムは、
    汎用プロセッサと、
    ダイレクトメモリアクセスユニットと、
    コプロセッサと、
    VLIプロセッサと、
    デジタル信号プロセッサと、
    ハードウェアアクセラレータユニットと
    の一つ以上を具備することを特徴とする請求項15〜26の何れか1項に記載の方法。
  28. 前記非対称型メモリ階層は、
    前記実行メカニズムの全てにアクセス可能なグローバル共有メモリと、
    前記実行メカニズムの少なくとも2つにアクセス可能な共有メモリと、
    前記実行メカニズムの1つにアクセス可能なプライベートメモリと
    の2つ以上を具備することを特徴とする請求項16に記載の方法。
  29. 請求項15〜28の何れか1項に記載の方法に従って、マスター診断ユニット及び複数のスレーブ診断ユニットを制御するためにコンピュータを制御するためのコンピュータプログラム。
JP2009533925A 2006-10-24 2007-08-24 非対称型マルチプロセッサ装置上の診断動作の実行 Expired - Fee Related JP5054115B2 (ja)

Applications Claiming Priority (5)

Application Number Priority Date Filing Date Title
US85375606P 2006-10-24 2006-10-24
US60/853,756 2006-10-24
GB0709182A GB2443277B (en) 2006-10-24 2007-05-11 Performing diagnostics operations upon an asymmetric multiprocessor apparatus
GB0709182.0 2007-05-11
PCT/GB2007/003223 WO2008050076A1 (en) 2006-10-24 2007-08-24 Performing diagnostic operations upon an asymmetric multiprocessor apparatus

Publications (2)

Publication Number Publication Date
JP2010507855A JP2010507855A (ja) 2010-03-11
JP5054115B2 true JP5054115B2 (ja) 2012-10-24

Family

ID=38219318

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2009533925A Expired - Fee Related JP5054115B2 (ja) 2006-10-24 2007-08-24 非対称型マルチプロセッサ装置上の診断動作の実行

Country Status (11)

Country Link
US (5) US20080098208A1 (ja)
EP (1) EP2076837B1 (ja)
JP (1) JP5054115B2 (ja)
KR (1) KR101325229B1 (ja)
CN (1) CN101529391B (ja)
DE (1) DE602007009857D1 (ja)
GB (1) GB2443277B (ja)
IL (1) IL197314A (ja)
MY (1) MY144449A (ja)
TW (1) TWI407374B (ja)
WO (1) WO2008050076A1 (ja)

Families Citing this family (266)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6786420B1 (en) 1997-07-15 2004-09-07 Silverbrook Research Pty. Ltd. Data distribution mechanism in the form of ink dots on cards
US6618117B2 (en) 1997-07-12 2003-09-09 Silverbrook Research Pty Ltd Image sensing apparatus including a microcontroller
US6624848B1 (en) 1997-07-15 2003-09-23 Silverbrook Research Pty Ltd Cascading image modification using multiple digital cameras incorporating image processing
US6948794B2 (en) 1997-07-15 2005-09-27 Silverbrook Reserach Pty Ltd Printhead re-capping assembly for a print and demand digital camera system
US6879341B1 (en) 1997-07-15 2005-04-12 Silverbrook Research Pty Ltd Digital camera system containing a VLIW vector processor
US7110024B1 (en) 1997-07-15 2006-09-19 Silverbrook Research Pty Ltd Digital camera system having motion deblurring means
US6690419B1 (en) 1997-07-15 2004-02-10 Silverbrook Research Pty Ltd Utilising eye detection methods for image processing in a digital image camera
AUPP702098A0 (en) 1998-11-09 1998-12-03 Silverbrook Research Pty Ltd Image creation method and apparatus (ART73)
AUPQ056099A0 (en) 1999-05-25 1999-06-17 Silverbrook Research Pty Ltd A method and apparatus (pprint01)
US7614037B2 (en) * 2004-05-21 2009-11-03 Microsoft Corporation Method and system for graph analysis and synchronization
US8079019B2 (en) * 2007-11-21 2011-12-13 Replay Solutions, Inc. Advancing and rewinding a replayed program execution
GB2443277B (en) * 2006-10-24 2011-05-18 Advanced Risc Mach Ltd Performing diagnostics operations upon an asymmetric multiprocessor apparatus
US8341604B2 (en) * 2006-11-15 2012-12-25 Qualcomm Incorporated Embedded trace macrocell for enhanced digital signal processor debugging operations
US8380966B2 (en) * 2006-11-15 2013-02-19 Qualcomm Incorporated Method and system for instruction stuffing operations during non-intrusive digital signal processor debugging
US8370806B2 (en) * 2006-11-15 2013-02-05 Qualcomm Incorporated Non-intrusive, thread-selective, debugging method and system for a multi-thread digital signal processor
US8533530B2 (en) * 2006-11-15 2013-09-10 Qualcomm Incorporated Method and system for trusted/untrusted digital signal processor debugging operations
US10353797B2 (en) * 2006-12-29 2019-07-16 International Business Machines Corporation Using memory tracking data to inform a memory map tool
US8484516B2 (en) * 2007-04-11 2013-07-09 Qualcomm Incorporated Inter-thread trace alignment method and system for a multi-threaded processor
WO2008144960A1 (en) * 2007-05-31 2008-12-04 Intel Coporation Method and apparatus for mpi program optimization
CN101329638B (zh) * 2007-06-18 2011-11-09 国际商业机器公司 程序代码的并行性的分析方法和系统
US20090007115A1 (en) * 2007-06-26 2009-01-01 Yuanhao Sun Method and apparatus for parallel XSL transformation with low contention and load balancing
US8548777B2 (en) * 2007-09-28 2013-10-01 Rockwell Automation Technologies, Inc. Automated recommendations from simulation
US7801710B2 (en) * 2007-09-28 2010-09-21 Rockwell Automation Technologies, Inc. Simulation controls for model variability and randomness
US20090089031A1 (en) * 2007-09-28 2009-04-02 Rockwell Automation Technologies, Inc. Integrated simulation of controllers and devices
US8181165B2 (en) * 2007-10-30 2012-05-15 International Business Machines Corporation Using annotations to reuse variable declarations to generate different service functions
IL187038A0 (en) * 2007-10-30 2008-02-09 Sandisk Il Ltd Secure data processing for unaligned data
US8402438B1 (en) 2007-12-03 2013-03-19 Cadence Design Systems, Inc. Method and system for generating verification information and tests for software
US8156474B2 (en) * 2007-12-28 2012-04-10 Cadence Design Systems, Inc. Automation of software verification
US8468504B2 (en) * 2007-12-28 2013-06-18 Streaming Networks (Pvt.) Ltd. Method and apparatus for interactive scheduling of VLIW assembly code
US9063778B2 (en) * 2008-01-09 2015-06-23 Microsoft Technology Licensing, Llc Fair stateless model checking
GB2456813B (en) * 2008-01-24 2012-03-07 Advanced Risc Mach Ltd Diagnostic context construction and comparison
US8127080B2 (en) * 2008-02-01 2012-02-28 International Business Machines Corporation Wake-and-go mechanism with system address bus transaction master
US8788795B2 (en) * 2008-02-01 2014-07-22 International Business Machines Corporation Programming idiom accelerator to examine pre-fetched instruction streams for multiple processors
US8880853B2 (en) * 2008-02-01 2014-11-04 International Business Machines Corporation CAM-based wake-and-go snooping engine for waking a thread put to sleep for spinning on a target address lock
US8612977B2 (en) * 2008-02-01 2013-12-17 International Business Machines Corporation Wake-and-go mechanism with software save of thread state
US8250396B2 (en) * 2008-02-01 2012-08-21 International Business Machines Corporation Hardware wake-and-go mechanism for a data processing system
US8732683B2 (en) * 2008-02-01 2014-05-20 International Business Machines Corporation Compiler providing idiom to idiom accelerator
US8225120B2 (en) * 2008-02-01 2012-07-17 International Business Machines Corporation Wake-and-go mechanism with data exclusivity
US8145849B2 (en) 2008-02-01 2012-03-27 International Business Machines Corporation Wake-and-go mechanism with system bus response
US8386822B2 (en) * 2008-02-01 2013-02-26 International Business Machines Corporation Wake-and-go mechanism with data monitoring
US8171476B2 (en) * 2008-02-01 2012-05-01 International Business Machines Corporation Wake-and-go mechanism with prioritization of threads
US8316218B2 (en) * 2008-02-01 2012-11-20 International Business Machines Corporation Look-ahead wake-and-go engine with speculative execution
US8015379B2 (en) * 2008-02-01 2011-09-06 International Business Machines Corporation Wake-and-go mechanism with exclusive system bus response
US8452947B2 (en) * 2008-02-01 2013-05-28 International Business Machines Corporation Hardware wake-and-go mechanism and content addressable memory with instruction pre-fetch look-ahead to detect programming idioms
US8725992B2 (en) 2008-02-01 2014-05-13 International Business Machines Corporation Programming language exposing idiom calls to a programming idiom accelerator
US8312458B2 (en) * 2008-02-01 2012-11-13 International Business Machines Corporation Central repository for wake-and-go mechanism
US8341635B2 (en) * 2008-02-01 2012-12-25 International Business Machines Corporation Hardware wake-and-go mechanism with look-ahead polling
US8516484B2 (en) * 2008-02-01 2013-08-20 International Business Machines Corporation Wake-and-go mechanism for a data processing system
US8640141B2 (en) * 2008-02-01 2014-01-28 International Business Machines Corporation Wake-and-go mechanism with hardware private array
JP5278336B2 (ja) * 2008-02-15 2013-09-04 日本電気株式会社 プログラム並列化装置、プログラム並列化方法及びプログラム並列化プログラム
US8615647B2 (en) 2008-02-29 2013-12-24 Intel Corporation Migrating execution of thread between cores of different instruction set architecture in multi-core processor and transitioning each core to respective on / off power state
WO2009118731A2 (en) * 2008-03-27 2009-10-01 Rocketick Technologies Ltd Design simulation using parallel processors
US8776030B2 (en) * 2008-04-09 2014-07-08 Nvidia Corporation Partitioning CUDA code for execution by a general purpose processor
US9678775B1 (en) * 2008-04-09 2017-06-13 Nvidia Corporation Allocating memory for local variables of a multi-threaded program for execution in a single-threaded environment
GB0808576D0 (en) * 2008-05-12 2008-06-18 Xmos Ltd Compiling and linking
FR2931269A1 (fr) * 2008-05-16 2009-11-20 Ateji Soc Par Actions Simplifi Procede et systeme de developpement de programmes paralleles
US9223677B2 (en) 2008-06-11 2015-12-29 Arm Limited Generation of trace data in a multi-processor system
WO2009153621A1 (en) * 2008-06-19 2009-12-23 Freescale Semiconductor, Inc. A system, method and computer program product for scheduling processor entity tasks in a multiple-processing entity system
US8966490B2 (en) * 2008-06-19 2015-02-24 Freescale Semiconductor, Inc. System, method and computer program product for scheduling a processing entity task by a scheduler in response to a peripheral task completion indicator
WO2009153619A1 (en) * 2008-06-19 2009-12-23 Freescale Semiconductor, Inc. A system, method and computer program product for debugging a system
US8572577B2 (en) * 2008-06-20 2013-10-29 International Business Machines Corporation Monitoring changes to data within a critical section of a threaded program
US8332825B2 (en) * 2008-06-26 2012-12-11 Microsoft Corporation Dynamically monitoring application behavior
US9032377B2 (en) * 2008-07-10 2015-05-12 Rocketick Technologies Ltd. Efficient parallel computation of dependency problems
WO2010004474A2 (en) * 2008-07-10 2010-01-14 Rocketic Technologies Ltd Efficient parallel computation of dependency problems
JP2010026851A (ja) * 2008-07-22 2010-02-04 Panasonic Corp コンパイラによる最適化方法
US8028113B2 (en) * 2008-08-15 2011-09-27 International Business Machines Corporation Methods and systems for deadlock-free allocation of memory
US20110113221A1 (en) * 2008-08-18 2011-05-12 Telefonaktiebolaget L M Ericsson (Publ) Data Sharing in Chip Multi-Processor Systems
US8230442B2 (en) 2008-09-05 2012-07-24 International Business Machines Corporation Executing an accelerator application program in a hybrid computing environment
US8755515B1 (en) 2008-09-29 2014-06-17 Wai Wu Parallel signal processing system and method
US8504344B2 (en) * 2008-09-30 2013-08-06 Cadence Design Systems, Inc. Interface between a verification environment and a hardware acceleration engine
US20100095286A1 (en) * 2008-10-10 2010-04-15 Kaplan David A Register reduction and liveness analysis techniques for program code
US8418146B2 (en) * 2008-11-26 2013-04-09 Microsoft Corporation Sampling techniques for dynamic data-race detection
GB0823329D0 (en) * 2008-12-22 2009-01-28 Geotate Bv Position signal sampling method and apparatus
US9274930B2 (en) * 2008-12-22 2016-03-01 Microsoft Technology Licensing, Llc Debugging system using static analysis
KR101511273B1 (ko) * 2008-12-29 2015-04-10 삼성전자주식회사 멀티 코어 프로세서를 이용한 3차원 그래픽 렌더링 방법 및시스템
US8527734B2 (en) 2009-01-23 2013-09-03 International Business Machines Corporation Administering registered virtual addresses in a hybrid computing environment including maintaining a watch list of currently registered virtual addresses by an operating system
US9286232B2 (en) * 2009-01-26 2016-03-15 International Business Machines Corporation Administering registered virtual addresses in a hybrid computing environment including maintaining a cache of ranges of currently registered virtual addresses
US8843880B2 (en) * 2009-01-27 2014-09-23 International Business Machines Corporation Software development for a hybrid computing environment
US8255909B2 (en) 2009-01-28 2012-08-28 International Business Machines Corporation Synchronizing access to resources in a hybrid computing environment
US20100191923A1 (en) * 2009-01-29 2010-07-29 International Business Machines Corporation Data Processing In A Computing Environment
US9170864B2 (en) * 2009-01-29 2015-10-27 International Business Machines Corporation Data processing in a hybrid computing environment
EP2396725A1 (en) * 2009-02-16 2011-12-21 Inchron GmbH Method for analysing the real-time capability of a system
US8205117B2 (en) * 2009-02-25 2012-06-19 Hewlett-Packard Development Company, L.P. Migratory hardware diagnostic testing
JP5316128B2 (ja) * 2009-03-17 2013-10-16 トヨタ自動車株式会社 故障診断システム、電子制御ユニット、故障診断方法
US20100242014A1 (en) * 2009-03-17 2010-09-23 Xiaohan Zhu Symmetric multi-processor operating system for asymmetric multi-processor architecture
US8239847B2 (en) * 2009-03-18 2012-08-07 Microsoft Corporation General distributed reduction for data parallel computing
US8145723B2 (en) * 2009-04-16 2012-03-27 International Business Machines Corporation Complex remote update programming idiom accelerator
US8886919B2 (en) * 2009-04-16 2014-11-11 International Business Machines Corporation Remote update programming idiom accelerator with allocated processor resources
US8230201B2 (en) 2009-04-16 2012-07-24 International Business Machines Corporation Migrating sleeping and waking threads between wake-and-go mechanisms in a multiple processor data processing system
US8082315B2 (en) * 2009-04-16 2011-12-20 International Business Machines Corporation Programming idiom accelerator for remote update
US8843927B2 (en) * 2009-04-23 2014-09-23 Microsoft Corporation Monitoring and updating tasks arrival and completion statistics without data locking synchronization
US8413108B2 (en) * 2009-05-12 2013-04-02 Microsoft Corporation Architectural data metrics overlay
US9378062B2 (en) * 2009-06-18 2016-06-28 Microsoft Technology Licensing, Llc Interface between a resource manager and a scheduler in a process
US8719831B2 (en) * 2009-06-18 2014-05-06 Microsoft Corporation Dynamically change allocation of resources to schedulers based on feedback and policies from the schedulers and availability of the resources
DE102009025572A1 (de) * 2009-06-19 2010-12-23 Wolfgang Pree Gmbh Eine Methode zur Entwicklung von garantiert korrekten Echtzeitsystemen
US8914799B2 (en) * 2009-06-30 2014-12-16 Oracle America Inc. High performance implementation of the OpenMP tasking feature
FR2948206B1 (fr) * 2009-07-15 2011-08-05 Commissariat Energie Atomique Dispositif et procede pour l'execution distribuee de traitements de donnees numeriques
JP5452125B2 (ja) 2009-08-11 2014-03-26 クラリオン株式会社 データ処理装置及びデータ処理方法
US8990783B1 (en) 2009-08-13 2015-03-24 The Mathworks, Inc. Scheduling generated code based on target characteristics
US8566804B1 (en) * 2009-08-13 2013-10-22 The Mathworks, Inc. Scheduling generated code based on target characteristics
US8381194B2 (en) 2009-08-19 2013-02-19 Apple Inc. Methods and apparatuses for selective code coverage
US8392403B2 (en) * 2009-09-18 2013-03-05 Microsoft Corporation Management of data and computation in data centers
US9594656B2 (en) 2009-10-26 2017-03-14 Microsoft Technology Licensing, Llc Analysis and visualization of application concurrency and processor resource utilization
US9430353B2 (en) * 2009-10-26 2016-08-30 Microsoft Technology Licensing, Llc Analysis and visualization of concurrent thread execution on processor cores
US8359588B2 (en) * 2009-11-25 2013-01-22 Arm Limited Reducing inter-task latency in a multiprocessor system
US8392929B2 (en) * 2009-12-15 2013-03-05 Microsoft Corporation Leveraging memory isolation hardware technology to efficiently detect race conditions
US8826234B2 (en) * 2009-12-23 2014-09-02 Intel Corporation Relational modeling for performance analysis of multi-core processors
WO2011083459A1 (en) * 2010-01-08 2011-07-14 Daniel Geist Utilizing temporal assertions in a debugger
US8516467B2 (en) * 2010-01-29 2013-08-20 Nintendo Co., Ltd. Method and apparatus for enhancing comprehension of code time complexity and flow
US9417905B2 (en) * 2010-02-03 2016-08-16 International Business Machines Corporation Terminating an accelerator application program in a hybrid computing environment
US8578132B2 (en) * 2010-03-29 2013-11-05 International Business Machines Corporation Direct injection of data to be transferred in a hybrid computing environment
US8612952B2 (en) 2010-04-07 2013-12-17 International Business Machines Corporation Performance optimization based on data accesses during critical sections
US8959496B2 (en) * 2010-04-21 2015-02-17 Microsoft Corporation Automatic parallelization in a tracing just-in-time compiler system
US9015443B2 (en) 2010-04-30 2015-04-21 International Business Machines Corporation Reducing remote reads of memory in a hybrid computing environment
US8756590B2 (en) * 2010-06-22 2014-06-17 Microsoft Corporation Binding data parallel device source code
US8972995B2 (en) * 2010-08-06 2015-03-03 Sonics, Inc. Apparatus and methods to concurrently perform per-thread as well as per-tag memory access scheduling within a thread and across two or more threads
US9652365B2 (en) * 2010-08-24 2017-05-16 Red Hat, Inc. Fault configuration using a registered list of controllers
US20120240224A1 (en) * 2010-09-14 2012-09-20 Georgia Tech Research Corporation Security systems and methods for distinguishing user-intended traffic from malicious traffic
US8990551B2 (en) 2010-09-16 2015-03-24 Microsoft Technology Licensing, Llc Analysis and visualization of cluster resource utilization
US20120096445A1 (en) * 2010-10-18 2012-04-19 Nokia Corporation Method and apparatus for providing portability of partially accelerated signal processing applications
US8656496B2 (en) * 2010-11-22 2014-02-18 International Business Machines Corporations Global variable security analysis
US8832659B2 (en) * 2010-12-06 2014-09-09 University Of Washington Through Its Center For Commercialization Systems and methods for finding concurrency errors
US8959501B2 (en) * 2010-12-14 2015-02-17 Microsoft Corporation Type and length abstraction for data types
GB2486485B (en) 2010-12-16 2012-12-19 Imagination Tech Ltd Method and apparatus for scheduling the issue of instructions in a microprocessor using multiple phases of execution
US20120160272A1 (en) * 2010-12-23 2012-06-28 United Microelectronics Corp. Cleaning method of semiconductor process
KR101785116B1 (ko) * 2010-12-24 2017-10-17 한양대학교 산학협력단 모뎀 하드웨어에 독립적인 라디오 어플리케이션을 위한 소프트웨어 정의 라디오 단말 장치
US8856764B2 (en) * 2011-01-25 2014-10-07 International Business Machines Corporation Distributed static analysis of computer software applications
US8566831B2 (en) 2011-01-26 2013-10-22 International Business Machines Corporation Execution of work units in a heterogeneous computing environment
US8726245B2 (en) * 2011-01-28 2014-05-13 International Business Machines Corporation Static analysis of computer software applications having a model-view-controller architecture
DE102011004363B4 (de) * 2011-02-18 2023-10-05 Airbus Operations Gmbh Steuervorrichtung zum Steuern von Netzwerkteilnehmern, Verfahren zum Betreiben eines Computernetzwerks und Computernetzwerk
US8533720B2 (en) 2011-02-25 2013-09-10 International Business Machines Corporation Offloading work from one type to another type of processor based on the count of each type of service call instructions in the work unit
US8621430B2 (en) 2011-03-03 2013-12-31 International Business Machines Corporation Method for code transformation supporting temporal abstraction of parameters
US9189283B2 (en) * 2011-03-03 2015-11-17 Hewlett-Packard Development Company, L.P. Task launching on hardware resource for client
GB2489278B (en) * 2011-03-24 2019-12-25 Advanced Risc Mach Ltd Improving the scheduling of tasks to be performed by a non-coherent device
US8650542B1 (en) * 2011-03-25 2014-02-11 The Mathworks, Inc. Hierarchical, self-describing function objects
US9015688B2 (en) * 2011-04-01 2015-04-21 Intel Corporation Vectorization of scalar functions including vectorization annotations and vectorized function signatures matching
US9128748B2 (en) * 2011-04-12 2015-09-08 Rocketick Technologies Ltd. Parallel simulation using multiple co-simulators
US8949777B2 (en) * 2011-04-22 2015-02-03 Intel Corporation Methods and systems for mapping a function pointer to the device code
US8855194B2 (en) * 2011-05-09 2014-10-07 Texas Instruments Incorporated Updating non-shadow registers in video encoder
US9043363B2 (en) * 2011-06-03 2015-05-26 Oracle International Corporation System and method for performing memory management using hardware transactions
US9069545B2 (en) * 2011-07-18 2015-06-30 International Business Machines Corporation Relaxation of synchronization for iterative convergent computations
US20130055224A1 (en) * 2011-08-25 2013-02-28 Nec Laboratories America, Inc. Optimizing compiler for improving application performance on many-core coprocessors
GB2495959A (en) 2011-10-26 2013-05-01 Imagination Tech Ltd Multi-threaded memory access processor
US8219684B1 (en) * 2011-11-02 2012-07-10 Google Inc. Redundant data requests with cancellation
US9043765B2 (en) * 2011-11-09 2015-05-26 Microsoft Technology Licensing, Llc Simultaneously targeting multiple homogeneous and heterogeneous runtime environments
US8615614B2 (en) * 2011-11-30 2013-12-24 Freescale Semiconductor, Inc. Message passing using direct memory access unit in a data processing system
US9367687B1 (en) * 2011-12-22 2016-06-14 Emc Corporation Method for malware detection using deep inspection and data discovery agents
KR101885211B1 (ko) * 2012-01-27 2018-08-29 삼성전자 주식회사 Gpu의 자원 할당을 위한 방법 및 장치
US9686152B2 (en) * 2012-01-27 2017-06-20 Microsoft Technology Licensing, Llc Techniques for tracking resource usage statistics per transaction across multiple layers of protocols
US8793697B2 (en) * 2012-02-23 2014-07-29 Qualcomm Incorporated Method and system for scheduling requests in a portable computing device
US8949809B2 (en) 2012-03-01 2015-02-03 International Business Machines Corporation Automatic pipeline parallelization of sequential code
US8910137B2 (en) 2012-04-13 2014-12-09 International Business Machines Corporation Code profiling of executable library for pipeline parallelization
US8838861B2 (en) 2012-05-09 2014-09-16 Qualcomm Incorporated Methods and apparatuses for trace multicast across a bus structure, and related systems
US9928109B2 (en) 2012-05-09 2018-03-27 Nvidia Corporation Method and system for processing nested stream events
DE102012011584A1 (de) * 2012-06-13 2013-12-19 Robert Bosch Gmbh Ressourcen-Managementsystem fürAutomatisierungsanlagen
US8904371B2 (en) * 2012-06-19 2014-12-02 Telefonaktiebolaget L M Ericsson (Publ) Data handling among actors in a dataflow programming environment
RU2012127578A (ru) 2012-07-02 2014-01-10 ЭлЭсАй Корпорейшн Анализатор применимости программного модуля для разработки и тестирования программного обеспечения для многопроцессорных сред
RU2012127581A (ru) * 2012-07-02 2014-01-10 ЭлЭсАй Корпорейшн Генератор исходного кода для разработки и тестирования программного обеспечения для многопроцессорных сред
EP2706420B1 (de) * 2012-09-05 2015-03-18 Siemens Aktiengesellschaft Verfahren zum Betreiben eines Automatisierungsgerätes
CN109240704B (zh) * 2012-11-06 2022-06-14 相干逻辑公司 用于设计重用的多处理器编程工具包
US9477585B2 (en) * 2012-11-09 2016-10-25 Coherent Logix, Incorporated Real time analysis and control for a multiprocessor system
US9021426B2 (en) * 2012-12-04 2015-04-28 International Business Machines Corporation Streamlining hardware initialization code
CN104781803B (zh) * 2012-12-26 2018-06-15 英特尔公司 用于架构不同核的线程迁移支持
US9519568B2 (en) 2012-12-31 2016-12-13 Nvidia Corporation System and method for debugging an executing general-purpose computing on graphics processing units (GPGPU) application
US20140195834A1 (en) * 2013-01-04 2014-07-10 Microsoft Corporation High throughput low latency user mode drivers implemented in managed code
US9323543B2 (en) 2013-01-04 2016-04-26 Microsoft Technology Licensing, Llc Capability based device driver framework
US9811319B2 (en) 2013-01-04 2017-11-07 Microsoft Technology Licensing, Llc Software interface for a hardware device
US9207969B2 (en) * 2013-01-25 2015-12-08 Microsoft Technology Licensing, Llc Parallel tracing for performance and detail
US8762916B1 (en) * 2013-02-25 2014-06-24 Xilinx, Inc. Automatic generation of a data transfer network
US8924193B2 (en) * 2013-03-14 2014-12-30 The Mathworks, Inc. Generating variants from file differences
US9471456B2 (en) * 2013-05-15 2016-10-18 Nvidia Corporation Interleaved instruction debugger
US10802876B2 (en) * 2013-05-22 2020-10-13 Massachusetts Institute Of Technology Multiprocessor scheduling policy with deadline constraint for determining multi-agent schedule for a plurality of agents
GB2514618B (en) * 2013-05-31 2020-11-11 Advanced Risc Mach Ltd Data processing systems
IL232836A0 (en) * 2013-06-02 2014-08-31 Rocketick Technologies Ltd Efficient parallel computation of dependency problems
US9292419B1 (en) * 2013-06-04 2016-03-22 The Mathworks, Inc. Code coverage and confidence determination
US9697003B2 (en) 2013-06-07 2017-07-04 Advanced Micro Devices, Inc. Method and system for yield operation supporting thread-like behavior
WO2015050594A2 (en) * 2013-06-16 2015-04-09 President And Fellows Of Harvard College Methods and apparatus for parallel processing
US9075624B2 (en) 2013-06-24 2015-07-07 Xilinx, Inc. Compilation of system designs
CN105453068A (zh) * 2013-07-31 2016-03-30 慧与发展有限责任合伙企业 使用分布式缓存的数据流处理
US10372590B2 (en) * 2013-11-22 2019-08-06 International Business Corporation Determining instruction execution history in a debugger
US20150195383A1 (en) * 2014-01-08 2015-07-09 Cavium, Inc. Methods and systems for single instruction multiple data programmable packet parsers
GB2524063B (en) 2014-03-13 2020-07-01 Advanced Risc Mach Ltd Data processing apparatus for executing an access instruction for N threads
US9733981B2 (en) * 2014-06-10 2017-08-15 Nxp Usa, Inc. System and method for conditional task switching during ordering scope transitions
US10061592B2 (en) 2014-06-27 2018-08-28 Samsung Electronics Co., Ltd. Architecture and execution for efficient mixed precision computations in single instruction multiple data/thread (SIMD/T) devices
US10061591B2 (en) 2014-06-27 2018-08-28 Samsung Electronics Company, Ltd. Redundancy elimination in single instruction multiple data/thread (SIMD/T) execution processing
US9182990B1 (en) * 2014-07-01 2015-11-10 Google Inc. Method and apparatus for detecting execution of unsupported instructions while testing multiversioned code
US9672029B2 (en) * 2014-08-01 2017-06-06 Vmware, Inc. Determining test case priorities based on tagged execution paths
US9338076B1 (en) 2014-10-24 2016-05-10 Tektronix, Inc. Deriving hardware acceleration of decoding from a declarative protocol description
US10148547B2 (en) 2014-10-24 2018-12-04 Tektronix, Inc. Hardware trigger generation from a declarative protocol description
US20160170767A1 (en) * 2014-12-12 2016-06-16 Intel Corporation Temporary transfer of a multithreaded ip core to single or reduced thread configuration during thread offload to co-processor
US9280389B1 (en) * 2014-12-30 2016-03-08 Tyco Fire & Security Gmbh Preemptive operating system without context switching
US9996354B2 (en) 2015-01-09 2018-06-12 International Business Machines Corporation Instruction stream tracing of multi-threaded processors
US20160224327A1 (en) * 2015-02-02 2016-08-04 Lenovo Enterprise Solutions (Singapore) Pte. Ltd. Linking a Program with a Software Library
US9652817B2 (en) 2015-03-12 2017-05-16 Samsung Electronics Co., Ltd. Automated compute kernel fusion, resizing, and interleave
US11119903B2 (en) 2015-05-01 2021-09-14 Fastly, Inc. Race condition testing via a scheduling test program
US10102031B2 (en) 2015-05-29 2018-10-16 Qualcomm Incorporated Bandwidth/resource management for multithreaded processors
US9910760B2 (en) * 2015-08-07 2018-03-06 Nvidia Corporation Method and apparatus for interception of synchronization objects in graphics application programming interfaces for frame debugging
US9977693B2 (en) 2015-09-23 2018-05-22 Hanan Potash Processor that uses plural form information
US10067878B2 (en) 2015-09-23 2018-09-04 Hanan Potash Processor with logical mentor
US10061511B2 (en) 2015-09-23 2018-08-28 Hanan Potash Computing device with frames/bins structure, mentor layer and plural operand processing
US10095641B2 (en) 2015-09-23 2018-10-09 Hanan Potash Processor with frames/bins structure in local high speed memory
US10140122B2 (en) 2015-09-23 2018-11-27 Hanan Potash Computer processor with operand/variable-mapped namespace
WO2017062612A1 (en) * 2015-10-09 2017-04-13 Arch Systems Inc. Modular device and method of operation
US10534697B2 (en) * 2015-10-27 2020-01-14 Sap Se Flexible configuration framework
US9678788B2 (en) * 2015-11-10 2017-06-13 International Business Machines Corporation Enabling poll/select style interfaces with coherent accelerators
GB2547252B (en) * 2016-02-12 2019-12-11 Advanced Risc Mach Ltd Graphics processing systems
US10860499B2 (en) 2016-03-22 2020-12-08 Lenovo Enterprise Solutions (Singapore) Pte. Ltd Dynamic memory management in workload acceleration
US10884761B2 (en) 2016-03-22 2021-01-05 Lenovo Enterprise Solutions (Singapore) Pte. Ltd Best performance delivery in heterogeneous computing unit environment
US10203747B2 (en) 2016-03-22 2019-02-12 Lenovo Enterprise Solutions (Singapore) Pte. Ltd. Workload placement based on heterogeneous compute performance per watt
US11093286B2 (en) * 2016-04-26 2021-08-17 Hanan Potash Computing device with resource manager and civilware tier
US10303466B1 (en) * 2016-09-07 2019-05-28 Amazon Technologies, Inc. Semantic annotations in source code
US10177795B1 (en) * 2016-12-29 2019-01-08 Amazon Technologies, Inc. Cache index mapping
KR20180086792A (ko) * 2017-01-23 2018-08-01 삼성전자주식회사 복수의 프로세서들 사이에 데이터를 처리하는 방법 및 전자 장치
US20180285241A1 (en) * 2017-03-28 2018-10-04 Carnegie Mellon University Energy-interference-free debugger for intermittent energy-harvesting systems
US20180331973A1 (en) * 2017-05-09 2018-11-15 Microsoft Technology Licensing, Llc Increasing virtual machine availability during server updates
US10282274B2 (en) * 2017-06-14 2019-05-07 Microsoft Technology Licensing, Llc Presenting differences between code entity invocations
US10635108B2 (en) * 2017-07-03 2020-04-28 Baidu Usa Llc Centralized scheduling system using global store for operating autonomous driving vehicles
US10732634B2 (en) 2017-07-03 2020-08-04 Baidu Us Llc Centralized scheduling system using event loop for operating autonomous driving vehicles
US20190042390A1 (en) * 2017-08-01 2019-02-07 Microsoft Technology Licensing, Llc Focused execution of traced code in a debugger
GB2565770B (en) 2017-08-15 2019-09-18 Advanced Risc Mach Ltd Data processing systems
US20190057017A1 (en) * 2017-08-16 2019-02-21 Microsoft Technology Licensing, Llc Correlation Of Function Calls To Functions In Asynchronously Executed Threads
US10474600B2 (en) * 2017-09-14 2019-11-12 Samsung Electronics Co., Ltd. Heterogeneous accelerator for highly efficient learning systems
WO2019090247A1 (en) 2017-11-06 2019-05-09 Pensando Systems Inc. Network system including match processing unit for table-based actions
US10437619B2 (en) * 2017-12-12 2019-10-08 Arch Systems Inc. System and method for physical machine monitoring and analysis
JP6955163B2 (ja) * 2017-12-26 2021-10-27 富士通株式会社 情報処理装置、情報処理方法及びプログラム
US11263158B2 (en) * 2018-02-22 2022-03-01 Pensando Systems Inc. Programmable computer IO device interface
US10636112B2 (en) * 2018-03-28 2020-04-28 Intel Corporation Graphics processor register data re-use mechanism
JP7236811B2 (ja) * 2018-03-30 2023-03-10 株式会社デンソー 情報処理装置
US11237946B2 (en) * 2018-05-03 2022-02-01 Sap Se Error finder tool
US11468338B2 (en) 2018-09-11 2022-10-11 Apple Inc. Compiling models for dedicated hardware
EP3629271A1 (en) * 2018-09-28 2020-04-01 Marc Brandis AG Electronic device and method for analyzing a transaction-processing system
JP7037097B2 (ja) * 2018-10-19 2022-03-16 日本電信電話株式会社 データ処理システム、中央演算処理装置及びデータ処理方法
US11126532B1 (en) * 2018-11-14 2021-09-21 Teledyne Lecroy, Inc. Method and apparatus for a parallel, metadata-based trace analytics processor
US10824538B2 (en) * 2019-01-22 2020-11-03 Oracle International Corporation Scalable incremental analysis using caller and callee summaries
US11836256B2 (en) * 2019-01-24 2023-12-05 International Business Machines Corporation Testing adversarial robustness of systems with limited access
US11169886B2 (en) * 2019-01-29 2021-11-09 Sap Se Modification of temporary database pages
US10892971B2 (en) 2019-03-12 2021-01-12 Arch Systems Inc. System and method for network communication monitoring
US11281560B2 (en) * 2019-03-19 2022-03-22 Microsoft Technology Licensing, Llc Input/output data transformations when emulating non-traced code with a recorded execution of traced code
US11782816B2 (en) * 2019-03-19 2023-10-10 Jens C. Jenkins Input/output location transformations when emulating non-traced code with a recorded execution of traced code
US11657162B2 (en) * 2019-03-22 2023-05-23 Intel Corporation Adversarial training of neural networks using information about activation path differentials
US11036546B1 (en) 2019-04-16 2021-06-15 Xilinx, Inc. Multi-threaded shared memory functional simulation of dataflow graph
US10802807B1 (en) 2019-05-23 2020-10-13 Xilinx, Inc. Control and reconfiguration of data flow graphs on heterogeneous computing platform
US11138019B1 (en) 2019-05-23 2021-10-05 Xilinx, Inc. Routing in a compilation flow for a heterogeneous multi-core architecture
US10860766B1 (en) 2019-05-23 2020-12-08 Xilinx, Inc. Compilation flow for a heterogeneous multi-core architecture
US11204745B2 (en) * 2019-05-23 2021-12-21 Xilinx, Inc. Dataflow graph programming environment for a heterogenous processing system
US11727265B2 (en) * 2019-06-27 2023-08-15 Intel Corporation Methods and apparatus to provide machine programmed creative support to a user
US11516234B1 (en) * 2019-07-08 2022-11-29 Cisco Technology, Inc. In-process correlation through class field injection
US11068364B2 (en) * 2019-07-12 2021-07-20 Intelliflash By Ddn, Inc. Predictable synchronous data replication
US10949332B2 (en) 2019-08-14 2021-03-16 Microsoft Technology Licensing, Llc Data race analysis based on altering function internal loads during time-travel debugging
US11216446B2 (en) * 2019-08-29 2022-01-04 Snowflake Inc. Identifying software regressions based on query retry attempts in a database environment
US11016849B2 (en) * 2019-09-04 2021-05-25 Red Hat, Inc. Kernel software raid support for direct-access file systems
CN111427816A (zh) * 2020-03-04 2020-07-17 深圳震有科技股份有限公司 一种amp系统核间通讯方法、计算机设备及存储介质
US11216259B1 (en) * 2020-03-31 2022-01-04 Xilinx, Inc. Performing multiple functions in single accelerator program without reload overhead in heterogenous computing system
US11693795B2 (en) * 2020-04-17 2023-07-04 Texas Instruments Incorporated Methods and apparatus to extend local buffer of a hardware accelerator
US20210382888A1 (en) * 2020-06-08 2021-12-09 Mongodb, Inc. Hedged reads
US11611588B2 (en) * 2020-07-10 2023-03-21 Kyndryl, Inc. Deep learning network intrusion detection
US11360918B1 (en) * 2020-12-21 2022-06-14 Otis Elevator Company Real-time processing system synchronization in a control system
US11604752B2 (en) 2021-01-29 2023-03-14 Arm Limited System for cross-routed communication between functional units of multiple processing units
DE102021102460A1 (de) 2021-02-03 2022-08-04 Ford Global Technologies, Llc Verfahren zur Durchführung einer Simulation
US20230004365A1 (en) * 2021-06-24 2023-01-05 Marvell Asia Pte Ltd Multistage compiler architecture
US11467811B1 (en) * 2021-06-24 2022-10-11 Marvell Asia Pte Ltd Method and apparatus for generating metadata by a compiler
US11537457B2 (en) * 2021-06-25 2022-12-27 Intel Corporation Low latency remoting to accelerators
US11941291B2 (en) * 2021-09-02 2024-03-26 Micron Technology, Inc. Memory sub-system command fencing
US20220191003A1 (en) * 2021-12-10 2022-06-16 Tamas Mihaly Varhegyi Complete Tree Structure Encryption Software
KR20230092151A (ko) * 2021-12-17 2023-06-26 삼성전자주식회사 스토리지 장치 및 이의 동작 방법
CN114398019B (zh) * 2022-01-24 2024-02-23 广州文石信息科技有限公司 屏幕更新请求的处理方法、装置及电子墨水屏设备

Family Cites Families (53)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US117274A (en) * 1871-07-25 Improvement in barrel-heads
JP2738692B2 (ja) * 1988-01-29 1998-04-08 株式会社日立製作所 並列化コンパイル方法
EP0396833A1 (en) * 1989-05-12 1990-11-14 International Business Machines Corporation Trace facility for use in a multiprocessing environment
JP3208870B2 (ja) * 1992-10-30 2001-09-17 株式会社日立製作所 データ分割パタンの評価方法
US5692193A (en) 1994-03-31 1997-11-25 Nec Research Institute, Inc. Software architecture for control of highly parallel computer systems
US5799142A (en) * 1994-09-12 1998-08-25 Nec Corporation Debugging method and debugging system for multi-task programs
US6170051B1 (en) * 1997-08-01 2001-01-02 Micron Technology, Inc. Apparatus and method for program level parallelism in a VLIW processor
US6539339B1 (en) * 1997-12-12 2003-03-25 International Business Machines Corporation Method and system for maintaining thread-relative metrics for trace data adjusted for thread switches
US6115763A (en) 1998-03-05 2000-09-05 International Business Machines Corporation Multi-core chip providing external core access with regular operation function interface and predetermined service operation services interface comprising core interface units and masters interface unit
US20060117274A1 (en) * 1998-08-31 2006-06-01 Tseng Ping-Sheng Behavior processor system and method
US20040154027A1 (en) * 1998-10-14 2004-08-05 Jean-Jacques Vandewalle Method and means for managing communications between local and remote objects in an object oriented client server system in which a client application invokes a local object as a proxy for a remote object on the server
JP2000132404A (ja) * 1998-10-22 2000-05-12 Matsushita Electric Ind Co Ltd 命令列最適化装置
US6480818B1 (en) * 1998-11-13 2002-11-12 Cray Inc. Debugging techniques in a multithreaded environment
US6636950B1 (en) * 1998-12-17 2003-10-21 Massachusetts Institute Of Technology Computer architecture for shared memory access
JP2000293498A (ja) * 1999-04-05 2000-10-20 Nec Corp 分散環境におけるリモートデバッグシステムおよび記録媒体
US20020065864A1 (en) 2000-03-03 2002-05-30 Hartsell Neal D. Systems and method for resource tracking in information management environments
US6748583B2 (en) * 2000-12-27 2004-06-08 International Business Machines Corporation Monitoring execution of an hierarchical visual program such as for debugging a message flow
US6857084B1 (en) * 2001-08-06 2005-02-15 Lsi Logic Corporation Multiprocessor system and method for simultaneously placing all processors into debug mode
US6862694B1 (en) * 2001-10-05 2005-03-01 Hewlett-Packard Development Company, L.P. System and method for setting and executing breakpoints
US7047395B2 (en) * 2001-11-13 2006-05-16 Intel Corporation Reordering serial data in a system with parallel processing flows
US7318164B2 (en) * 2001-12-13 2008-01-08 International Business Machines Corporation Conserving energy in a data processing system by selectively powering down processors
US6941492B1 (en) * 2002-02-05 2005-09-06 Emc Corporation Debugging tool for efficient switching between targets in a multi-processor environment
US7080283B1 (en) * 2002-10-15 2006-07-18 Tensilica, Inc. Simultaneous real-time trace and debug for multiple processing core systems on a chip
US7765532B2 (en) * 2002-10-22 2010-07-27 Oracle America, Inc. Inducing concurrency in software code
US7243264B2 (en) * 2002-11-01 2007-07-10 Sonics, Inc. Method and apparatus for error handling in networks
US7222343B2 (en) * 2003-01-16 2007-05-22 International Business Machines Corporation Dynamic allocation of computer resources based on thread type
US7444546B2 (en) * 2003-04-17 2008-10-28 Arm Limited On-board diagnostic circuit for an integrated circuit
US7114042B2 (en) * 2003-05-22 2006-09-26 International Business Machines Corporation Method to provide atomic update primitives in an asymmetric heterogeneous multiprocessor environment
US20080052687A1 (en) * 2003-11-03 2008-02-28 Agustin Gonzales-Tuchmann Development environment for data transformation applications
EP1569104A3 (en) * 2004-01-09 2006-05-03 Interuniversitair Microelektronica Centrum Vzw An automated method for performing parallelization of sequential code and a computerized system adapted therefore
JP3901180B2 (ja) * 2004-06-30 2007-04-04 日本電気株式会社 プログラム並列化装置及びその方法並びにプログラム
US7721069B2 (en) * 2004-07-13 2010-05-18 3Plus1 Technology, Inc Low power, high performance, heterogeneous, scalable processor architecture
WO2006028521A1 (en) * 2004-09-07 2006-03-16 Starent Networks, Corp. Process checkpointing and migration in computing systems
GB0420442D0 (en) * 2004-09-14 2004-10-20 Ignios Ltd Debug in a multicore architecture
US7437581B2 (en) * 2004-09-28 2008-10-14 Intel Corporation Method and apparatus for varying energy per instruction according to the amount of available parallelism
JP2006227706A (ja) * 2005-02-15 2006-08-31 Matsushita Electric Ind Co Ltd プログラム開発装置およびプログラム開発プログラム
US7665073B2 (en) * 2005-04-18 2010-02-16 Microsoft Corporation Compile time meta-object protocol systems and methods
US7689867B2 (en) * 2005-06-09 2010-03-30 Intel Corporation Multiprocessor breakpoint
US7827551B2 (en) * 2005-09-21 2010-11-02 Intel Corporation Real-time threading service for partitioned multiprocessor systems
US7793278B2 (en) * 2005-09-30 2010-09-07 Intel Corporation Systems and methods for affine-partitioning programs onto multiple processing units
US8490065B2 (en) * 2005-10-13 2013-07-16 International Business Machines Corporation Method and apparatus for software-assisted data cache and prefetch control
US9081609B2 (en) * 2005-12-21 2015-07-14 Xerox Corporation Image processing system and method employing a threaded scheduler
US8533680B2 (en) * 2005-12-30 2013-09-10 Microsoft Corporation Approximating finite domains in symbolic state exploration
US9038040B2 (en) * 2006-01-25 2015-05-19 International Business Machines Corporation Method for partitioning programs between a general purpose core and one or more accelerators
US20070250820A1 (en) * 2006-04-20 2007-10-25 Microsoft Corporation Instruction level execution analysis for debugging software
US20090150872A1 (en) * 2006-07-04 2009-06-11 George Russell Dynamic code update
GB0613275D0 (en) * 2006-07-04 2006-08-16 Codeplay Software Ltd Distributed computer system
US20080046875A1 (en) * 2006-08-16 2008-02-21 Gad Haber Program Code Identification System and Method
GB2443277B (en) * 2006-10-24 2011-05-18 Advanced Risc Mach Ltd Performing diagnostics operations upon an asymmetric multiprocessor apparatus
US9229726B2 (en) * 2006-10-26 2016-01-05 International Business Machines Corporation Converged call flow and web service application integration using a processing engine
US20080108899A1 (en) * 2006-11-06 2008-05-08 Nahi Halmann Hand-held ultrasound system with single integrated circuit back-end
EP2006784A1 (en) * 2007-06-22 2008-12-24 Interuniversitair Microelektronica Centrum vzw Methods for characterization of electronic circuits under process variability effects
US9223677B2 (en) * 2008-06-11 2015-12-29 Arm Limited Generation of trace data in a multi-processor system

Also Published As

Publication number Publication date
CN101529391A (zh) 2009-09-09
US20080098262A1 (en) 2008-04-24
KR101325229B1 (ko) 2013-11-04
GB2443277A (en) 2008-04-30
US7809989B2 (en) 2010-10-05
EP2076837A1 (en) 2009-07-08
GB2443277B (en) 2011-05-18
TWI407374B (zh) 2013-09-01
US20080098207A1 (en) 2008-04-24
US20080098208A1 (en) 2008-04-24
IL197314A (en) 2012-12-31
WO2008050076A1 (en) 2008-05-02
GB0709182D0 (en) 2007-06-20
US20080215768A1 (en) 2008-09-04
DE602007009857D1 (de) 2010-11-25
US8190807B2 (en) 2012-05-29
TW200821938A (en) 2008-05-16
IL197314A0 (en) 2009-12-24
US8250549B2 (en) 2012-08-21
JP2010507855A (ja) 2010-03-11
EP2076837B1 (en) 2010-10-13
MY144449A (en) 2011-09-30
CN101529391B (zh) 2011-06-15
KR20090082254A (ko) 2009-07-29
US20080114937A1 (en) 2008-05-15

Similar Documents

Publication Publication Date Title
JP5054115B2 (ja) 非対称型マルチプロセッサ装置上の診断動作の実行
US7707395B2 (en) Data processing system with trace co-processor
US9223677B2 (en) Generation of trace data in a multi-processor system
JP3571976B2 (ja) デバッグ装置及び方法並びにプログラム記録媒体
US8578104B2 (en) Multiprocessor system with mixed software hardware controlled cache management
JP5905911B2 (ja) シングルステップ実行を用いる診断コード
US20070226740A1 (en) Method and apparatus for global breakpoint for parallel debugging on multiprocessor systems
US7945900B2 (en) Debugging tool for debugging multi-threaded programs
US20100153786A1 (en) Processor, multiprocessor, and debugging method
US10162324B2 (en) Method for manipulating a control program of a control device
JPH01173247A (ja) スレーブ制御装置
JP2003015906A (ja) リモートデバッグ方法および装置
US6131109A (en) Multitask processor, a multitask processing method, a multitask processing display method and a storage medium for processing by correlating task and object
JPH0744419A (ja) マイコン開発支援装置
JP2018537779A (ja) 制御装置の動作方法ならびに外部バイパスのために設計されている制御装置
CN106897051B (zh) 一种进程清理的方法及装置
KR20050063023A (ko) 제이티에이지를 이용한 임베디드 시스템의 디버깅 장치 및방법
US20050120348A1 (en) Method of determining information about the processes which run in a program-controlled unit during the execution of a program by the program-controlled unit
JPS62109140A (ja) プログラム処理装置のトレ−ス回路
Ciabrini Debugging scheme fair threads
JPS6361340A (ja) 実行バスサイクルトレ−ス回路
JPH02207340A (ja) エミュレーションシステム及びエミュレータ
JPH03141436A (ja) デバッグ装置
JPH02150931A (ja) 情報処理装置
JPS6222153A (ja) マイクロプロセツサの動作解析方法と装置

Legal Events

Date Code Title Description
A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20120118

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20120207

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20120416

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

A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20120726

R150 Certificate of patent or registration of utility model

Free format text: JAPANESE INTERMEDIATE CODE: R150

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20150803

Year of fee payment: 3

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

LAPS Cancellation because of no payment of annual fees