TGViewer
this->notes. this->notes. @thisnotes · 4.52K subscribers
Post #385 5.25K
#list

0. [talk] Cutting C++ Exception Time by 93.4%.

Khalil Estell рассказывает про то, как он срезает косты при использовании икслючений на железках.
Как настоящий сварщик, он взял самые жирные куски и по одному их поускорял. Причём ускорения довольно прикольные. Местами их сложность примерно около нуля. Но это ж надо было додуматься всё равно!
Ещё чувак очень естественно выглядит на сцене. Мегауверенно. Будем у него учиться.

1. [article] C++20 idioms for parameter packs.

Солиднейшая статья про variadic templates.
Первая треть фокусируется на базе: какие бывают, где можно писать, где нельзя (рекомендую вчитаться, даже если разбираетесь; я нашёл для себя несколько интересностей).
Вторая-третья на идиомах, которые сегодня помогают делать красивое полезное.
Местами ту мач формальная, но я давно убеждён, что C++ сообщество -- сборище душных персон, которые за незнание каждой буквы в стандарте готовы публично растерзать (я сам душный, но не настолько, к счастью).

2. [article] How does it work - The Log-Structured Merge (LSM) Tree.

Там немного пролистайте вниз к теме.

3. [talk] Intro to Large Language Models.

Лекция двухлетней давности от Andrej Karpathy про устройство LLM, как они живут, учатся и ломаются.
Кажется, это что-то фундаментальное на года, что можно будет ещё детям показать для общего развития.

4. [fact] std::optional::value

Смотрел Understanding Optimizers: Helping the Compiler Help You, в котором докладчик говорит про то, что код с std::optional вида

if (x) y = x.value()

превращается в

if (x.m_active) {
if (x.m_active) {
y = x.m_data;
} else { throw ...; }
}


И он прав. Это прям хороший наглядный пример лишнего чека и нашего с вами перфа. Но вопрос не только в двойной проверке. Вопрос в исключении. Мы у себя стараемся юзать std::optional::value просто потому что когда проверка вдруг потерялась, вы полусаете адекватное исключение с понятной ошибкой. Да, проблему надо ещё поискать, но по крайней мере понятно, что искать.
Проверку потерять нереально? Конечно это не так. Код бывает разный. Рефакторинги регулярными. Вообще на раз два.
Короче делаем трейдоф перфоманс-скорость дебага проблем в сторону последнего.

Правда я умолчал о важном моменте. Докладчик всё-таки отмечает, что компилятор не делает лишних проверок. Всё там в порядке.

=============================

Буду рад вашим предложениям, вопросам и вбросам в личных сообщениях, сообщениях в канал или в форме.
  • 🔥 13
  • ❤ 6
  • 👍 5
More from @thisnotes
  1. Sep 17, 2026#common Сидите вы себе спокойно, разрабатываете поиск каких-нибудь объектов. Может это тов…
  2. Sep 9, 2026#cpp #books Да, книга 2001ого года. Мы ровесники. И да, в ней в основном обсуждаются какие…
  3. Sep 2, 2026#perf Попробовал собрать в кучку (кажется, немного сумбурно всё же) мысли по двум моментам…
  4. Aug 31, 2026Давайте новый тег заведём: #perf Во-первых, надо понять, что я вообще понимаю под перфом,…
  5. Aug 27, 2026#common Мы часто делаем системы, которые обладают какими-то ограничениями. Ограничения наш…
  6. Aug 24, 2026#list 0. [talk] Achieving Peak Performance for Matrix Multiplication in C++. Aliaksei Sala…
Threads Profile ViewerView any public Threads profile without an account.Open ThreadLook →Writing with AI? Make it sound human.Metric37 rewrites AI drafts so they read naturally. Free AI detector, 1,500 words free.Try Metric37 →