Talk: The Price of Dynamic Memory in C and C++

In C/C+, slowdowns due to usage of dynamic memory manifest themselves in two parts:

1) Slowdowns because new/malloc or delete/free are slow
2) Slowdown because the access to allocated memory is slow

In this talk, we tried to explain why allocations are slow, why memory accesses are slow, and what the programmer can do to speed them up. We covered allocators, data structures and memory layout since these all have their place in making your program fast.

Talk: Performance Optimization Techniques for Mobile Devices: An Overview

Mobile devices are limited twofold: computational-wise and energy-wise. Making software running fast can be a challenge since we are not allowed to use brute-force multithreading that can be used in data centers.

In this talk we give an overview of performance optimization techniques for mobile devices.

  • For data lookup operations, the memory performance will be crucial, and we will give an overview of techniques you can use to speed up data lookup.
  • For data processing operations, the CPU performance is typically a bottleneck, and we give overview of optimization techniques that you can use to speed up data processing.

Talk: The performance price of virtual functions in C++

Virtual function mechanism is one of the core concepts of C++, however, it does come with a performance price. But how high is that price?

In this talk we dissect virtual functions to understand when they are slow and why they are slow. We will investigate how well virtual functions use the CPU’s underlying resources and how good is the compiler at optimizing virtual functions. We will also present several techniques to help you speed up your program using virtual functions.

Interview: CppCast

Ivica talks about performance and C++. Link to the original page.

Interview: Denis Bakhvalov’s TwitterSpaces

A general talk about performance optimizations, mostly focusing on low-level performance optimizations.