Популярное

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

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

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

Топ запросов

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

C++Now 2019: Arthur O'Dwyer “Trivially Relocatable”

Автор: CppNow

Загружено: 2019-06-23

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

Описание:

http://cppnow.org
—
Presentation Slides, PDFs, Source Code and other presenter materials are available at: http://cppnow.org/history/2019/talks/
—
At C++Now 2018, Arthur presented three candidates for "The Best Type Trait C++ Doesn't Have." One of these candidates was `is_trivially_relocatable<T>`, as seen in popular third-party libraries such as Folly, BSL, and EASTL. In the past twelve months, Arthur has implemented `__is_trivially_relocatable(T)` in a branch of Clang, made it available on Godbolt Compiler Explorer, and written it up in a proposal targeting the C++2b standard — P1144 "Object relocation in terms of move plus destroy."

In this talk, we'll explain again what "relocation" is and why it's important. (It's the operation consisting of a move-construction and a destruction which is the backbone of vector reallocation, type-erased move-construction, and swap.) We'll explain five common library optimizations that are today applied conservatively only to "trivially copyable" types such as `int*`, and show that they can be applied just as well to "trivially relocatable" types such as `unique_ptr<int>`. Time permitting, we may show benchmarks similar to last year's 3x speedup on `vector::resize`.

Most importantly, Arthur will list several things that P1144 object relocation is NOT, and explain each of them briefly, with examples. P1144 object relocation is NOT N4158 "Destructive Move" (Pablo Halpern, 2014): We'll briefly explain N4158's mechanism and its rejection by the Committee, then show how P1144 addresses those problems. P1144 object relocation is NOT data-structure-level "position-independence" or "persistability": Arthur will explain why he believes P1144 doesn't get C++ any closer to foolproof position-independent data structures. P1144 "trivially relocatable" is NOT Itanium's "trivial for purposes of ABI" attribute: Arthur will explain why they're orthogonal.

Finally, we'll discuss open design issues. There are three reasonable syntax proposals, currently named [[trivially_relocatable]], [[maybe_trivially_relocatable]], and [[trivially_relocatable(bool)]]; we'll compare examples of library code using each of these syntaxes. We'll ask what we ought to require of a trivially relocatable type's copy constructor and assignment operators. And we'll relate P1144's object-lifetime issues to P0593 "Implicit creation of objects for low-level object manipulation."
—
Arthur O'Dwyer
San Francisco, soon to be New York

Arthur O'Dwyer started his career writing pre-C++11 compilers for Green Hills Software; he currently writes C++14 for Akamai Technologies. Arthur is the author of "Colossal Cave: The Board Game," "Mastering the C++17 STL" (the book), and "The STL From Scratch" (the training course). He is occasionally active on the C++ Standards Committee and has a blog mostly about C++.
—
Videos Filmed & Edited by Bash Films: http://www.BashFilms.com
---

*--*

---

C++Now 2019: Arthur O'Dwyer “Trivially Relocatable”

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

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

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

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

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

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

The Complete Guide to `return x;` - Arthur O'Dwyer - [CppNow 2021]

The Complete Guide to `return x;` - Arthur O'Dwyer - [CppNow 2021]

Спецоперация Путина в Абу-Даби. Адам Кадыров — не преемник. Российский бизнес при смерти

Спецоперация Путина в Абу-Даби. Адам Кадыров — не преемник. Российский бизнес при смерти

CppCon 2019: Arthur O'Dwyer “Back to Basics: Smart Pointers”

CppCon 2019: Arthur O'Dwyer “Back to Basics: Smart Pointers”

C++Now 2018: Arthur O'Dwyer “An Allocator is a Handle to a Heap”

C++Now 2018: Arthur O'Dwyer “An Allocator is a Handle to a Heap”

Emacs в 2026: Секретное оружие или старый хлам? |vim, vscode, lisp, org-mode|Podlodka Podcast #460

Emacs в 2026: Секретное оружие или старый хлам? |vim, vscode, lisp, org-mode|Podlodka Podcast #460

🍫 ДУБАЙСКИЙ ШОКОЛАД НА ЗУБАХ ТРАМПА И ПУТИНА: слив Донбасса за репарации. Киев ЗАМЕРЗАЕТ - Золотарёв

🍫 ДУБАЙСКИЙ ШОКОЛАД НА ЗУБАХ ТРАМПА И ПУТИНА: слив Донбасса за репарации. Киев ЗАМЕРЗАЕТ - Золотарёв

Как и зачем охлаждают атомы — Семихатов, Вишнякова

Как и зачем охлаждают атомы — Семихатов, Вишнякова

C++Now 2019: Conor Hoekstra “Algorithm Intuition”

C++Now 2019: Conor Hoekstra “Algorithm Intuition”

CppCon 2017: Arthur O'Dwyer “A Soupçon of SFINAE”

CppCon 2017: Arthur O'Dwyer “A Soupçon of SFINAE”

Задача из вступительных Стэнфорда

Задача из вступительных Стэнфорда

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

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

coding a machine learning library in c from scratch

coding a machine learning library in c from scratch

Back to Basics: Type Erasure - Arthur O'Dwyer - CppCon 2019

Back to Basics: Type Erasure - Arthur O'Dwyer - CppCon 2019

Back to Basics: Lambdas from Scratch - Arthur O'Dwyer - CppCon 2019

Back to Basics: Lambdas from Scratch - Arthur O'Dwyer - CppCon 2019

Этот ракетный двигатель разработан не людьми

Этот ракетный двигатель разработан не людьми

Doxygen и его остроумное устройство • Исследуем и применяем • C • Live coding

Doxygen и его остроумное устройство • Исследуем и применяем • C • Live coding

Для Чего РЕАЛЬНО Нужен был ГОРБ Boeing 747?

Для Чего РЕАЛЬНО Нужен был ГОРБ Boeing 747?

C++Now 2019: Ben Deane “Identifying Monoids: Exploiting Compositional Structure in Code”

C++Now 2019: Ben Deane “Identifying Monoids: Exploiting Compositional Structure in Code”

C++Now 2018: Arthur O'Dwyer “The Best Type Traits that C++ Doesn't Have”

C++Now 2018: Arthur O'Dwyer “The Best Type Traits that C++ Doesn't Have”

Back to Basics: RAII and the Rule of Zero - Arthur O'Dwyer - CppCon 2019

Back to Basics: RAII and the Rule of Zero - Arthur O'Dwyer - CppCon 2019

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



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



Контакты для правообладателей: infodtube@gmail.com