Популярное

Музыка Кино и Анимация Автомобили Животные Спорт Путешествия Игры Юмор

Интересные видео

2025 Сериалы Трейлеры Новости Как сделать Видеоуроки Diy своими руками

Топ запросов

смотреть а4 schoolboy runaway турецкий сериал смотреть мультфильмы эдисон
dTub
Скачать

Branchless Programming in C++ - Fedor Pikus - CppCon 2021

Автор: CppCon

Загружено: 2022-01-05

Просмотров: 184867

Описание:

https://cppcon.org/
https://github.com/CppCon/CppCon2021
---
Have you ever written code like this:
void f(bool b, long x, long& s) { if (b) s += x; }
Probably you have. Would you like me to tell you how much performance you left on the table? With a small change, that function could be made 2.5 times faster.

What about this code:
if (a[i] && b[i]) do_something(); else do_something_else();
Would you believe me if I told you that, under some not-so-exotic conditions, this line runs four times slower than it could be? It’s true, and I’m going to show you when and why.

This presentation will explain how modern CPUs handle computations to ensure that the hardware is used efficiently (which is how you get high performance from the processor). We will then learn how conditional code disrupts the ideal flow of computations and the countermeasures employed by the CPU designers to retain good performance in the presence of such code. Sometimes these measures are sufficient, often with the help of the compiler. But when they aren’t, it is up to the programmer to recover lost performance by coding with fewer branches.

---
Fedor Pikus

Fedor G Pikus is a Chief Engineering Scientist in the Design to Silicon division of Mentor Graphics Corp (Siemens business). His earlier positions included a Senior Software Engineer at Google and a Chief Software Architect for Calibre PERC, LVS, DFM at Mentor Graphics. He joined Mentor Graphics in 1998 when he made a switch from academic research in computational physics to the software industry. Fedor is a recognized expert on high-performance computing and C++, he presented his works at CPPCon, SD West, DesignCon, in Software Development Journal, and is also an O’Reilly author. His responsibilities as a Chief Scientist include planning the long-term technical direction of Calibre products, directing and training the engineers who work on these products, design, and architecture of the software, and research in the new design and software technologies. Fedor has over 25 patents and over 100 papers and conference presentations on physics, EDA, software design, and C++ language.

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

YouTube Channel Managed by Digital Medium Ltd https://events.digital-medium.co.uk

*--*

Branchless Programming in C++ - Fedor Pikus - CppCon 2021

Поделиться в:

Доступные форматы для скачивания:

Скачать видео mp4

  • Информация по загрузке:

Скачать аудио mp3

Похожие видео

Using Coroutines to Implement C++ Exceptions for Freestanding Environments - Eyal Zedaka - CppCon 21

Using Coroutines to Implement C++ Exceptions for Freestanding Environments - Eyal Zedaka - CppCon 21

Unlocking Modern CPU Power - Next-Gen C++ Optimization Techniques - Fedor G Pikus - C++Now 2024

Unlocking Modern CPU Power - Next-Gen C++ Optimization Techniques - Fedor G Pikus - C++Now 2024

Программирование без ветвлений: почему «If» медленный... и что мы можем с этим поделать!

Программирование без ветвлений: почему «If» медленный... и что мы можем с этим поделать!

Локальность кэша C++ и предсказуемость ветвлений

Локальность кэша C++ и предсказуемость ветвлений

Concurrency in C++: A Programmer’s Overview (part 1 of 2) - Fedor Pikus - CppNow 2022

Concurrency in C++: A Programmer’s Overview (part 1 of 2) - Fedor Pikus - CppNow 2022

Как взломать любое программное обеспечение

Как взломать любое программное обеспечение

Cache-Friendly C++ - Jonathan Müller - CppCon 2025

Cache-Friendly C++ - Jonathan Müller - CppCon 2025

The Ridiculous Engineering Of The World's Most Important Machine

The Ridiculous Engineering Of The World's Most Important Machine

Параллельный C++: ложное разделение

Параллельный C++: ложное разделение

How to Tame Packs, std::tuple, and the Wily std::integer_sequence - Andrei Alexandrescu

How to Tame Packs, std::tuple, and the Wily std::integer_sequence - Andrei Alexandrescu

Beyond Sequential Consistency - Leveraging Atomics for Fun & Profit - Christopher Fretz - C++ on Sea

Beyond Sequential Consistency - Leveraging Atomics for Fun & Profit - Christopher Fretz - C++ on Sea

When Nanoseconds Matter: Ultrafast Trading Systems in C++ - David Gross - CppCon 2024

When Nanoseconds Matter: Ultrafast Trading Systems in C++ - David Gross - CppCon 2024

Принц Персии: разбираем код гениальной игры, вытирая слезы счастья

Принц Персии: разбираем код гениальной игры, вытирая слезы счастья

Microsoft FREAKS OUT After Windows 11 AI Features FAIL in Real Use!

Microsoft FREAKS OUT After Windows 11 AI Features FAIL in Real Use!

CppCon 2017: Fedor Pikus “Read, Copy, Update, then what? RCU for non-kernel programmers”

CppCon 2017: Fedor Pikus “Read, Copy, Update, then what? RCU for non-kernel programmers”

Цепи Маркова — математика предсказаний [Veritasium]

Цепи Маркова — математика предсказаний [Veritasium]

4 Reasons C++ Still BEATS Rust (The Technical Reality)

4 Reasons C++ Still BEATS Rust (The Technical Reality)

C++11 to C++23 in the C++ Memory Model - Alex Dathskovsky - C++Now 2024

C++11 to C++23 in the C++ Memory Model - Alex Dathskovsky - C++Now 2024

Миллиарды на ветер: Су-57 - главный авиационный миф России

Миллиарды на ветер: Су-57 - главный авиационный миф России

Теренс Тао о том, как Григорий Перельман решил гипотезу Пуанкаре | Лекс Фридман

Теренс Тао о том, как Григорий Перельман решил гипотезу Пуанкаре | Лекс Фридман

© 2025 dtub. Все права защищены.



  • Контакты
  • О нас
  • Политика конфиденциальности



Контакты для правообладателей: [email protected]