C++ and other lectures
8.46K subscribers
39 photos
2 files
209 links
Учебный канал в Телеграм: тут будут анонсы и ссылки на лекции и стримы. Написать автору: @Tilir
Download Telegram
Небольшое развлечение с микроволновками на выходных.

Берём любую русскую пословицу, я например выбрал такую "курочка по зёрнышку клюёт, а весь двор в говне".

Просим нейронку перевести это на английский с несколькими ограничениями:

1. Должен сохраниться идиоматический смысл. Например в случае с курочкой, что небольшие постоянные усилия приводят к не обязательно позитивным, но всегда к впечатляющим результатам.

2. На выходе это должна быть именно пословица, то есть нечто в свою очередь идиоматическое со всякими курочками, рыбками, которых трудно вытащить из пруда и прочими оленями.

3. Должен быть элемент технарского юмора в области компьютерных наук.

Получившиеся поговорки можно попросить сделать картинкой с подписью и запостить в комментарии.

Призов, кроме зрительских симпатий, не обещаю ))

#llm
43😁34👍9🔥3🤔2
Всем привет. Небольшое, но важное объявление.

Yadro открывает регистрацию на летнюю программу Yadro Импульс. Среди направлений и C и C++ и даже немного компиляторы и тулчейны, всё как мы любим. Набирают сотни человек. Стажировка два месяца -- июль и август, неплохо оплачивается. Рассчитана, конечно, на студентов, там написаны ограничения на сайте.

Подробности и запись: https://edu.yadro.com/impulse

#official
🔥69🐳137🌭3👍2👎1😱1
Прочитал в ННГУ гостевую лекцию по инструментам разработки. Жаль меня так редко зовут в университеты и огромное спасибо кафедре высокопроизводительных вычислений и системного программирования и институту информационных технологий математики и механики (почему-то факультеты в ННГУ называют институтами) и лично Иосифу Борисовичу Меерову за приглашение и организацию.

Прошло отлично, надеюсь студентам тоже понравилось (если кто то был на лекции из подписчиков -- кидайте честные отзывы в комментарии, мне важна обратная связь). По моим впечатлениям, аудитория была отличная.

Когда выложат запись обязательно дам ссылку на этом канале.

Завтра встреча с читателями и надеюсь придут все кто записался в таймпад.

Из университетов следующий iSpring в Йошкар-Оле 17 мая. Там тоже анонс должен появиться и скоро я тут напишу детали.

Ну и на следующей неделе встреча с читателями в Ростове На Дону, обязательно приходите, анонс был чуть выше ))

#official #author_event
🔥129👍294🍓4❤‍🔥1😱1
Провёл встречу с читателями в Нижнем Новгороде.

Проговорили более двух с половиной часов. Записи не было, так что беседа шла с полностью открытыми интеллектуальными шлюзами. Обсудили не только такие неизбежные темы как мои творческие планы и ML в компиляторах, но и более сложные темы, например состояние гуманитарной науки и мультфильм my little pony. Подписал много книжек. Впервые на встрече был десятиклассник уже читающий мою книгу, что, конечно, вау.

Спасибо всем кто пришёл.

P. S. до встречи зашёл в кафе "Гуси" где меня узнала девушка бариста и сказала что тоже смотрит мои лекции. Это было ещё более вау. Я прямо почувствовал, что в Нижнем меня особенно любят. Очень это ценю.

Спасибо книжному магазину Дирижабль на Большой Покровке за организацию.

#author_event
🔥23151👍20👏4🐳1
Провёл встречу с читателями в Ростове на Дону в библиотеке. Было много людей, общение снова шло без записи и довольно откровенно. Обсудили зачем в мире больше одного компилятора, взгляды Федора Достоевского на код ревью, а также что советовал Чжуан Цзы насчёт перехода программиста в менеджмент. Ну и про книжку пообщались.

Начали разговаривать в уютной комнате с огромным столом и портретами классиков. Но после часа общения и автограф-сессии нас оттуда прогнали. В ответ на это, мы, не обинуясь, оккупировали читальный зал и еще общались полтора часа просто под недоумевающие взгляды сотрудников.

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

С моей точки зрения прошло очень круто, большое спасибо всем кто пришёл. Особенно спасибо C++ группе Ростова на Дону за распространение информации в локальном коммьюнити (ссылку скинут в комментарии) а также Донской Библиотеке за организацию встречи и общую терпимость к самозахвату читального зала.

#author_event
🔥168👍4317
Всем привет. По ближайшим событиям.

17 мая читаю гостевую лекцию в институте iSpring в Йошкар-Оле. Тема примерно та же что и в ННГУ: инструменты разработки.
22 мая вместе с Настей Черниковой выступаем на PhDays в Москве https://phdays.com/ru/forum/program/?tags=development&talk-id=1867
24 мая вместе с Ильёй Андреевым выступаем на Yadro C++ митапе в Санкт-Петербурге https://meetups.yadro.com/cpp-kernel-spb-0525
7 июня читаю гостевую лекцию в Школе 21 в Великом Новгороде.

#official
🔥3326👍8👏3
Выступил на конференции Аскон. Конференция была внутренняя (только для сотрудников компании), а я был приглашённым спикером. Слот выдали небольшой, но в пленарной части, что уважительно само по себе. Плюс моё выступление мне разрешили выложить у себя, за что особенное спасибо.

Что можно успеть за 20 минут? Я попробовал успеть небольшой спидран по тому, что каждый программист должен знать про то, почему компиляторы могут оптимизировать вообще и какие оптимизации лучше держать включёнными. Материал частично пересекается с выступлением на SnowOne, но там я много говорил о сравнении с динамическими языками, подробно и академично, а здесь своего рода выжимка. Мне кажется -- довольно полезная.

Судя по всему, остальные доклады с конференции никуда вовне не выложат, что жаль, там были интересные.

https://youtu.be/YfgwPY5FulY

P. S. SnowOne тоже скоро будет, возможно уже вот-вот.

#conference
👍111🔥3914😱2
Выложили мой доклад на конференции SnowOne. Кажется он получился довольно удачным. Я подробно обсудил чем статически компилируемые языки такие как C++ отличаются от динамически компилируемых, таких как Java. Отдельно остановился на разгадке того факта почему в Java нет UB и привёл пример из C++ где по той же логике в C++ нет UB.

https://www.youtube.com/watch?v=fAZSIAsKarc

00:00 Введение.
08:18 Абстрактная машина языка и as-if rule.
16:44 Трансляционная семантика и виды поведения программ.
25:10 Борьба против UB это борьба против производительности.
35:20 Смешение трансляции и исполнения.
43:10 Резюме, выводы и ответы на вопросы.

#conference
👍94🔥289👏41👀1🦄1
Выложили самый важный мой доклад этого года про модули в C++.

Он оформлен в виде сказки про кашу из топора. Вы все знаете эту сказку, но я расскажу её по новому.

https://www.youtube.com/watch?v=LvRQH8Gkl1E

00:00 Начало
03:30 Дисциплина для меньшей сложности
07:30 Компонентный подход
11:50 Появление топора: precompiled headers
17:30 Кусочек мяса: контроль экспорта и модули
27:05 Немного крупы: транзитивный импорт
32:54 Кусочек масла: глобальный фрагмент
42:40 Финальный рецепт и ответы на вопросы

Давайте приложим силы к тому, чтобы модули стали былью.

Альтернативная ссылка: https://vkvideo.ru/video-77278886_456239996

Презентация: https://jrg.su/3bcqzV

#conference
🔥157👍28223
Провёл гостевую лекцию в Йошкар Оле в институте iSpring. Было довольно много народа (и невероятно огромный зал, прикладываю отдельно фотку левой и правой частей). Как обычно, очень порадовали студенты как отличными ответами на мои вопросы так и своими вопросами мне.

Организаторы делали довольно профессиональную видеозапись. Возможно, скоро выложу.

После лекции ещё больше часа общались, довольно неплохо. Надеюсь всем тоже понравилось.

Огромное спасибо iSpring и лично Алексею Малову за приглашение и за то, что был также организован доступ студентам местного ПГТУ (поволжского государственного). Алексей на одной из фоток. К слову он, кроме основной работы, также преподаёт информатику в местном универе и у него есть ютуб канал с лекциями: https://youtube.com/@vividbw

Следующий в планах Великий Новгород 7-го июня, гостевая лекция в Школе 21. Более подробно ближе к дате.

#author_event
93👍51🔥20
Выкладываю запись своего выступления в институте iSpring 17 мая 2025 года. Огромная благодарность организаторам за приглашение и за разрешение выложить запись на моём канале.

https://youtu.be/A9B2_rAPCmw

В этой лекции мы поднимемся от самого нижнего уровня -- отдельных транзисторов до высокоуровневых языков программирования и проследим совместное развитие механизмов абстракции и инструментов разработки.

00:00 Начало: бинарные цифровые компьютеры
06:00 Мнемоническое представление и проблемы двоичного кода
14:10 Релокации и изобретение линкера
17:25 Язык ассемблера, секции и ассемблер как программа
24:30 Дизассемблер.
30:25 ABI и соглашения о вызове
35:35 Библиотеки
40:55 Проблемы ассемблера
48:10 Алгоритмические языки и компиляторы
54:45 Компилятор и его ограничения
01:03:40 Оптимизации в бэкенеде: inline и LTO
01:15:00 Гарантии по именам и механизмы абстракции
01:19:55 Завершение: абстракции не случайны

P. S.

Также есть несколько фанатский контент: та же лекция в ННГУ. Там несколько хуже монтаж, но она создаёт представление о том как я читаю одну и ту же лекцию для двух разных аудиторий: https://youtu.be/S-qSU6jau2M

#toolchain
64🔥37👍16🏆4🤓2😢1
Выложили наш с Настей Черниковой доклад на Positive Hack Days "Опен-сорс от кристалла до программного стека".

Своего рода сборная солянка, многое из этого вы уже видели в других докладах на этом канале.

Но акценты смещены и добавлена новая большая часть про конвейер, интерфейсы и открытые ядра в исполнении Насти (см. с 5-й до 20-й минуты примерно), вот это стоит посмотреть.

https://youtu.be/b_YaT_o463o

00:00 Введение. Архитектура RISC-V, открытая и расширяемая (sigh).
05:38 Стадии конвейера и интерфейсы.
13:37 Открытые ядра на базе RISC-V, тестовое окружение и проблема верификации
19:14 Компиляторные технологии и LLVM
24:46 Моделирование и верификация RISC-V на разных уровнях и llvm-snippy
29:17 Задача бенчмаркинга и llvm-exegesis
34:24 Проблема высокоуровневого ПО, профили и развитие экосистемы
41:15 Ответы на вопросы

Альтернативная ссылка:

https://vkvideo.ru/video-28022322_456241183

#conference #riscv
🔥78👍1712👏1😍1
Продолжаю выводить в свет своих учеников и коллег. На этот раз на C++ митапе Yadro я выступил вместе с Ильёй Андреевым -- старшим инженером в моей команде, работающим много над чем и в том числе над девиртуализацией в Syntacore Devtoolkit. Для Ильи это первое выступление и, мне кажется, получилось отлично.

Мы рассмотрели вопросы девиртуализации -- сначала простые случаи, разобранные, в частности, в моей книге, а дальше более интересные алгоритмы, которые способны работать в сложных случаях и давать отличный прирост производительности. Не обошлось без починки странных примеров добавлением одного символа и без далеко идущих выводов относительно вашего кода.

https://www.youtube.com/watch?v=egdhQOQsj_Q

00:00 Начало. Два полиморфизма.
05:15 Обратите внимание: мы с Ильёй отлично знаем про виртуальные деструкторы. На дальнейших слайдах их нет для экономии места.
05:44 Виртуальные функции это дорого?
09:25 Две девиртуализации.
13:15 Совместная работа оптимизаций в компиляторе, моя книжка и sc-dt, над которым мы с Ильёй работаем. Концепция VCT.
17:35 Появление Ильи. Что если убрать виртуальные функции: идеи вокруг std::variant.
22:50 Погружение в таблицы виртуальных функций.
27:30 Идея и алгоритм спекулятивной девиртуализации в компиляторе.
33:05 Один очень интересный случай когда она может не сработать
35:15 Бенчмаркинг и выводы
39:15 Вопросы из зала

Альтернативная ссылка: https://rutube.ru/video/fe56f9b56f6caa6943465b1568c490d1

P. S. В ближайшее время будет пост про предстоящие встречи с читателями, в частности про встречу в Екатеринбурге, там назначили дату и место.

#conference
🔥67👍2722