Akademy/2022/Thursday: Difference between revisions

From KDE Community Wiki
< Akademy‎ | 2022
No edit summary
No edit summary
Line 1: Line 1:
= Trainings and BoF sessions on Thursday, 7th October 2022 =
= Trainings and BoF sessions on Thursday, 7th October 2022 =


== Training: Debugging and Profiling Qt applications on Linux ==
=== Training: Debugging and Profiling Qt applications on Linux ===


''Note: this is the same training as the one given by Milian in 2020''
''Note: this is the same training as the one given by Milian in 2020''
Line 23: Line 23:
|}
|}


===Details===
====Details====
Get up-to-speed with the latest Linux Qt debugging and performance tools
Get up-to-speed with the latest Linux Qt debugging and performance tools


Line 30: Line 30:
The tools presented cover a wide range of problems, from general purpose debugging and CPU profiling to Linux specific high-level analyzers. Often, it is relatively simple to run a tool, but interpreting the results, or even just using some of the more advanced tools, requires deep technical knowledge.
The tools presented cover a wide range of problems, from general purpose debugging and CPU profiling to Linux specific high-level analyzers. Often, it is relatively simple to run a tool, but interpreting the results, or even just using some of the more advanced tools, requires deep technical knowledge.


===Table of contents===
====Table of contents====


Debugging on Linux:
Debugging on Linux:
Line 46: Line 46:
* memory usage: heaptrack
* memory usage: heaptrack


===Prerequisite===
====Prerequisite====


Knowledge and experience programming with Qt and C++. Basic understanding of multithreaded programming.
Knowledge and experience programming with Qt and C++. Basic understanding of multithreaded programming.
Line 56: Line 56:
* linux perf, hotspot
* linux perf, hotspot
* heaptrack
* heaptrack
=== Room 1 – 6th October ===
{| class="wikitable" border="1"
|-
! Room 1
!
!
|-
! Time
! Subject
! Host/Notes
|-
| width="100pt" | 9:00
| width="200pt" |
| width="400pt" |
|-
| 10:00
|
|
|-
| 11:00
|
|
|-
| 12:00
|
|
|-
| 13:00
| ''Lunch''
|
|-
| 15:00
|
|
|-
| 16:00
|
|
|-
| 17:00
|
|
|-
| 18:00
| BoF Wrap Up
| Go to Room tbd
|}
=== Room 2 – 4th October ===
{| class="wikitable" border="1"
|-
! Room 2
!
!
|-
! Time
! Subject
! Host/Notes
|-
| width="100pt" | 9:00
| width="200pt" |
| width="400pt" |
|-
| 10:00
|
| |-
| 11:00
|
|
|-
| 12:00
|
|
|-
| 13:00
| ''Lunch''
|
|-
| 15:00
|
|
|-
| 16:00
|
|
|-
| 17:00
|
|
|-
| 18:00
| BoF Wrap Up
| Go to Room tbd
|}

Revision as of 20:10, 28 September 2022

Trainings and BoF sessions on Thursday, 7th October 2022

Training: Debugging and Profiling Qt applications on Linux

Note: this is the same training as the one given by Milian in 2020


This training is kindly provided by KDAB and will be conducted online by David Faure.

Link to participate in training online: TBD

Room at the University to join with others: TBD


Schedule
11:00-13:00 CEST Part 1 - Debugging on Linux
13:00-15:00 CEST Lunch break
15:00-17:00 CEST Part 2 - Profiling on Linux

Details

Get up-to-speed with the latest Linux Qt debugging and performance tools

This training gives an introduction to various tools which help developers and testers in finding bugs and performance issues.

The tools presented cover a wide range of problems, from general purpose debugging and CPU profiling to Linux specific high-level analyzers. Often, it is relatively simple to run a tool, but interpreting the results, or even just using some of the more advanced tools, requires deep technical knowledge.

Table of contents

Debugging on Linux:

  • a debugger that allows to go back in time: RR
    • tracing: strace
    • memory error detectors: AddressSanitizers
      • thread error detectors: ThreadSanitizer
      • GammaRay to investigate internals of Qt applications


Profiling on Linux:

  • CPU: Linux perf, hotspot
  • memory usage: heaptrack

Prerequisite

Knowledge and experience programming with Qt and C++. Basic understanding of multithreaded programming.

We will cover what I consider the most essential debugging and profiling tools on Linux. I'll show you how to use the tools, how to interpret the results. We will talk about problems you may run into during setup. And we will discuss optimizations for certain types of code patterns.

Topics include:

  • sanitizers ASAN/UBSAN/TSAN
  • linux perf, hotspot
  • heaptrack

Room 1 – 6th October

Room 1
Time Subject Host/Notes
9:00
10:00
11:00
12:00
13:00 Lunch
15:00
16:00
17:00
18:00 BoF Wrap Up Go to Room tbd

Room 2 – 4th October

Room 2
Time Subject Host/Notes
9:00
10:00 - 11:00
12:00
13:00 Lunch
15:00
16:00
17:00
18:00 BoF Wrap Up Go to Room tbd