Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
Advanced Modular Software Performance Monitoring
Search
Sponsored
·
Ship Features Fearlessly
Turn features on and off without deploys. Used by thousands of Ruby developers.
→
Sasha Mazurov
May 30, 2012
Technology
270
1
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
Advanced Modular Software Performance Monitoring
CPU profiling with Intel® VTune™ Amplifier XE
Sasha Mazurov
May 30, 2012
More Decks by Sasha Mazurov
See All by Sasha Mazurov
L1Calo Offline Software Status
mazurov
0
81
Performance and Regression tests for Simulation
mazurov
0
100
About v2
mazurov
0
80
L1Calo Offline Software Status
mazurov
0
110
L1Calo Offline Software Status
mazurov
0
110
LHCbPR V2
mazurov
0
150
Paper approval
mazurov
0
93
Conventions' Publications
mazurov
0
78
Ph.D final exam
mazurov
0
140
Other Decks in Technology
See All in Technology
Claude Codeとのおしゃべりでセマンティックモデルの定義からダッシュボード作成まで完成させる
nic_sugiyama
0
120
エンジニアリング戦略の作り方 / Crafting Engineering Strategy
iwashi86
21
7k
AGENTS.mdとSkillsで始めるAIエージェント活用
sonoda_mj
3
220
日本 Fintech 未来予測レポート 2027〜2028年(オリジナル版)
8maki
0
2.2k
2026TECHFRESH畢業分享會 - 葬送的通靈師:化系統與用戶雜訊成行動訊號
line_developers_tw
PRO
0
1.1k
LayerXにおけるセキュリティ管理の現在地と次の一手
tosho
0
210
エラーバジェットのアラートのタイミングを考える.pdf
kairim0
0
150
自律型AIエージェントは何を破壊するのか
kojira
0
160
機械学習を「社会実装」するということ 2026年夏版 / Social Implementation of Machine Learning June 2026 Version
moepy_stats
6
2.4k
攻撃者視点で考えるDetection Engineering
cryptopeg
3
1.9k
非エンジニアがClaudeと挑んだ「1ヶ月間プロダクト30本ノック」
askokc
0
580
AI駆動開発を通して感じた、 AI時代のデザイナーの役割変化
whisaiyo
3
2.2k
Featured
See All Featured
Max Prin - Stacking Signals: How International SEO Comes Together (And Falls Apart)
techseoconnect
PRO
0
180
A Guide to Academic Writing Using Generative AI - A Workshop
ks91
PRO
1
330
Hiding What from Whom? A Critical Review of the History of Programming languages for Music
tomoyanonymous
2
860
Lessons Learnt from Crawling 1000+ Websites
charlesmeaden
PRO
1
1.3k
Game over? The fight for quality and originality in the time of robots
wayneb77
1
200
Reality Check: Gamification 10 Years Later
codingconduct
0
2.2k
Navigating Algorithm Shifts & AI Overviews - #SMXNext
aleyda
1
1.3k
Bash Introduction
62gerente
615
220k
Helping Users Find Their Own Way: Creating Modern Search Experiences
danielanewman
31
3.2k
Exploring the relationship between traditional SERPs and Gen AI search
raygrieselhuber
PRO
2
4k
How to make the Groovebox
asonas
2
2.2k
The Language of Interfaces
destraynor
162
27k
Transcript
Advanced Modular Software Performance Monitoring CPU profiling with Intel® VTune™
Amplifier XE Alexander Mazurov Ferrara University, CERN
2 I. Event Processing Software II. Profilers III. Intel® VTune™
Amplifier XE IV. Gaudi Framework V. Gaudi Intel Profiler Auditor VI. Profiling examples
3 Physics events The Higgs Boson Simulation * Trigger *
Analysis I. Event Processing Software
4 Detector events Events to storage 106 events/sec 4500 events/sec
LHCb High Level Trigger (HLT) Software Moore
5 II. Profilers Collect information related to how an
application or system perform.
6 Measure frequency and duration of functions calls and/or code
instructions. CPU Profiler
7 Profiling Techniques - Hardware counters - Instrumenting the code
8 Hardware counters Exploit hardware performance counters from Performance Monitoring
Unit (PMU) Counters: - Translation lookaside buffer (TLB) misses - Cache misses - Stall cycles - Memory access latency - ... Perfmon2 * Intel VTune Amplifier
9 Instrumenting the code - Statically: * Change code manually
/ automatically * Compiler assisted (gcc -pg) - Dynamically (at runtime): * Change code in runtime - Valgrind - Google Performance Tools - Intel VTune Amplifier
10 III. VTune™ Amplifier XE Performance Profiling Tool - x86
(32 and 64-bit) - GUI and CLI
11 VTune™ Features Runtime instrumenting profiler - User-mode sampling -
Hardware-based sampling - Concurrency and locks and waits analysis - Threading timeline - Attach to a running process - Source view
12 1) Interupts a process 2) Collect samples of all
active instruction addresses 3) Restore a call sequence upon each sample. How user-mode sampling works?
13 User-mode analysis types - Hotspots - Concurrency - Locks
and Waits
14 User-mode sampling Hotspots analysis:
15 Group results
16 Call Stack
17 Filter by timeline
18 CPU time by code line Debug mode (-g)
19 User-mode sampling is a statistical method and does not
provide a 100% accurate results. Accuracy depends on: - Duration of the collection - Speed of processor - Amount of software activity - Sampling interval * recommended value is 10 ms * profiling is only 5% slower Sampling Accuracy
20 Integrating VTune™ Amplifier to Event Processing Framework
21 IV. Gaudi Event processing framework Moore Trigger Gauss Simulation
Brunel Reconstruction Online Monitoring and commissioning DaVinci Physics analysis
22 Gaudi Architecture Algorithms * Services * Tools
23 Moore Event Loop Hlt1DiMuonHighMassFilterSequence Hlt1DiMuonHighMassStreamer FastVeloHlt MuonRec Velo2CandidatesDiMuonHighMass GECLooseUnit
createITLiteClusters createVeloLiteClusters Algorithms Sequence How to profile algorithms?
24 V. Gaudi Intel Profiling Auditor VTune™ User API +
Gaudi Auditors API
25 VTune™ User API - Start/Pause profiling - Mark profiling
regions
26 Gaudi Auditors API Algorithm Start event End
event Callback functions
27 Algorithms profiling (I) CPU time per sequence branch
28 Algorithms profiling (II)
29 Gaudi configuration from Configurables import IntelProfilerAuditor profiler = IntelProfilerAuditor()
profiler.StartFromEventN = 5000 profiler.StopAtEventN = 15000 AuditorSvc().Auditors += [profiler]
30 Run: $> intelprofiler -o /collected/data job.py Analyze (GUI): $>
amplxe-gui /collecter/data/r001hs Analyze (CLI): $> amplxe-cl -reports hotspots -r /collecter/data/r001hs
31 VI. Profiling examples 1. Memory allocation functions 2. Measuring
profiling accuracy 3. Custom reports
32 1. Memory allocation functions operatornew from libstdc++ library: tc_new
from tcmalloc library: tc_new uses twice less time then operatornew
33 2. Measuring profiling accuracy Intel Profiling Auditor vs .
Timing Auditor Measures the absolute time of algorithm's run 1000 events
34 3. Custom reports Build reports using CSV files exported
from VTune Amplifier
35 Conclusions Intel® VTune™ Amplifier XE: + Various analysis types
and reports + Rich User API + Reasonable overhead time