JP7196083B2 - 同期するハードウェアイベント収集 - Google Patents
同期するハードウェアイベント収集 Download PDFInfo
- Publication number
- JP7196083B2 JP7196083B2 JP2019540323A JP2019540323A JP7196083B2 JP 7196083 B2 JP7196083 B2 JP 7196083B2 JP 2019540323 A JP2019540323 A JP 2019540323A JP 2019540323 A JP2019540323 A JP 2019540323A JP 7196083 B2 JP7196083 B2 JP 7196083B2
- Authority
- JP
- Japan
- Prior art keywords
- trace
- event
- hardware
- collection system
- data
- 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.)
- Active
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/30—Monitoring
- G06F11/3003—Monitoring arrangements specially adapted to the computing system or computing system component being monitored
- G06F11/302—Monitoring arrangements specially adapted to the computing system or computing system component being monitored where the computing system component is a software system
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/30—Monitoring
- G06F11/3065—Monitoring arrangements determined by the means or processing involved in reporting the monitored data
- G06F11/3072—Monitoring arrangements determined by the means or processing involved in reporting the monitored data where the reporting involves data filtering, e.g. pattern matching, time or event triggered, adaptive or policy-based reporting
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/30—Monitoring
- G06F11/34—Recording 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/3466—Performance evaluation by tracing or monitoring
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/30—Monitoring
- G06F11/34—Recording 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/3466—Performance evaluation by tracing or monitoring
- G06F11/348—Circuit details, i.e. tracer hardware
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/30—Monitoring
- G06F11/34—Recording 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/3466—Performance evaluation by tracing or monitoring
- G06F11/3495—Performance evaluation by tracing or monitoring for systems
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/36—Preventing errors by testing or debugging software
- G06F11/3604—Software analysis for verifying properties of programs
- G06F11/3612—Software analysis for verifying properties of programs by runtime analysis
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/36—Preventing errors by testing or debugging software
- G06F11/362—Software debugging
- G06F11/3644—Software debugging by instrumenting at runtime
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/46—Multiprogramming arrangements
- G06F9/54—Interprogram communication
- G06F9/542—Event management; Broadcasting; Multicasting; Notifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2201/00—Indexing scheme relating to error detection, to error correction, and to monitoring
- G06F2201/86—Event-based monitoring
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2201/00—Indexing scheme relating to error detection, to error correction, and to monitoring
- G06F2201/865—Monitoring of software
Description
この明細書は、プログラムコードの実行を分析することに関する。
概して、この明細書で説明される主題の革新的な一局面は、1つ以上のプロセッサによって実行される、コンピュータにより実現される方法において具現化され得る。方法は、第1のプロセッサコンポーネントによるプログラムコードの実行を監視するステップを含み、第1のプロセッサコンポーネントは、プログラムコードの少なくとも第1の部分を実行するように構成され、方法はさらに、第2のプロセッサコンポーネントによるプログラムコードの実行を監視するステップを含み、第2のプロセッサコンポーネントは、プログラムコードの少なくとも第2の部分を実行するように構成される。
この明細書で説明される主題は概して、分散ハードウェアトレーシングに関する。特に、コンピューティングシステムが、第1のプロセッサコアによって実行されるプログラムコードの実行と、第2のプロセッサコアによって実行されるプログラムコードの実行とを監視する。コンピューティングシステムは、ハードウェアイベントのタイムラインをメモリバッファに格納する。格納されたイベントは、少なくとも第1および第2のプロセッサコアを含む分散プロセッサユニット間にわたって生じる。
Claims (24)
- 1つ以上のハードウェア回路コンポーネントを有するイベント収集システムが実行する、コンピュータにより実現される方法であって、前記方法は、
前記イベント収集システムにおける第1のマルチコアニューラルネットワークプロセッサによるプログラムコードの実行を監視するステップを含み、前記第1のマルチコアニューラルネットワークプロセッサは、前記プログラムコードの第1の部分を実行することにより多層ニューラルネットワークの推論作業負荷のための計算を実行するように構成され、前記多層ニューラルネットワークはハードウェア回路上に実現され、前記方法はさらに、
前記イベント収集システムにおける第2のマルチコアニューラルネットワークプロセッサによる前記プログラムコードの実行を監視するステップを含み、前記第2のマルチコアニューラルネットワークプロセッサは、前記プログラムコードの第2の部分を実行することにより前記多層ニューラルネットワークの前記推論作業負荷のための前記計算を実行するように構成され、前記方法はさらに、
前記イベント収集システムが、前記プログラムコードの前記第1の部分または前記プログラムコードの前記第2の部分におけるオペランドの発生を識別することにより、トリガー条件が満たされていることを検出するステップを含み、前記プログラムコードの各部分は、前記推論作業負荷の計算ステップを表す複数のコードシーケンスを含み、前記オペランドは、同期されたトレースイベントを始動するために前記複数のコードシーケンスのうちの特定のコードシーケンスを示す第1のパラメータ値を含み、前記方法はさらに、
前記トリガー条件が満たされていることを検出するステップに応答して、前記イベント収集システムが、前記推論作業負荷の特定の計算ステップ中に発生する第1の同期されたトレースイベントを始動することにより、トレースデータを生成するステップを含み、前記トレースデータは、前記イベント収集システムの分散ハードウェア回路コンポーネントにわたって生じるそれぞれのハードウェアイベントを識別し、前記それぞれのハードウェアイベントの各々について、前記トレースデータはハードウェアイベントタイムスタンプを含み、前記方法はさらに、
前記イベント収集システムが前記トレースデータを使用して、前記推論作業負荷の前記特定の計算ステップに基づいて前記トレースデータを相関させるデータ構造を生成するステップと、
前記推論作業負荷の前記特定の計算ステップに基づいて相関させた前記トレースデータを含む前記データ構造を、ホストコントローラに、前記イベント収集システムのホストインターフェイスブロックを使用して、送信するステップと、
前記ホストコントローラが、前記ホストインターフェイスブロックを使用して受信した前記データ構造における前記トレースデータによって識別された前記それぞれのハードウェアイベントに基づいて、1つ以上の性能属性を求めるステップと、
前記ホストコントローラが、前記1つ以上の性能属性を使用することにより、前記特定の計算ステップが前記第1のマルチコアニューラルネットワークプロセッサおよび前記第2のマルチコアニューラルネットワークプロセッサにおいて異なるそれぞれの時間に実行された場合に前記第1のマルチコアニューラルネットワークプロセッサおよび前記第2のマルチコアニューラルネットワークプロセッサによる前記プログラムコードの性能を分析するステップとを含む、方法。 - 前記第1の同期されたトレースイベントは、それぞれのハードウェアイベントのための一意的なトレース識別子を示すトレースデータを生成し、前記ハードウェアイベントは複数の同期されたハードウェアイベントを含み、2つのハードウェアイベントは、前記イベントが前記推論作業負荷の同一の計算ステップに関連付けられる場合、同期される、請求項1に記載の方法。
- 前記トリガー条件が満たされていることを検出するステップは、
前記イベント収集システムが、
i)前記オペランドの前記第1のパラメータ値がレジスタの第1の限界値を上回ること、または、
ii)前記イベント収集システムのクロックによって示される現在の時間がレジスタの第1の限界値を上回ること、のうちの1つを検出するステップと、
前記トリガー条件が満たされていることを検出するステップに応答して、前記イベント収集システムが、トレースデータを生成する第2の同期されたトレースイベントを始動するステップとを含み、前記トレースデータは、前記イベント収集システムにわたって生じる前記それぞれのハードウェアイベント間で共有される少なくとも1つの属性を識別する、請求項1に記載の方法。 - 前記イベント収集システムが、
前記オペランドの第2のパラメータ値が前記レジスタの第2の限界値を上回ること、または、
前記イベント収集システムの前記クロックによって示される前記現在の時間が前記レジスタの第2の限界値を上回ること、のうちの1つを検出するステップと、
検出するステップに応答して、前記イベント収集システムが、前記オペランドの前記第2のパラメータ値が前記第2の限界値を上回る場合、または第2の予め定義された時間値が前記第2の限界値を上回る場合に、前記第2の同期されたトレースイベントを停止するステップとをさらに含む、請求項3に記載の方法。 - 前記オペランドはさらに、前記イベント収集システムの特定の性能状態を示すグローバル制御パラメータを含み、
前記レジスタの前記第1の限界値は、
前記イベント収集システムのグローバルタイムクロックによって示される予め定義された時間値、または、
前記グローバルタイムクロックに関連付けられた予め定義された時間ウィンドウの特定の時間値、のうちの少なくとも1つを含む、請求項3に記載の方法。 - 前記オペランドは第1の2進データ構造を有し、前記オペランドの前記第1のパラメータ値はトレースマークに対応しており、
前記レジスタの前記第1の限界値は第2の2進データ構造を有し、前記現在の時間はグローバルタイムクロックによって示され、
前記グローバルタイムクロックは、1つ以上のハードウェアイベントタイムスタンプを生成するために前記イベント収集システムによって使用される、請求項3に記載の方法。 - 前記イベント収集システムのコンパイラが、前記トリガー条件の前記オペランドを、前記第1のマルチコアニューラルネットワークプロセッサによって実行されるプログラムコードの前記第1の部分に挿入するステップと、
前記イベント収集システムの前記コンパイラが、前記トリガー条件の予め定義された時間値を、前記第2のマルチコアニューラルネットワークプロセッサによって実行されるプログラムコードの前記第2の部分に挿入するステップとをさらに含む、請求項3に記載の方法。 - 前記第1の同期されたトレースイベントまたは前記第2の同期されたトレースイベントのうちの少なくとも1つを始動するステップは、
前記イベント収集システムが、前記第1のマルチコアニューラルネットワークプロセッサの第1のカウントレジスタによって受信される第1の制御信号を生成するステップを含み、前記第1の制御信号は、第1のハードウェアイベントのためのデータを前記第1のカウントレジスタに格納させ、さらに、
前記イベント収集システムが、前記第2のマルチコアニューラルネットワークプロセッサの第2のカウントレジスタによって受信される第2の制御信号を生成するステップを含み、前記第2の制御信号は、第2のハードウェアイベントのためのデータを前記第2のカウントレジスタに格納させる、請求項3に記載の方法。 - 前記第1のハードウェアイベントまたは前記第2のハードウェアイベントのうちの1つのための前記データは、
前記イベント収集システムの特定のマルチコアニューラルネットワークプロセッサの特定のメモリバッファに書込まれたバイトの数、または、
前記イベント収集システムの特定のマルチコアニューラルネットワークプロセッサによって実行された命令の数、のうちの少なくとも1つを含む、請求項8に記載の方法。 - 前記イベント収集システムが、前記第1または第2のマルチコアニューラルネットワークプロセッサによって実行される前記プログラムコードの前記部分における第2のオペランドの発生を識別するステップをさらに含み、前記第2のオペランドは第2のパラメータ値を含み、さらに、
前記イベント収集システムが、前記第2のオペランドの前記第2のパラメータ値がレジスタの特定の限界値を上回ること、または前記レジスタの特定の限界値を下回ることに、基づいて、フィルター条件が満たされていると判定するステップと、
前記フィルター条件が満たされていると判定するステップに応答して、前記イベント収集システムが1つ以上のトレースイベントをフィルタリングするステップとを含み、前記1つ以上のトレースイベントをフィルタリングするステップは、1つ以上のハードウェアイベントのためのトレースデータの格納を除外するステップを含む、請求項1に記載の方法。 - ハードウェアイベント収集システムであって、
1つ以上のプロセッサコアを含む1つ以上のプロセッサコンポーネントと、
命令を格納する1つ以上のマシン読取可能記憶ユニットとを含み、前記命令は、前記1つ以上のプロセッサコンポーネントによって実行されることにより動作を行わせることが可能であり、前記動作は、
前記イベント収集システムにおける第1のマルチコアニューラルネットワークプロセッサによるプログラムコードの実行を監視することを含み、前記第1のマルチコアニューラルネットワークプロセッサは、前記プログラムコードの第1の部分を実行することにより多層ニューラルネットワークの推論作業負荷のための計算を実行するように構成され、前記多層ニューラルネットワークはハードウェア回路上に実現され、前記動作はさらに、
前記イベント収集システムにおける第2のマルチコアニューラルネットワークプロセッサによる前記プログラムコードの実行を監視することを含み、前記第2のマルチコアニューラルネットワークプロセッサは、前記プログラムコードの第2の部分を実行することにより前記多層ニューラルネットワークの前記推論作業負荷のための前記計算を実行するように構成され、前記動作はさらに、
前記イベント収集システムが、前記プログラムコードの前記第1の部分または前記プログラムコードの前記第2の部分におけるオペランドの発生を識別することにより、トリガー条件が満たされていることを検出することを含み、前記プログラムコードの各部分は、前記推論作業負荷の計算ステップを表す複数のコードシーケンスを含み、前記オペランドは、同期されたトレースイベントを始動するために前記複数のコードシーケンスのうちの特定のコードシーケンスを示す第1のパラメータ値を含み、前記動作はさらに、
前記トリガー条件が満たされていることを検出することに応答して、前記イベント収集システムが、前記推論作業負荷の特定の計算ステップ中に発生する第1の同期されたトレースイベントを始動することにより、トレースデータを生成することを含み、前記トレースデータは、前記イベント収集システムの分散ハードウェア回路コンポーネントにわたって生じるそれぞれのハードウェアイベントを識別し、前記それぞれのハードウェアイベントの各々について、前記トレースデータはハードウェアイベントタイムスタンプを含み、前記動作はさらに、
前記イベント収集システムが前記トレースデータを使用して、前記推論作業負荷の前記特定の計算ステップに基づいて前記トレースデータを相関させるデータ構造を生成することと、
前記推論作業負荷の前記特定の計算ステップに基づいて相関させた前記トレースデータを含む前記データ構造を、ホストコントローラに、前記イベント収集システムのホストインターフェイスブロックを使用して、送信することと、
前記ホストコントローラが、前記ホストインターフェイスブロックを使用して受信した前記データ構造における前記トレースデータによって識別された前記それぞれのハードウェアイベントに基づいて、1つ以上の性能属性を求めることと、
前記ホストコントローラが、前記1つ以上の性能属性を使用することにより、前記特定の計算ステップが前記第1のマルチコアニューラルネットワークプロセッサおよび前記第2のマルチコアニューラルネットワークプロセッサにおいて異なるそれぞれの時間に実行された場合に前記第1のマルチコアニューラルネットワークプロセッサおよび前記第2のマルチコアニューラルネットワークプロセッサによる前記プログラムコードの性能を分析することとを含む、ハードウェアイベント収集システム。 - 前記第1の同期されたトレースイベントは、それぞれのハードウェアイベントのための一意的なトレース識別子を示すトレースデータを生成し、前記ハードウェアイベントは複数の同期されたハードウェアイベントを含み、2つのハードウェアイベントは、前記イベントが前記推論作業負荷の同一の計算ステップに関連付けられる場合、同期される、請求項11に記載のハードウェアイベント収集システム。
- 前記トリガー条件が満たされていることを検出することは、
前記イベント収集システムが、
i)前記オペランドの前記第1のパラメータ値がレジスタの第1の限界値を上回ること、または、
ii)前記イベント収集システムのクロックによって示される現在の時間がレジスタの第1の限界値を上回ること、のうちの1つを検出することと、
前記トリガー条件が満たされていることを検出することに応答して、前記イベント収集システムが、トレースデータを生成する第2の同期されたトレースイベントを始動することとを含み、前記トレースデータは、前記イベント収集システムにわたって生じる前記それぞれのハードウェアイベント間で共有される少なくとも1つの属性を識別する、請求項11に記載のハードウェアイベント収集システム。 - 前記動作はさらに、
前記イベント収集システムが、
前記オペランドの第2のパラメータ値が前記レジスタの第2の限界値を上回ること、または、
前記イベント収集システムの前記クロックによって示される前記現在の時間が前記レジスタの第2の限界値を上回ること、のうちの1つを検出することと、
検出することに応答して、前記イベント収集システムが、前記オペランドの前記第2のパラメータ値が前記第2の限界値を上回る場合、または第2の予め定義された時間値が前記第2の限界値を上回る場合に、前記第2の同期されたトレースイベントを停止することとを含む、請求項13に記載のハードウェアイベント収集システム。 - 前記オペランドはさらに、前記イベント収集システムの特定の性能状態を示すグローバル制御パラメータを含み、
前記レジスタの前記第1の限界値は、
前記イベント収集システムのグローバルタイムクロックによって示される予め定められた時間値、または、
前記グローバルタイムクロックに関連付けられた予め定義された時間ウィンドウの特定の時間値、のうちの少なくとも1つを含む、請求項13に記載のハードウェアイベント収集システム。 - 前記オペランドは第1の2進データ構造を有し、前記オペランドの前記第1のパラメータ値はトレースマークに対応しており、
前記レジスタの前記第1の限界値は第2の2進データ構造を有し、前記現在の時間はグローバルタイムクロックによって示され、
前記グローバルタイムクロックは、1つ以上のハードウェアイベントタイムスタンプを生成するために前記イベント収集システムによって使用される、請求項13に記載のハードウェアイベント収集システム。 - コンピュータにより実現される方法であって、前記方法は、
プロセッサコンポーネントによるプログラムコードの実行を監視するステップを含み、前記プロセッサコンポーネントは、前記プログラムコードの少なくとも第1の部分を実行するように構成され、前記方法はさらに、
コンピューティングシステムが、
i)前記プログラムコードの少なくとも前記第1の部分におけるオペランドの発生を識別すること、または、
ii)前記コンピューティングシステムの少なくとも1つのクロックの現在の時間が、1つ以上のトレースイベントを始動するために使用される予め定義された時間値を示していると判定すること、のうちの少なくとも1つに基づいて、トリガー条件が満たされていることを検出するステップを含み、前記オペランドは、前記1つ以上のトレースイベントを始動するために使用される第1のパラメータ値を含み、前記方法はさらに、
前記トリガー条件が満たされていることを検出するステップに応答して、前記コンピューティングシステムが、前記プロセッサコンポーネントのカウントレジスタによって受信される制御信号を生成するステップを含み、前記制御信号は、ハードウェアイベントに関連付けられたカウントデータを前記カウントレジスタに格納させ、前記方法はさらに、
前記コンピューティングシステムが、実行される前記プログラムコードに関連付けられた1つ以上の性能属性を示すデータ構造を生成するステップを含み、前記データ構造は、格納された前記カウントデータの1つ以上のカウントパラメータに基づいて生成される、方法。 - 前記カウントレジスタは、前記コンピューティングシステムの1つ以上のプロセッサコンポーネントの性能に関するカウントデータを格納するように構成された複数の性能カウンタのうちの1つであり、少なくとも1つの性能カウンタは、活動カウンタ、ストールカウンタ、統計カウンタ、またはサンプリングカウンタ、のうちの1つを含む、請求項17に記載の方法。
- 前記1つ以上のカウントパラメータは、
i)特定のプロセッサコンポーネントによって受信された命令の数、
ii)前記特定のプロセッサコンポーネントによって処理された命令の数、
iii)前記特定のプロセッサコンポーネントによって実行された命令の数、もしくは、
iv)前記特定のプロセッサコンポーネントによって行なわれたメモリ読出の数、またはメモリ書込の数、のうちの1つを示す、請求項18に記載の方法。 - 実行される前記プログラムコードに関連付けられた性能属性は、
i)前記プログラムコードを実行する特定のプロセッサコンポーネントのストール頻度、
ii)前記特定のプロセッサコンポーネントの利用が利用しきい値未満であるという表示、または、
iii)前記特定のプロセッサコンポーネントによって使用されるデータ格納キューがキュー占有率しきい値以下であるという表示、のうちの1つを含む、請求項17または18に記載の方法。 - ハードウェアイベント収集システムであって、
1つ以上のプロセッサコアを含む1つ以上のプロセッサと、
命令を格納するための1つ以上のマシン読取可能記憶ユニットとを含み、前記命令は、動作を行なうために前記1つ以上のプロセッサによって実行可能であり、前記動作は、プロセッサコンポーネントによるプログラムコードの実行を監視することを含み、前記プロセッサコンポーネントは、前記プログラムコードの少なくとも第1の部分を実行するように構成され、前記動作はさらに、
コンピューティングシステムが、
i)前記プログラムコードの少なくとも前記第1の部分におけるオペランドの発生を識別すること、または、
ii)前記コンピューティングシステムの少なくとも1つのクロックの現在の時間が、1つ以上のトレースイベントを始動するために使用される予め定義された時間値を示していると判定すること、のうちの少なくとも1つに基づいて、トリガー条件が満たされていることを検出するステップを含み、前記オペランドは、前記1つ以上のトレースイベントを始動するために使用される第1のパラメータ値を含み、前記動作はさらに、
前記トリガー条件が満たされていることを検出するステップに応答して、前記コンピューティングシステムが、前記プロセッサコンポーネントのカウントレジスタによって受信される制御信号を生成するステップを含み、前記制御信号は、ハードウェアイベントに関連付けられたカウントデータを前記カウントレジスタに格納させ、前記動作はさらに、
前記コンピューティングシステムが、実行される前記プログラムコードに関連付けられた1つ以上の性能属性を示すデータ構造を生成するステップを含み、前記データ構造は、格納された前記カウントデータの1つ以上のカウントパラメータに基づいて生成される、ハードウェアイベント収集システム。 - 前記カウントレジスタは、前記コンピューティングシステムの1つ以上のプロセッサコンポーネントの性能に関するカウントデータを格納するように構成された複数の性能カウンタのうちの1つであり、少なくとも1つの性能カウンタは、活動カウンタ、ストールカウンタ、統計カウンタ、またはサンプリングカウンタ、のうちの1つを含む、請求項21に記載のハードウェアイベント収集システム。
- 前記1つ以上のカウントパラメータは、
i)特定のプロセッサコンポーネントによって受信された命令の数、
ii)前記特定のプロセッサコンポーネントによって処理された命令の数、
iii)前記特定のプロセッサコンポーネントによって実行された命令の数、もしくは、
iv)前記特定のプロセッサコンポーネントによって行なわれたメモリ読出の数、またはメモリ書込の数、のうちの1つを示す、請求項22に記載のハードウェアイベント収集システム。 - 実行される前記プログラムコードに関連付けられた性能属性は、
i)前記プログラムコードを実行する特定のプロセッサコンポーネントのストール頻度、
ii)前記特定のプロセッサコンポーネントの利用が利用しきい値未満であるという表示、または、
iii)前記特定のプロセッサコンポーネントによって使用されるデータ格納キューがキュー占有率しきい値以下であるという表示、のうちの1つを含む、請求項21または22に記載のハードウェアイベント収集システム。
Priority Applications (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2022199690A JP7427759B2 (ja) | 2017-03-29 | 2022-12-14 | 同期するハードウェアイベント収集 |
JP2024008574A JP2024050667A (ja) | 2017-03-29 | 2024-01-24 | 同期するハードウェアイベント収集 |
Applications Claiming Priority (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US15/472,932 US10365987B2 (en) | 2017-03-29 | 2017-03-29 | Synchronous hardware event collection |
US15/472,932 | 2017-03-29 | ||
PCT/US2017/057638 WO2018182783A1 (en) | 2017-03-29 | 2017-10-20 | Synchronous hardware event collection |
Related Child Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2022199690A Division JP7427759B2 (ja) | 2017-03-29 | 2022-12-14 | 同期するハードウェアイベント収集 |
Publications (3)
Publication Number | Publication Date |
---|---|
JP2020512613A JP2020512613A (ja) | 2020-04-23 |
JP2020512613A5 JP2020512613A5 (ja) | 2020-06-11 |
JP7196083B2 true JP7196083B2 (ja) | 2022-12-26 |
Family
ID=60201424
Family Applications (3)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2019540323A Active JP7196083B2 (ja) | 2017-03-29 | 2017-10-20 | 同期するハードウェアイベント収集 |
JP2022199690A Active JP7427759B2 (ja) | 2017-03-29 | 2022-12-14 | 同期するハードウェアイベント収集 |
JP2024008574A Pending JP2024050667A (ja) | 2017-03-29 | 2024-01-24 | 同期するハードウェアイベント収集 |
Family Applications After (2)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2022199690A Active JP7427759B2 (ja) | 2017-03-29 | 2022-12-14 | 同期するハードウェアイベント収集 |
JP2024008574A Pending JP2024050667A (ja) | 2017-03-29 | 2024-01-24 | 同期するハードウェアイベント収集 |
Country Status (12)
Country | Link |
---|---|
US (3) | US10365987B2 (ja) |
EP (1) | EP3382552A1 (ja) |
JP (3) | JP7196083B2 (ja) |
KR (3) | KR102493495B1 (ja) |
CN (2) | CN108694109B (ja) |
BR (1) | BR112019015427B1 (ja) |
DE (2) | DE202017106508U1 (ja) |
GB (1) | GB2561043B (ja) |
HK (1) | HK1259155A1 (ja) |
SG (1) | SG11201906749UA (ja) |
TW (3) | TWI808280B (ja) |
WO (1) | WO2018182783A1 (ja) |
Families Citing this family (22)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
EP3430767B1 (en) * | 2016-03-16 | 2020-09-23 | Telefonaktiebolaget LM Ericsson (PUBL) | Method and device for real-time network event processing |
US9875167B1 (en) | 2017-03-29 | 2018-01-23 | Google Inc. | Distributed hardware tracing |
US10365987B2 (en) | 2017-03-29 | 2019-07-30 | Google Llc | Synchronous hardware event collection |
US11144087B2 (en) * | 2018-08-10 | 2021-10-12 | Nvidia Corporation | Efficient performance monitoring of integrated circuit(s) having distributed clocks |
CN109981349B (zh) * | 2019-02-27 | 2022-02-25 | 华为云计算技术有限公司 | 调用链信息查询方法以及设备 |
CN110046116B (zh) * | 2019-04-23 | 2020-08-21 | 上海燧原智能科技有限公司 | 一种张量填充方法、装置、设备及存储介质 |
CN110311863B (zh) * | 2019-05-09 | 2020-08-21 | 北京邮电大学 | 一种路由路径确定方法及装置 |
US11294750B2 (en) * | 2019-07-15 | 2022-04-05 | Micron Technology, Inc. | Media management logger for a memory sub-system |
US20220326988A1 (en) * | 2019-08-16 | 2022-10-13 | Google Llc | Explicit scheduling of on-chip operations |
US11630919B1 (en) * | 2019-09-30 | 2023-04-18 | Amazon Technologies, Inc. | Management of sensitive data using static code analysis |
CN111160558B (zh) * | 2019-12-13 | 2023-04-28 | 合肥本源量子计算科技有限责任公司 | 量子芯片控制器、量子计算处理系统和电子设备 |
EP3839740A1 (en) * | 2019-12-20 | 2021-06-23 | GrAl Matter Labs S.A.S. | Message-based processing system and method of operating the same |
JP2023516295A (ja) * | 2020-02-27 | 2023-04-19 | シーメンス・ヘルスケア・ダイアグノスティックス・インコーポレイテッド | 機械学習を用いた自動センサトレース検証 |
US11100166B1 (en) | 2020-12-21 | 2021-08-24 | Coupang Corp. | Systems and methods for automatically updating guaranteed computing counters |
US20220198110A1 (en) * | 2020-12-23 | 2022-06-23 | Intel Corporation | Debugging architecture for system in package composed of multiple semiconductor chips |
KR20230157503A (ko) * | 2021-03-31 | 2023-11-16 | 후아웨이 테크놀러지 컴퍼니 리미티드 | 동기화 방법 및 장치 |
KR102648657B1 (ko) * | 2021-10-06 | 2024-03-15 | 에스케이텔레콤 주식회사 | 무선통신시스템에서 원거리 통신을 위한 통신 장치 및 이를 위한 방법 |
US11966745B2 (en) | 2021-11-15 | 2024-04-23 | Google Llc | Sparse SIMD cross-lane processing unit |
US11972263B2 (en) | 2021-11-22 | 2024-04-30 | Google Llc | Cooperative instruction prefetch on multicore system |
WO2023128009A1 (ko) * | 2021-12-30 | 2023-07-06 | 리벨리온 주식회사 | 뉴럴 프로세싱 장치 및 그의 동기화 방법 |
US11977499B2 (en) * | 2022-03-22 | 2024-05-07 | Google Llc | Streaming transfers and ordering model |
US11899516B1 (en) | 2023-07-13 | 2024-02-13 | T-Mobile Usa, Inc. | Creation of a digital twin for auto-discovery of hierarchy in power monitoring |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2000348007A (ja) | 1999-06-03 | 2000-12-15 | Nec Corp | マルチプロセッサシステムのための動作トレース時刻同期方式およびその方法 |
JP2005165825A (ja) | 2003-12-04 | 2005-06-23 | Canon Inc | トレース情報記録装置 |
US20120226837A1 (en) | 2011-03-02 | 2012-09-06 | Texas Instruments Incorporated | Method and System of debugging Multicore Bus Transaction Problems |
JP2016045893A (ja) | 2014-08-26 | 2016-04-04 | 株式会社東芝 | プログラム情報生成システム、方法、及びプログラム |
Family Cites Families (85)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US4598364A (en) | 1983-06-29 | 1986-07-01 | International Business Machines Corporation | Efficient trace method adaptable to multiprocessors |
JPH0283749A (ja) | 1988-09-21 | 1990-03-23 | Hitachi Ltd | マイクロプロセッサの内部割込み制御方式 |
JPH04148439A (ja) | 1990-10-12 | 1992-05-21 | Nec Corp | 情報処理装置のトレース方式 |
JPH04242455A (ja) | 1991-01-16 | 1992-08-31 | Nec Ibaraki Ltd | プロセッサ間通信トレース回路 |
JPH05128079A (ja) | 1991-10-31 | 1993-05-25 | Nec Corp | マルチプロセツサシステムにおけるトレース方式 |
JPH07200352A (ja) | 1993-12-28 | 1995-08-04 | Hitachi Ltd | データプロセッサ、プログラム翻訳方法、及びデバッグツール |
US6128415A (en) | 1996-09-06 | 2000-10-03 | Polaroid Corporation | Device profiles for use in a digital image processing system |
US5682328A (en) | 1996-09-11 | 1997-10-28 | Bbn Corporation | Centralized computer event data logging system |
US5796939A (en) * | 1997-03-10 | 1998-08-18 | Digital Equipment Corporation | High frequency sampling of processor performance counters |
US6189140B1 (en) | 1997-04-08 | 2001-02-13 | Advanced Micro Devices, Inc. | Debug interface including logic generating handshake signals between a processor, an input/output port, and a trace logic |
US6256775B1 (en) | 1997-12-11 | 2001-07-03 | International Business Machines Corporation | Facilities for detailed software performance analysis in a multithreaded processor |
US6233531B1 (en) | 1997-12-19 | 2001-05-15 | Advanced Micro Devices, Inc. | Apparatus and method for monitoring the performance of a microprocessor |
US6098169A (en) | 1997-12-23 | 2000-08-01 | Intel Corporation | Thread performance analysis by monitoring processor performance event registers at thread switch |
US6134676A (en) | 1998-04-30 | 2000-10-17 | International Business Machines Corporation | Programmable hardware event monitoring method |
EP0992907B1 (en) * | 1998-10-06 | 2005-09-28 | Texas Instruments Inc. | Trace fifo management |
US6353924B1 (en) * | 1999-02-08 | 2002-03-05 | Incert Software Corporation | Method for back tracing program execution |
US6530076B1 (en) | 1999-12-23 | 2003-03-04 | Bull Hn Information Systems Inc. | Data processing system processor dynamic selection of internal signal tracing |
US6868376B2 (en) * | 2000-03-02 | 2005-03-15 | Texas Instruments Incorporated | Debug bi-phase export and data recovery |
US6789182B1 (en) | 2000-11-13 | 2004-09-07 | Kevin Jay Brothers | System and method for logging computer event data and physical components of a complex distributed system |
US6813731B2 (en) | 2001-02-26 | 2004-11-02 | Emc Corporation | Methods and apparatus for accessing trace data |
US6769054B1 (en) | 2001-02-26 | 2004-07-27 | Emc Corporation | System and method for preparation of workload data for replaying in a data storage environment |
US6988155B2 (en) | 2001-10-01 | 2006-01-17 | International Business Machines Corporation | Aggregation of hardware events in multi-node systems |
US7080283B1 (en) | 2002-10-15 | 2006-07-18 | Tensilica, Inc. | Simultaneous real-time trace and debug for multiple processing core systems on a chip |
US7069176B2 (en) | 2003-08-07 | 2006-06-27 | Arm Limited | Trace source correlation in a data processing apparatus |
US7529979B2 (en) | 2003-12-12 | 2009-05-05 | International Business Machines Corporation | Hardware/software based indirect time stamping methodology for proactive hardware/software event detection and control |
US20060005083A1 (en) | 2004-06-30 | 2006-01-05 | International Business Machines Corporation | Performance count tracing |
GB0420442D0 (en) | 2004-09-14 | 2004-10-20 | Ignios Ltd | Debug in a multicore architecture |
US9038070B2 (en) | 2004-09-14 | 2015-05-19 | Synopsys, Inc. | Debug in a multicore architecture |
US7543161B2 (en) | 2004-09-30 | 2009-06-02 | International Business Machines Corporation | Method and apparatus for tracking variable speed microprocessor performance caused by power management in a logically partitioned data processing system |
US7673050B2 (en) | 2004-12-17 | 2010-03-02 | Microsoft Corporation | System and method for optimizing server resources while providing interaction with documents accessible through the server |
US7418629B2 (en) | 2005-02-11 | 2008-08-26 | International Business Machines Corporation | Synchronizing triggering of multiple hardware trace facilities using an existing system bus |
JP2006318412A (ja) | 2005-05-16 | 2006-11-24 | Toshiba Corp | 半導体装置 |
US8079037B2 (en) * | 2005-10-11 | 2011-12-13 | Knoa Software, Inc. | Generic, multi-instance method and GUI detection system for tracking and monitoring computer applications |
JP2008234191A (ja) | 2007-03-19 | 2008-10-02 | Toshiba Corp | ハードウエアモニタ管理装置及びハードウエアモニタ機能の実行方法 |
US8762951B1 (en) | 2007-03-21 | 2014-06-24 | Oracle America, Inc. | Apparatus and method for profiling system events in a fine grain multi-threaded multi-core processor |
US8181185B2 (en) * | 2007-05-31 | 2012-05-15 | Intel Corporation | Filtering of performance monitoring information |
US20110246521A1 (en) * | 2007-08-06 | 2011-10-06 | Hui Luo | System and method for discovering image quality information related to diagnostic imaging performance |
JP4658182B2 (ja) | 2007-11-28 | 2011-03-23 | 株式会社荏原製作所 | 研磨パッドのプロファイル測定方法 |
US20100083237A1 (en) | 2008-09-26 | 2010-04-01 | Arm Limited | Reducing trace overheads by modifying trace operations |
US8301759B2 (en) | 2008-10-24 | 2012-10-30 | Microsoft Corporation | Monitoring agent programs in a distributed computing platform |
JPWO2010097875A1 (ja) | 2009-02-24 | 2012-08-30 | パナソニック株式会社 | データ処理装置、方法 |
JP5326708B2 (ja) | 2009-03-18 | 2013-10-30 | 富士通株式会社 | 演算処理装置および演算処理装置の制御方法 |
US8572581B2 (en) | 2009-03-26 | 2013-10-29 | Microsoft Corporation | Measurement and reporting of performance event rates |
JP5266385B2 (ja) | 2009-06-10 | 2013-08-21 | パナソニック株式会社 | トレース処理装置およびトレース処理システム |
US8554892B2 (en) | 2009-06-22 | 2013-10-08 | Citrix Systems, Inc. | Systems and methods for n-core statistics aggregation |
JP2011013867A (ja) * | 2009-06-30 | 2011-01-20 | Panasonic Corp | データ処理装置、性能評価解析システム |
US8407528B2 (en) * | 2009-06-30 | 2013-03-26 | Texas Instruments Incorporated | Circuits, systems, apparatus and processes for monitoring activity in multi-processing systems |
US20110047358A1 (en) * | 2009-08-19 | 2011-02-24 | International Business Machines Corporation | In-Data Path Tracking of Floating Point Exceptions and Store-Based Exception Indication |
US8495604B2 (en) * | 2009-12-30 | 2013-07-23 | International Business Machines Corporation | Dynamically distribute a multi-dimensional work set across a multi-core system |
GB2478328B (en) | 2010-03-03 | 2015-07-01 | Advanced Risc Mach Ltd | Method, apparatus and trace module for generating timestamps |
JP2011243110A (ja) | 2010-05-20 | 2011-12-01 | Renesas Electronics Corp | 情報処理装置 |
US8607202B2 (en) | 2010-06-04 | 2013-12-10 | Lsi Corporation | Real-time profiling in a multi-core architecture |
GB2481385B (en) | 2010-06-21 | 2018-08-15 | Advanced Risc Mach Ltd | Tracing speculatively executed instructions |
US20120042212A1 (en) | 2010-08-10 | 2012-02-16 | Gilbert Laurenti | Mixed Mode Processor Tracing |
US20120179898A1 (en) | 2011-01-10 | 2012-07-12 | Apple Inc. | System and method for enforcing software security through cpu statistics gathered using hardware features |
US20120226839A1 (en) | 2011-03-02 | 2012-09-06 | Texas Instruments Incorporated | Method and System for Monitoring and Debugging Access to a Bus Slave Using One or More Throughput Counters |
US8943248B2 (en) | 2011-03-02 | 2015-01-27 | Texas Instruments Incorporated | Method and system for handling discarded and merged events when monitoring a system bus |
US10642709B2 (en) | 2011-04-19 | 2020-05-05 | Microsoft Technology Licensing, Llc | Processor cache tracing |
US8683268B2 (en) | 2011-06-20 | 2014-03-25 | International Business Machines Corporation | Key based cluster log coalescing |
US8713370B2 (en) * | 2011-08-11 | 2014-04-29 | Apple Inc. | Non-intrusive processor tracing |
US8935574B2 (en) * | 2011-12-16 | 2015-01-13 | Advanced Micro Devices, Inc. | Correlating traces in a computing system |
US9454462B2 (en) | 2012-03-16 | 2016-09-27 | International Business Machines Corporation | Run-time instrumentation monitoring for processor characteristic changes |
US9237082B2 (en) | 2012-03-26 | 2016-01-12 | Hewlett Packard Enterprise Development Lp | Packet descriptor trace indicators |
US9021311B2 (en) | 2012-08-28 | 2015-04-28 | Freescale Semiconductor, Inc. | Method and apparatus for filtering trace information |
US9645870B2 (en) | 2013-06-27 | 2017-05-09 | Atmel Corporation | System for debugging DMA system data transfer |
CN105579999A (zh) | 2013-07-31 | 2016-05-11 | 慧与发展有限责任合伙企业 | 日志分析 |
JP6122749B2 (ja) | 2013-09-30 | 2017-04-26 | ルネサスエレクトロニクス株式会社 | コンピュータシステム |
TWI514145B (zh) | 2013-10-21 | 2015-12-21 | Univ Nat Sun Yat Sen | 可儲存除錯資料的處理器、其快取及控制方法 |
US9684583B2 (en) | 2013-11-05 | 2017-06-20 | Texas Instruments Incorporated | Trace data export to remote memory using memory mapped write transactions |
JP2015114675A (ja) * | 2013-12-09 | 2015-06-22 | 三菱電機株式会社 | アプリケーションソフトウェア加速試験装置および試験方法 |
US20160070636A1 (en) | 2014-09-04 | 2016-03-10 | Home Box Office, Inc. | Conditional wrapper for program object |
EP3035249B1 (en) | 2014-12-19 | 2019-11-27 | Intel Corporation | Method and apparatus for distributed and cooperative computation in artificial neural networks |
CN106033385A (zh) | 2015-03-19 | 2016-10-19 | 启碁科技股份有限公司 | 用于追踪程序执行状态的方法与多核心处理系统 |
WO2016175852A1 (en) | 2015-04-30 | 2016-11-03 | Hewlett Packard Enterprise Development Lp | Memory module error tracking |
US20160378636A1 (en) | 2015-06-26 | 2016-12-29 | Intel Corporation | Software-Initiated Trace Integrated with Hardware Trace |
CN105354136B (zh) | 2015-09-25 | 2018-06-15 | 华为技术有限公司 | 一种调试方法、多核处理器和调试设备 |
US9858167B2 (en) | 2015-12-17 | 2018-01-02 | Intel Corporation | Monitoring the operation of a processor |
US20170371761A1 (en) | 2016-06-24 | 2017-12-28 | Advanced Micro Devices, Inc. | Real-time performance tracking using dynamic compilation |
US9965375B2 (en) | 2016-06-28 | 2018-05-08 | Intel Corporation | Virtualizing precise event based sampling |
US10175980B2 (en) * | 2016-10-27 | 2019-01-08 | Google Llc | Neural network compute tile |
US9959498B1 (en) * | 2016-10-27 | 2018-05-01 | Google Llc | Neural network instruction set architecture |
US10127283B2 (en) | 2016-10-31 | 2018-11-13 | International Business Machines Corporation | Projecting effect of in-flight streamed data on a relational database |
US9875167B1 (en) | 2017-03-29 | 2018-01-23 | Google Inc. | Distributed hardware tracing |
US10365987B2 (en) | 2017-03-29 | 2019-07-30 | Google Llc | Synchronous hardware event collection |
KR101988558B1 (ko) | 2017-06-07 | 2019-06-12 | 현대오트론 주식회사 | 멀티 코어를 갖는 마이크로콘트롤러 유닛을 감시하는 감시장치 및 그것의 동작 방법 |
-
2017
- 2017-03-29 US US15/472,932 patent/US10365987B2/en active Active
- 2017-10-20 BR BR112019015427-2A patent/BR112019015427B1/pt active IP Right Grant
- 2017-10-20 KR KR1020217026813A patent/KR102493495B1/ko active IP Right Grant
- 2017-10-20 JP JP2019540323A patent/JP7196083B2/ja active Active
- 2017-10-20 SG SG11201906749UA patent/SG11201906749UA/en unknown
- 2017-10-20 KR KR1020197021959A patent/KR102295511B1/ko active IP Right Grant
- 2017-10-20 KR KR1020237002919A patent/KR102584961B1/ko active IP Right Grant
- 2017-10-20 WO PCT/US2017/057638 patent/WO2018182783A1/en active Application Filing
- 2017-10-26 DE DE202017106508.1U patent/DE202017106508U1/de active Active
- 2017-10-26 DE DE102017125180.4A patent/DE102017125180A1/de active Pending
- 2017-10-30 TW TW108143681A patent/TWI808280B/zh active
- 2017-10-30 TW TW112123429A patent/TW202403538A/zh unknown
- 2017-10-30 TW TW106137283A patent/TWI681332B/zh active
- 2017-10-31 EP EP17199338.9A patent/EP3382552A1/en active Pending
- 2017-10-31 GB GB1717925.0A patent/GB2561043B/en active Active
- 2017-12-08 CN CN201711292833.XA patent/CN108694109B/zh active Active
- 2017-12-08 CN CN202210792957.9A patent/CN115168147A/zh active Pending
-
2019
- 2019-01-23 HK HK19101202.1A patent/HK1259155A1/zh unknown
- 2019-07-24 US US16/520,558 patent/US11232012B2/en active Active
-
2022
- 2022-01-07 US US17/571,373 patent/US11921611B2/en active Active
- 2022-12-14 JP JP2022199690A patent/JP7427759B2/ja active Active
-
2024
- 2024-01-24 JP JP2024008574A patent/JP2024050667A/ja active Pending
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2000348007A (ja) | 1999-06-03 | 2000-12-15 | Nec Corp | マルチプロセッサシステムのための動作トレース時刻同期方式およびその方法 |
JP2005165825A (ja) | 2003-12-04 | 2005-06-23 | Canon Inc | トレース情報記録装置 |
US20120226837A1 (en) | 2011-03-02 | 2012-09-06 | Texas Instruments Incorporated | Method and System of debugging Multicore Bus Transaction Problems |
JP2016045893A (ja) | 2014-08-26 | 2016-04-04 | 株式会社東芝 | プログラム情報生成システム、方法、及びプログラム |
Also Published As
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP7196083B2 (ja) | 同期するハードウェアイベント収集 | |
JP7250832B2 (ja) | 分散ハードウェアトレーシング |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20200408 |
|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20200408 |
|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20210427 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20210601 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20210914 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20211207 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20220510 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20220721 |
|
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: 20221115 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20221214 |
|
R150 | Certificate of patent or registration of utility model |
Ref document number: 7196083 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R150 |