YoVDO

Debugging and Profiling C++ Template Metaprograms

Offered By: CppNow via YouTube

Tags

C++Now Courses

Course Description

Overview

Save Big on Coursera Plus. 7,000+ courses at $160 off. Limited Time Only!
Explore advanced techniques for debugging and profiling C++ template metaprograms in this comprehensive conference talk. Delve into the world of C++ Template Metaprogramming, understanding its applications in expression templates, static interface checking, code optimization, domain-specific language embedding, and active libraries. Learn about the challenges faced in designing, maintaining, and analyzing template metaprograms, including increased compilation times. Discover a prototype toolset developed to support developers working with large C++ codebases that heavily utilize templates. Gain insights into the toolset's functionality, built on the llvm/clang compiler infrastructure, which captures critical template-related compiler actions and generates XML trace files. Examine the Qt-based frontend that visualizes results, offering features like source code view, breakpoints, step-by-step replay, and instantiation graph animation. Compare run-time and compile-time approaches, explore the advantages and issues of instrumentation, and understand the importance of compiler support in template metaprogramming.

Syllabus

Intro
Agenda
C++ Template Metaprograms
When to use metaprograms?
Run-time vs Compile time
Tool support
Why we need tools?
C++ Template Metaprogramming
Run-time vs. Compile time
Templight 1.0
Advantages of instrumentation
Issues with instrumentation
Compiler support
Templight 2.0
Installation
Running
Templar
Breakpoint
Filter
Profiler
Memory
Distorsion
Vision
Summary


Taught by

CppNow

Related Courses

Your Favorite Undefined Behavior in C++
CppNow via YouTube
Under the Hood - Assembly, System Calls, and Hardware in C++
CppNow via YouTube
Carbon Language Successor Strategy - From C++ Interop to Memory Safety
CppNow via YouTube
Value Oriented Programming Part 1 - You Say You Want to Write a Function
CppNow via YouTube
Introducing a Memory-Safe Successor Language in Large C++ Code Bases
CppNow via YouTube