JP2020184327A - 性能プロファイリング - Google Patents
性能プロファイリング Download PDFInfo
- Publication number
- JP2020184327A JP2020184327A JP2020070495A JP2020070495A JP2020184327A JP 2020184327 A JP2020184327 A JP 2020184327A JP 2020070495 A JP2020070495 A JP 2020070495A JP 2020070495 A JP2020070495 A JP 2020070495A JP 2020184327 A JP2020184327 A JP 2020184327A
- Authority
- JP
- Japan
- Prior art keywords
- processing unit
- thread
- period
- thread execution
- profiling
- 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.)
- Granted
Links
- 238000012545 processing Methods 0.000 claims abstract description 239
- 230000000694 effects Effects 0.000 claims abstract description 64
- 238000000034 method Methods 0.000 claims abstract description 24
- 238000012544 monitoring process Methods 0.000 claims abstract description 15
- 238000013145 classification model Methods 0.000 claims description 13
- 238000003491 array Methods 0.000 claims description 9
- 230000001419 dependent effect Effects 0.000 claims 1
- 238000004891 communication Methods 0.000 description 22
- 230000004044 response Effects 0.000 description 10
- 238000004458 analytical method Methods 0.000 description 7
- 230000006399 behavior Effects 0.000 description 6
- 230000002159 abnormal effect Effects 0.000 description 3
- 238000013459 approach Methods 0.000 description 2
- 238000010586 diagram Methods 0.000 description 2
- 230000006870 function Effects 0.000 description 2
- 239000003999 initiator Substances 0.000 description 2
- 239000002245 particle Substances 0.000 description 2
- 238000012546 transfer Methods 0.000 description 2
- 239000005441 aurora Substances 0.000 description 1
- 230000005540 biological transmission Effects 0.000 description 1
- 238000012512 characterization method Methods 0.000 description 1
- 230000001010 compromised effect Effects 0.000 description 1
- 238000013135 deep learning Methods 0.000 description 1
- 238000001514 detection method Methods 0.000 description 1
- 230000005611 electricity Effects 0.000 description 1
- 230000002452 interceptive effect Effects 0.000 description 1
- 238000010801 machine learning Methods 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 230000002093 peripheral effect Effects 0.000 description 1
- 230000001902 propagating effect Effects 0.000 description 1
- 230000011664 signaling Effects 0.000 description 1
- 239000007787 solid Substances 0.000 description 1
- 230000002123 temporal effect Effects 0.000 description 1
- 230000001052 transient effect Effects 0.000 description 1
- 230000001960 triggered effect Effects 0.000 description 1
Classifications
-
- 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/3409—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 for performance assessment
-
- 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/3017—Monitoring arrangements specially adapted to the computing system or computing system component being monitored where the computing system is implementing multitasking
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/30—Monitoring
- G06F11/32—Monitoring with visual or acoustical indication of the functioning of the machine
- G06F11/324—Display of status information
- G06F11/327—Alarm or error message display
-
- 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/3409—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 for performance assessment
- G06F11/3419—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 for performance assessment by assessing time
-
- 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
- G06F21/00—Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F21/30—Authentication, i.e. establishing the identity or authorisation of security principals
- G06F21/44—Program or device authentication
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F21/00—Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F21/50—Monitoring users, programs or devices to maintain the integrity of platforms, e.g. of processors, firmware or operating systems
- G06F21/55—Detecting local intrusion or implementing counter-measures
- G06F21/552—Detecting local intrusion or implementing counter-measures involving long-term monitoring or reporting
-
- 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/44—Arrangements for executing specific programs
- G06F9/445—Program loading or initiating
- G06F9/44505—Configuring for program initiating, e.g. using registry, configuration files
- G06F9/4451—User profiles; Roaming
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- General Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Software Systems (AREA)
- Computer Hardware Design (AREA)
- Quality & Reliability (AREA)
- Computer Security & Cryptography (AREA)
- Computing Systems (AREA)
- Mathematical Physics (AREA)
- Debugging And Monitoring (AREA)
Abstract
Description
複数のスレッドを実行するように構成された処理ユニットと、
期間にわたって複数のスレッドの各々が処理ユニットによっていつ実行されるかを指し示すアクティビティプロファイルを生成するために、期間にわたって処理ユニットの動作をプロファイルし、
期間の処理ユニットのスレッド実行のシグネチャが、処理ユニットのためのスレッド実行のベースラインを指し示すシグネチャと一致するかどうかを判定するために、生成されたアクティビティプロファイルを解析し、
期間の処理ユニットのスレッド実行のシグネチャが、処理ユニットのためのスレッド実行のベースラインを指し示すシグネチャと一致しない場合に、アラート信号を出力するように構成されたプロファイリングユニットと、
を含む装置が提供される。
期間にわたって複数のスレッドの各々が処理ユニットによっていつ実行されたかを指し示すアクティビティプロファイルを生成するために、期間にわたって処理ユニットの動作をプロファイルすることと、
期間の処理ユニットのスレッド実行のシグネチャが、処理ユニットのためのスレッド実行のベースラインを指し示すシグネチャと一致するかどうかを判定するために、生成されたアクティビティプロファイルを解析することと、
期間の処理ユニットのスレッド実行のシグネチャが、処理ユニットのためのスレッド実行のベースラインを指し示すシグネチャと一致しない場合に、アラート信号を出力することと、を含む方法が提供される。
期間にわたって複数のスレッドの各々が処理ユニットによっていつ実行されたかを指し示すアクティビティプロファイルを生成するために、期間にわたって処理ユニットの動作をプロファイルすることと、
期間の処理ユニットのスレッド実行のシグネチャが、処理ユニットのためのスレッド実行のベースラインを指し示すシグネチャと一致するかどうかを判定するために、生成されたアクティビティプロファイルを解析することと、
期間の処理ユニットのスレッド実行のシグネチャが、処理ユニットのためのスレッド実行のベースラインを指し示すシグネチャと一致しない場合に、アラート信号を出力することと、を含む、処理ユニットの性能をモニタリングする方法を、コンピューティングユニットに実施させるコンピュータ命令を記憶したコンピュータ可読な記憶媒体が提供される。
Claims (15)
- 複数のスレッドを実行するように構成された処理ユニットと、
期間にわたって前記複数のスレッドの各々が前記処理ユニットによっていつ実行されるかを指し示すアクティビティプロファイルを生成するために、前記期間にわたって前記処理ユニットの動作をプロファイルし、
前記期間の前記処理ユニットのスレッド実行のシグネチャが、前記処理ユニットのためのスレッド実行のベースラインを指し示すシグネチャと一致するかどうかを判定するために、生成されたアクティビティプロファイルを解析し、
前記期間の前記処理ユニットのスレッド実行の前記シグネチャが、前記処理ユニットのためのスレッド実行のベースラインを指し示す前記シグネチャと一致しない場合に、アラート信号を出力するように
構成されたプロファイリングユニットと、
を備える装置。 - 前記アクティビティプロファイルが、前記期間にわたって各スレッドを実行することに費やされた処理ユニットクロックサイクルの数を指し示し、前記プロファイリングユニットが、前記アクティビティプロファイルを生成するために、前記期間にわたって前記処理ユニットによって実行されている各スレッドを識別することによって、前記処理ユニットの前記動作をプロファイルするように構成される、請求項1に記載の装置。
- 前記装置が、相互接続回路を含む集積回路チップであり、前記プロファイリングユニットが、前記集積回路チップの相互接続回路を通したトランザクションをモニタリングすることによって、前記期間にわたって前記処理ユニットによって実行されている各スレッドを識別するように構成される、請求項2に記載の装置。
- 前記処理ユニットが、実行されている前記スレッドを指し示すストレージ場所を維持するように構成され、前記プロファイリングユニットが、前記ストレージ場所にアクセスすることによって、実行されている各スレッドを識別するように構成される、請求項2に記載の装置。
- 前記プロファイリングユニットが、前記処理ユニットから伝達される側波帯信号から、実行されている各スレッドを識別するように構成される、請求項2に記載の装置。
- 前記プロファイリングユニットが、前記生成されたアクティビティプロファイルをデータアレイとして記憶するように構成され、前記プロファイリングユニットが、前記アクティビティプロファイルが前記処理ユニットのためのスレッド実行のベースラインを指し示すものとして分類され得るか否かを判定するために、前記データアレイにデータ処理アルゴリズムを使用して、前記生成されたアクティビティプロファイルを解析するように構成される、請求項5に記載の装置。
- 前記データ処理アルゴリズムが、トレーニングされたデータ分類モデルである、請求項6に記載の装置。
- 前記プロファイリングユニットが、前記データアレイと、前記処理ユニットのためのスレッド実行のベースラインを各々が指し示す1つまたは複数のテンプレートデータアレイの組の各々との差を計算するために、前記データ処理アルゴリズムを使用するように構成され、前記データアレイが、そのデータアレイと、前記テンプレートアレイのうちの少なくとも1つとの前記差が規定されたしきい値よりも少ない場合に、スレッド実行のベースラインを指し示すものとして分類される、請求項6に記載の装置。
- 前記プロファイリングユニットが、前記期間の前記処理ユニットのスレッド実行の前記シグネチャを特徴付ける1つまたは複数のパラメータの組についての値を前記データアレイから抽出するために前記データ処理アルゴリズムを使用し、前記抽出された値を、スレッド実行のベースラインを指し示すシグネチャについての対応するパラメータ値と比較するように構成される、請求項6に記載の装置。
- 前記1つまたは複数のパラメータの組が、前記期間にわたるスレッド切り替えの合計数、前記期間のスレッド実行の平均長さ、前記期間のスレッド実行の最大長さ、前記期間のスレッド実行の最小長さ、前記期間のスレッド切り替えの平均頻度、前記期間のスレッド切り替えの最大頻度および/もしくは最小頻度、ならびに前記期間のスレッド実行の順序のうちの、1つまたは複数を含む、請求項9に記載の装置。
- 前記プロファイリングユニットが、前記データアレイが前記処理ユニットのためのスレッド実行のベースラインを表現しないものとして分類された場合に、前記アラート信号を出力するように構成される、請求項6から10のいずれかに記載の装置。
- 前記データアレイが、前記期間にわたって各スレッドが前記処理ユニットによっていつ実行されているかを表す画像であり、前記データ処理アルゴリズムが、画像処理アルゴリズムであり、前記プロファイリングユニットが、生成された画像が前記処理ユニットのためのスレッド実行のベースラインを表すものとして分類され得るか否かを判定するために、前記生成された画像に前記画像処理アルゴリズムを使用して、前記生成されたアクティビティプロファイルを解析するように構成される、請求項6から11のいずれかに記載の装置。
- 前記画像処理アルゴリズムが、トレーニングされた画像分類モデルである、請求項7に従属する場合の請求項12に記載の装置。
- 前記プロファイリングユニットが、前記生成された画像と、前記処理ユニットのためのスレッド実行のベースラインを各々が表す1つまたは複数のテンプレート画像の組の各々との差を計算するために、前記画像処理アルゴリズムを使用するように構成され、前記生成された画像が、その画像と、前記テンプレート画像のうちの少なくとも1つとの前記差が規定されたしきい値よりも少ない場合に、スレッド実行のベースラインを表すものとして分類される、請求項8に従属する場合の請求項12に記載の装置。
- 複数のスレッドを実行する処理ユニットの性能をモニタリングする方法であって、
期間にわたって前記複数のスレッドの各々が前記処理ユニットによっていつ実行されたかを指し示すアクティビティプロファイルを生成するために、前記期間にわたって前記処理ユニットの動作をプロファイルすることと、
前記期間の前記処理ユニットのスレッド実行のシグネチャが、前記処理ユニットのためのスレッド実行のベースラインを指し示すシグネチャと一致するかどうかを判定するために、生成されたアクティビティプロファイルを解析することと、
前記期間の前記処理ユニットのスレッド実行の前記シグネチャが、前記処理ユニットのためのスレッド実行のベースラインを指し示す前記シグネチャと一致しない場合に、アラート信号を出力することと、
を含む方法。
Applications Claiming Priority (4)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
GB1905094.7 | 2019-04-10 | ||
GB1905094.7A GB2582953B (en) | 2019-04-10 | 2019-04-10 | Performance profiling |
US16/380,439 | 2019-04-10 | ||
US16/380,439 US10977075B2 (en) | 2019-04-10 | 2019-04-10 | Performance profiling for a multithreaded processor |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2020184327A true JP2020184327A (ja) | 2020-11-12 |
JP7343440B2 JP7343440B2 (ja) | 2023-09-12 |
Family
ID=70285448
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2020070495A Active JP7343440B2 (ja) | 2019-04-10 | 2020-04-09 | 性能プロファイリング |
Country Status (3)
Country | Link |
---|---|
EP (1) | EP3722957A1 (ja) |
JP (1) | JP7343440B2 (ja) |
CN (1) | CN111831522A (ja) |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2005141392A (ja) * | 2003-11-05 | 2005-06-02 | Hitachi Ltd | プロファイル情報の取得装置及び方法 |
US20050229176A1 (en) * | 2004-03-22 | 2005-10-13 | Piotr Findeisen | Determining processor usage by a thread |
US20170153962A1 (en) * | 2015-11-30 | 2017-06-01 | International Business Machines Corporation | Monitoring the performance of threaded applications |
Family Cites Families (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5838810A (en) * | 1996-10-10 | 1998-11-17 | Hewlett-Packard Company | Method and system of detecting profile maturation using image processing techniques |
-
2020
- 2020-04-09 EP EP20168941.1A patent/EP3722957A1/en active Pending
- 2020-04-09 JP JP2020070495A patent/JP7343440B2/ja active Active
- 2020-04-10 CN CN202010279203.4A patent/CN111831522A/zh active Pending
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2005141392A (ja) * | 2003-11-05 | 2005-06-02 | Hitachi Ltd | プロファイル情報の取得装置及び方法 |
US20050229176A1 (en) * | 2004-03-22 | 2005-10-13 | Piotr Findeisen | Determining processor usage by a thread |
US20170153962A1 (en) * | 2015-11-30 | 2017-06-01 | International Business Machines Corporation | Monitoring the performance of threaded applications |
Also Published As
Publication number | Publication date |
---|---|
JP7343440B2 (ja) | 2023-09-12 |
EP3722957A1 (en) | 2020-10-14 |
CN111831522A (zh) | 2020-10-27 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US20220335127A1 (en) | Side-channel exploit detection | |
US20200314130A1 (en) | Attack detection device, attack detection method, and computer readable medium | |
JPWO2016114077A1 (ja) | データ判定装置、データ判定方法及びプログラム | |
CN111143165A (zh) | 一种监控方法及装置 | |
US20240028773A1 (en) | Single-chip system, method for operating a single-chip system, and motor vehicle | |
CN103712642A (zh) | 一种实现安全检测器自我检测的方法及装置 | |
TW201610672A (zh) | 在資料處理裝置中進行除錯 | |
CN101639816B (zh) | 一种总线的实时跟踪系统及相应的跟踪、调试方法 | |
US20200065200A1 (en) | Counter circuitry and methods | |
US10866279B2 (en) | Monitoring accesses to a region of an integrated circuit chip | |
US20220398142A1 (en) | Monitoring processors operating in lockstep | |
US11645143B2 (en) | Error detection within an integrated circuit chip | |
JP7343440B2 (ja) | 性能プロファイリング | |
US10977075B2 (en) | Performance profiling for a multithreaded processor | |
US10838795B2 (en) | Monitoring circuit with a signature watchdog | |
CN107607853B (zh) | 芯片的调试方法、装置、存储介质和处理器 | |
GB2582953A (en) | Performance profiling | |
CN100369009C (zh) | 使用系统管理中断信号的监控系统及方法 | |
US8458539B2 (en) | G-ODLAT on-die logic analyzer trigger with parallel vector finite state machine | |
EP4390693A1 (en) | Method and microarchitecture for anomaly detection based on hardware performance monitors | |
Kumar et al. | XMD: An expansive hardware-telemetry based mobile malware detector to enhance endpoint detection | |
Oh et al. | Real-time anomalous branch behavior inference with a GPU-inspired engine for machine learning models | |
US12007936B2 (en) | Power efficient memory value updates for arm architectures | |
WO2021207874A1 (zh) | 一种非安全软件检测装置、检测方法以及存储介质 | |
Arkannezhad et al. | SideGuard: Non-Invasive On-Chip Malware Detection in Heterogeneous IoT Systems by Leveraging Side-Channels |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20200430 |
|
AA79 | Non-delivery of priority document |
Free format text: JAPANESE INTERMEDIATE CODE: A24379 Effective date: 20200818 |
|
RD03 | Notification of appointment of power of attorney |
Free format text: JAPANESE INTERMEDIATE CODE: A7423 Effective date: 20201109 |
|
RD04 | Notification of resignation of power of attorney |
Free format text: JAPANESE INTERMEDIATE CODE: A7424 Effective date: 20201111 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20210202 |
|
A711 | Notification of change in applicant |
Free format text: JAPANESE INTERMEDIATE CODE: A711 Effective date: 20210203 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A821 Effective date: 20210204 |
|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20220316 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20230314 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20230609 |
|
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: 20230801 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20230831 |
|
R150 | Certificate of patent or registration of utility model |
Ref document number: 7343440 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R150 |