Ivica Bogosavljević from Johny’s Software Lab gave a talk on November 26th, 2020 as part of C++ User Group Osnabrück related to the performance price the developers pay when they are using dynamic memory in C and C++.
When processing (searching, inserting etc) your data structure, if you are accessing it in random-access fashion, the performance will suffer due to many data cache misses. Read on how to use the explicit data prefetching to speed up access to your data structure.
Multitime is a tool that you can use to repeat a command several times, and get additional information about its runtime: mean, standard deviation etc. Read this short article to get you started,
We talk about C++ and its weakness for temporary objects and excessive copying. We also give some tips on how to avoid them and make your program faster.
We will talk about expensive instructions in modern CPUs and how to avoid them to speed up your program.
Profile guided optimizations are a compiler-supported optimization technique that is easy to use and will make your program run faster with little effort. Here you will learn how to enable it on your project and what kind of improvements you can expect.
We investigate what is the best way to store polymorphic objects in a container for fast access
Learn about RR, a tool that will change the way you debug. RR will allow you to record bugs once and replay them anywhere. It will also allow you to reverse-execute your program, a feature that will simplify your debugging and your life.
If your program uses dynamic memory, its speed will depend on allocation time but also on memory access time. Here we investigate how memory access time depends on the memory layout of your data structure. We also investigate ways to speed up your program by laying out your data structure optimally.
We talk about how to speed up your program if your program is taking time to allocate or release memory.