If you’ve read the first article in this series, you’ll know what full stack tracing is and why you definitely want it. This time, we’ll show you how to setup full stack tracing on your Linux system. There are two steps – first get everything configured to capture a trace, and then view and interpret […]
Blog Archives
There and Back Again what it entails to fix 10-year-old bugs in QNetworkAccessManager
A few days ago, a customer using our KD Soap library reported an interesting problem with it. The library worked perfectly to access the SOAP server, but there was some noticeable latency when doing a series of requests in short succession from the client. This latency should not have been there, as both the server […]
How to Build C++ Projects with the Address Sanitizer on Windows memory bug detection via compiler extension
Memory bugs are tricky. Leaks have a clear impact on performance, and quickly become hard to spot when heap allocated objects move too much. Memory access bugs, on the other hand, make your program crash right away, if you’re lucky. In less desirable cases, they may end up corrupting random objects on the heap, and […]
KDE’s Akademy 2020 – A Quick Summary
What is Akademy? Akademy is the yearly conference for the KDE community, which is a community devoted to creating free software for desktop and mobile. Typically, Akademy takes place in a different city each year. However, due to the pandemic, the conference was online this time around. September 4-11 marked the dates of Akademy 2020. […]
Hotspot Version 1.3.0 Released Overview of New Features and Improvements
We are pleased to announce a new release of our Hotspot Linux perf performance analysis GUI, Hotspot version 1.3.0! Hotspot is a replacement for perf reportthat takes a perf.data file, parses and evaluates its contents, and then displays the result in a graphical form. You can read a bit more about Hotspot here: https://www.kdab.com/hotspot-gui-linux-perf-profiler/ Overview […]
QStringView Diaries: Zero-Allocation String Splitting QStringTokenizer merged for 6.0
After four months of intensive development work, I am happy to announce that the first QStringTokenizer commits have landed in what will eventually become Qt 6.0. The docs should show up, soon. While the version in Qt will be Qt 6-only, KDAB will release this tool for Qt 5 as part of its KDToolBox productivity […]
Débogage et profilage
d’applications C++ sous Linux
La formation “Débogage et profilage d’applications C++ sous Linux” enseigne les techniques de débogage et profilage d’applications sous Linux. Elle est en particulier (mais pas seulement) appropriée pour les applications utilisant la technologie objet Qt/C++. A l’issue de la formation, les participants seront capables d’appliquer leur nouveau savoir-faire pour la recherche et la résolution de […]
Hotspot v1.1.0 adds timeline and recording features New release of the GUI for the Linux perf profiler
Close to three months after the initial hotspot release, I’m happy to announce the release of version 1.1.0. Quick recap: Hotspot is a graphical frontend to the Linux perf profiler suite. It allows you to visually analyze perf.data files with the built-in Flame Graph and the Bottom-Up, Top-Down, or Caller-Callee data tables. It is a […]
Efficient barcode scanning with QZXing Profiling Qt Zebras Crossing
QZXing is a very useful library: It provides an easy to use Qt integration API around the barcode scanning library ZXing (zebras crossing). Because it is so easy to setup QZXing in a Qt application, we and most of our customers end up using it when they need to scan images for barcodes. There is, or rather […]
Slaying Latency with Linux Kernel Tracepoints
Knowing what tools are at your disposal when looking to make a program faster or keep it operating smoothly is critical to your success as a programmer. We recently solved a performance problem using Linux Kernel Tracepoints so we thought we’d share the process with you so that you can see for yourself if this […]