Загрузка страницы

CppCon 2015: Bryce Adelstein-Lelbach “Benchmarking C++ Code"

http://www.Cppcon.org

Presentation Slides, PDFs, Source Code and other presenter materials are available at: https://github.com/cppcon/cppcon2015

With the ending of Moore's Law and the rise of multicore systems, programmers from across the industry are increasing forced to develop and maintain highly performance sensitive software. For C++, a language frequently used for performance sensitive projects, benchmarking and performance analysis is especially important. Developing good benchmarks can be tricky; gathering and analyzing data from benchmarks can be an even greater challenge.

This talk will discuss techniques and best practices for writing C++ benchmarks using facilities from the standard library and Boost. We'll also cover the development of performance unit/regression tests. We'll discuss the statistical best practices for gathering data, as well as techniques for benchmarking a variety of different metrics - time, memory, algorithmic complexity, etc.

The main topics which will be covered:

* Statistical Best Practices (dealing with uncertainty, achieving statistical confidence, how to sample)
* Time-Based Benchmarking (best practices for timing, derived time-based metrics)
* Non-Time-Based Benchmarking (memory, algorithmic complexity in time and space, etc)
* Techniques for C++-specific Performance Metrics (counting copies/moves, allocator tricks)
* Converting Benchmarks into Tests

Bryce Adelstein-Lelbach is a researcher at the Center of Computation and Technology (CCT) at Louisiana State University. He works on the HPX runtime system and his research interests include parallel and distributed programming frameworks for scientific applications. He has been working on HPX for over a year now.

Videos Filmed & Edited by Bash Films: http://www.BashFilms.com

*-----*
Register Now For CppCon 2022: https://cppcon.org/registration/
*-----*

Видео CppCon 2015: Bryce Adelstein-Lelbach “Benchmarking C++ Code" канала CppCon
Показать
Комментарии отсутствуют
Введите заголовок:

Введите адрес ссылки:

Введите адрес видео с YouTube:

Зарегистрируйтесь или войдите с
Информация о видео
18 октября 2015 г. 19:56:01
01:11:25
Другие видео канала
Lightning Talk: MP: Template Meta-Programming in C++ - Kris Jusiak - CppCon 2022Lightning Talk: MP: Template Meta-Programming in C++ - Kris Jusiak - CppCon 2022Lightning Talk: The Future of C++ - Neil Henderson - CppCon 2022Lightning Talk: The Future of C++ - Neil Henderson - CppCon 2022Lightning Talk: Ref, C++ const ref, immutable ref? - Francesco Zoffoli - CppCon 2022Lightning Talk: Ref, C++ const ref, immutable ref? - Francesco Zoffoli - CppCon 2022Lightning Talk: How to Win at Coding Interviews - David Stone - CppCon 2022Lightning Talk: How to Win at Coding Interviews - David Stone - CppCon 2022Lightning Talk: Dependency Injection for Modern C++ - Tyler Weaver - CppCon 2022Lightning Talk: Dependency Injection for Modern C++ - Tyler Weaver - CppCon 2022Lightning Talk: Best Practices Every C++ Programmer Needs to Follow - Oz Syed - CppCon 2022Lightning Talk: Best Practices Every C++ Programmer Needs to Follow - Oz Syed - CppCon 2022Back to Basics: Standard Library Containers in Cpp - Rainer Grimm - CppCon 2022Back to Basics: Standard Library Containers in Cpp - Rainer Grimm - CppCon 2022A Faster Serialization Library Based on Compile-time Reflection and C++ 20 - Yu Qi - CppCon 2022A Faster Serialization Library Based on Compile-time Reflection and C++ 20 - Yu Qi - CppCon 2022Breaking Dependencies - C++ Type Erasure - The Implementation Details - Klaus Iglberger  CppCon 2022Breaking Dependencies - C++ Type Erasure - The Implementation Details - Klaus Iglberger CppCon 2022Back to Basics: C++ Smart Pointers - David Olsen - CppCon 2022Back to Basics: C++ Smart Pointers - David Olsen - CppCon 2022C++ for Enterprise Applications - Vincent Lextrait - CppCon 2022C++ for Enterprise Applications - Vincent Lextrait - CppCon 2022Purging Undefined Behavior & Intel Assumptions in a Legacy C++ Codebase - Roth Michaels  CppCon 2022Purging Undefined Behavior & Intel Assumptions in a Legacy C++ Codebase - Roth Michaels CppCon 2022Refresher on Containers, Algorithms and Performance in C++ - Vladimir Vishnevskii - CppCon 2022Refresher on Containers, Algorithms and Performance in C++ - Vladimir Vishnevskii - CppCon 2022Back to Basics: C++ Testing - Amir Kirsh - CppCon 2022Back to Basics: C++ Testing - Amir Kirsh - CppCon 2022Taking Static Type-Safety to the Next Level - Physical Units for Matrices - Daniel Withopf CppCon 22Taking Static Type-Safety to the Next Level - Physical Units for Matrices - Daniel Withopf CppCon 22The Hidden Performance Price of C++ Virtual Functions - Ivica Bogosavljevic - CppCon 2022The Hidden Performance Price of C++ Virtual Functions - Ivica Bogosavljevic - CppCon 2022C++ Lambda Idioms - Timur Doumler - CppCon 2022C++ Lambda Idioms - Timur Doumler - CppCon 2022import CMake, CMake and C++20 Modules - Bill Hoffman - CppCon 2022import CMake, CMake and C++20 Modules - Bill Hoffman - CppCon 2022Back to Basics: C++ Move Semantics - Andreas Fertig - CppCon 2022Back to Basics: C++ Move Semantics - Andreas Fertig - CppCon 2022Taking a Byte Out of C++ - Avoiding Punning by Starting Lifetimes - Robert Leahy - CppCon 2022Taking a Byte Out of C++ - Avoiding Punning by Starting Lifetimes - Robert Leahy - CppCon 2022How Microsoft Uses C++ to Deliver Office - Huge Size, Small Components - Zachary Henkel  CppCon 2022How Microsoft Uses C++ to Deliver Office - Huge Size, Small Components - Zachary Henkel CppCon 2022
Яндекс.Метрика