diff --git a/slides/talk.svg b/slides/talk.svg
index f3d54a8..02cfc98 100644
--- a/slides/talk.svg
+++ b/slides/talk.svg
@@ -1138,11 +1138,11 @@
borderopacity="1.0"
inkscape:pageopacity="0.0"
inkscape:pageshadow="2"
- inkscape:zoom="0.70710678"
- inkscape:cx="1133.2183"
- inkscape:cy="745.93987"
+ inkscape:zoom="0.5"
+ inkscape:cx="1068.9412"
+ inkscape:cy="148.82385"
inkscape:document-units="mm"
- inkscape:current-layer="layer17"
+ inkscape:current-layer="layer15"
showgrid="false"
inkscape:window-width="2560"
inkscape:window-height="1376"
@@ -1439,6 +1439,17 @@
x="44.438869"
y="87.241837"
style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-family:'Futura LT';-inkscape-font-specification:'Futura LT Ultra-Light';fill:#ffffff;stroke:none;stroke-width:0.13229166px">be scientific and measure!
+ Embedded Performance
Produce additional, different InformationProduce additional, different informationwith LTTNG userspace Tracing in Qt.
+ dy="2">with LTTNG Userspace Tracing in Qt.
Analyze the info to change your CodeAnalyze the info to change your code$ zgrep -E "PERF|TRACE" /proc/config.gz […]#can we do perf at all? CONFIG_HAVE_PERF_EVENTS=y CONFIG_PERF_EVENTS=y#can we do dwarf unwinding? CONFIG_HAVE_PERF_REGS=y CONFIG_HAVE_PERF_USER_STACK_DUMP=y# do we have tracepoints? CONFIG_FTRACE=y CONFIG_TRACEPOINTS=y CONFIG_SCHED_TRACER=y CONFIG_HAVE_SYSCALL_TRACEPOINTS=y
productionproductionimage
unwind Target Arch SP info on unwind embedded architecturehost.
+ id="tspan1870"> SP info on the host.
+ style="display:none">
LTTNG in Userspace
+ id="tspan2657-0">LTTNG in Userspace Qt
+ Qt has now a tool called tracegen.Which creates the tracepoints for qtbase.
+
+
+ QGuiApplicationPrivate_init_entry()QGuiApplicationPrivate_init_exit()QGuiApplicationPrivate_processWindowSystemEvent_entry(int type)QGuiApplicationPrivate_processWindowSystemEvent_exit(int type)QFontDatabase_addApplicationFont(const QString &filename)QFontDatabase_load(const QString &family, int pointSize)QFontDatabase_loadEngine(const QString &family, int pointSize)QFontDatabasePrivate_addAppFont(const QString &fileName)QImageReader_read_before_reading(QImageReader *reader, const QString &filename)QImageReader_read_after_reading(QImageReader *reader, bool result)
+
+
+
+ #ifndef TP_QTGUI_QIMAGEREADER_READ_AFTER_READING#define TP_QTGUI_QIMAGEREADER_READ_AFTER_READINGnamespace QtPrivate {inline void trace_QImageReader_read_after_reading(QImageReader * reader, bool result){ tracepoint(qtgui, QImageReader_read_after_reading, reader, result);}inline void do_trace_QImageReader_read_after_reading(QImageReader * reader, bool result){ do_tracepoint(qtgui, QImageReader_read_after_reading, reader, result);}inline bool trace_QImageReader_read_after_reading_enabled(){ return tracepoint_enabled(qtgui, QImageReader_read_after_reading);}} // namespace QtPrivate#endif // TP_QTGUI_QIMAGEREADER_READ_AFTER_READING
+ LTTNG in Userspace Qt
+ Qt has now a tool called tracegen.Which creates the tracepoints for qtbase.
+
+
+ LTTNG in Userspace Qt
+ Qt has now a tool called tracegen.Which creates the tracepoints for qtbase.
+
+ [...]// read the imageif (Q_TRACE_ENABLED(QImageReader_read_before_reading)) { QString fileName = QStringLiteral("unknown"); if (QFile *file = qobject_cast<QFile *>(d->device)) fileName = file->fileName(); Q_TRACE(QImageReader_read_before_reading, this, fileName);}const bool result = d->handler->read(image);Q_TRACE(QImageReader_read_after_reading, this, result);[...]
How is LTTNG different than perf?
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ Events
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ Events
+
+
+
+
+
+
+
+
+
+
+
+
+