Class Central is learner-supported. When you buy through links on our site, we may earn an affiliate commission.

YouTube

Self-Awareness in C++ Code

NDC Conferences via YouTube

Overview

This course aims to teach learners how to enhance their C++ code by implementing a memory profiler tool. The learning outcomes include understanding memory allocation, identifying memory leaks, and optimizing memory usage. The course covers skills such as building a memory profiler, capturing call stacks, and analyzing memory allocation data. The teaching method involves a detailed walkthrough of strategies, data structures, and instrumentation techniques. This course is intended for C++ developers looking to improve the performance and reliability of their code.

Syllabus

Intro
Tech At Bloomberg
The Bloomberg Terminal
We care about performance
Memory Leaks? In 2018??
Memory Usage: A Case Study
Usual Strategies
Building a memory profiler
Where is malloc?
Strategy #1: Intercepting malloc using the allocator shim
Strategy #2: Intercepting malloc using Import Address Table redirection
Capturing the traceback: helper func
Step 3: Build a callstack / size histogram
Data structures
Gotcha #1: recursive malloc
Gotcha #1 fix: recursion protection
RAll recursion protection
Gotcha #2 fix: Thread-local storage
Instrumentation walkthrough: 2
Instrumentation walkthrough: example
Tree representation
Building the tree
Hierarchical analysis
Graphical analysis
Example 1: Alloc/Dealloc
Example 2: Simple leak
Remember our Case Study
Case Study: normal run (no errors)
Case Study: with some errors
Case Study: The logging?
Combining callstacks and instance data
Allocation context
Mixed-mode systems

Taught by

NDC Conferences

Reviews

Start your review of Self-Awareness in C++ Code

Never Stop Learning.

Get personalized course recommendations, track subjects and courses with reminders, and more.

Someone learning on their laptop while sitting on the floor.