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.
There are a subset of problems in software development that can be traced back to system calls or signals. Learn about STRACE, tool that let you trace system calls and signals and that can help you quickly figure out the origin of those problems.
In this articles we investigate on how branches influence the performance of the code and what can we do to improve the speed of our branchfull code.
CPU dispatchingh is all about making your code portable and fast. We will talk about how to make your detect features your CPU has at is disposal and select the fastest function for that particular CPU without a need to recompile your software.
We will talk about how to profit from some of GDB’s very useful albeit less known features.
Function calls are not cheap operations and for time critical code it is better to avoid them. This article explores techniques you can use to avoid function calls thus speeding up your code.