We talk about virtual functions, and how the performance of software with virtual functions depends on many factors: the cost of additional instructions, cache misses, branch prediction misses, instruction cache misses and compiler optimizations.
We are exploring how class size and layout of its data members affect your program’s speed
Take part in a performance tuning contest to learn more about performance tuning on a real world code.
This is the first article about hardware support for parallelization. We talk about SIMD, an extension almost every processor nowadays has that lets you speed up your program.
Big O notation is commonly used to describe algorithm performance. But modern hardware makes performance analysis much harder than it used to be. In this short article we give three interesting examples to illustrate the limits of big O notation.
When it comes to performance, there are two ways to go: one is to improve the usage of the existing hardware resources, the other is to use the new hardware resources. We already talked a lot about how to increase the performance of your program by better using the existing resources, for example, by decreasing…
We investigate the performance impact of multithreading.
We investigate a simple way to speed up std::sort from the standard library
A few days ago I wrote a small app to illustrate one of the articles I was preparing. Basically the program was loading a file from the hard disk, sorting it, and then outputting to another file only unique values (by omitting duplicates). The function for writing unique values to a file looks like this:…
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++.