C++ and other lectures
8.47K subscribers
39 photos
2 files
210 links
Учебный канал в Телеграм: тут будут анонсы и ссылки на лекции и стримы. Написать автору: @Tilir
Download Telegram
Выложил финальную лекцию по атомикам. На этой лекции мы завершаем рассмотрение этой огромной темы. Наконец-то мы напишем bounded lock-free queue и снимем замеры. Но до этого нам предстоит разобраться с моделями памяти и теорией относительности. Лекция заканчивается большим списком литературы.

https://youtu.be/Y1q_Z2T2UcE

#cpp_postgraduate
🔥43👍84🏆2
Выложил новую лекцию по C++. На этот раз она посвящена параллелизму.

https://youtu.be/nvjQTt2RM8A

После того как мы выбрались из атомиков, она гораздо более расслабленная. Начнём мы с рассмотрения параллелизма через политики стандартных алгоритмов. Далее исследуем варианты написания собственных параллельных алгоритмов через std::async. Далее нас ждут GPGPU и основы SYCL. В конце придёт время для того чтобы заглянуть в будущее и посмотреть что встретит нас в 2026-м году и далее.

#cpp_postgraduate
🔥51👍6
Это закреплённый пост, начните с его прочтения.

Прецедентные правила канала (просто почитайте и соотнесите с ними то что вы хотите написать): https://t.me/cpp_lects_rus/169

В качестве технического дополнения: пожалуйста не оставляйте в группе канала постов, не прикреплённых к веткам обсуждения.

Для сбора запросов на новые ветки используйте direct messages на канале, они бесплатны. Информация как их найти тут: https://t.me/cpp_lects_rus/287

На канале введена система тегов для навигации. Ниже теги изложены в алфавитном порядке.

#author_event -- встречи с читателями
#books -- обзоры чужих книг
#c_graduate -- изложение на C для первого курса
#conference -- что-то касающееся конференций в которых я участвую
#combinatorics -- что-то про комбинаторику
#compilers -- алгоритмы оптимизирующей компиляции
#computability -- что-то про вычислимость
#cpp_graduate -- изложение на C++ для второго курса
#cpp_postgraduate -- изложение на C++ для магистратуры
#interview -- интервью со мной в разных местах
#graphics -- что-то про GPU или GPGPU
#happynewyear -- традиционное подведение итогов года
#knuth -- вольные переводы Дональда Кнута
#llm -- общение с микроволновками
#official -- под этим тегом я говорю от своего лица, обычно какие-то технические вещи и объявления
#publications -- публикации в научных журналах и не только
#riscv — нечто про открытую и расширяемую архитектуру RISC-V
#talks -- обзоры чужих докладов
#toolchain -- что-то про системы компиляции, а также ассемблеры линкеры и всё такое
#torrent -- публичная выкладка пакетами
#questions -- предложения что-то обсудить

Размечены все существующие посты. Если найдёте ошибки в разметке сообщайте.

Ютуб-канал с моими лекциями: https://www.youtube.com/@tilir
Рутуб-канал с ними же: https://rutube.ru/u/cpplectsrus/

Курс по языку C: https://youtube.com/playlist?list=PL3BR09unfgchRxdDws74aY4mlSk9eYGEs
Базовый курс по C++: https://www.youtube.com/playlist?list=PL3BR09unfgciJ1_K_E914nohpiOiHnpsK
Магистерский курс по C++: https://www.youtube.com/playlist?list=PL3BR09unfgcgf7R88ZQRQqWOdLy4pRW2h
Оптимизирующие компиляторы: https://www.youtube.com/playlist?list=PL3BR09unfgcjBG1H9xRUesaQX6nCsobs1

#official
🔥107👍346❤‍🔥6
C++ and other lectures pinned «Это закреплённый пост, начните с его прочтения. Прецедентные правила канала (просто почитайте и соотнесите с ними то что вы хотите написать): https://t.me/cpp_lects_rus/169 В качестве технического дополнения: пожалуйста не оставляйте в группе канала постов…»
Всем привет. И снова настало время обратиться за небольшой помощью к залу.

В своей лекции про многопоточность я использую иллюстрацию замечательного русского художника В. Г. Сутеева (три котёнка это три потока, труба это критическая секция).

И вот я подумал почему бы не попросить картинку у нейросети. Я использовал Кандинского 2.1 и пытался формулировать запросы.

Запросы были такие: "три котёнка в трубе", "три котёнка ползут по трубе", "три котёнка внутри трубы". Я сгенерировал наверное изображений тридцать, прикладываю три самых симпатичных. Но это всё не то.

Мне нужна картинка как три котёнка ползут внутри лежащей на земле трубы по одному.

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

UPD: результаты конкурса https://t.me/cpp_lects_rus/173

#llm #questions
😁42👍12🔥9💔1
Channel photo updated
Выложил первую часть последней лекции магистерского курса — мы начинаем сопрограммы.

https://youtu.be/mDajl0pIUjQ

Сначала мы потратим немного времени на обзор разновидностей сопрограмм, потом исследуем их основные части и дальше нас ждёт много интересных упражнений: собственный генератор, исследование объектов ожидания и разбор тонких и сложных проблем.

#cpp_postgraduate
🔥46👍175🦄1
Выложил последнюю лекцию курса.

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

https://youtu.be/WZhxMwKaXmw

Это завершает мой магистерский курс и я сам не верю что мне удалось его записать и выложить. У меня бы это не получилось без Юлия Тарасова https://t.me/botan_razdolb который на всех этих лекциях был оператором и звукорежиссером (и немного продюсером).

Базовый курс 2021-22 и магистерский курс 2022-23 вместе это главное что есть на моём канале.

Базовый:
youtube: https://www.youtube.com/playlist?list=PL3BR09unfgciJ1_K_E914nohpiOiHnpsK
rutube: https://rutube.ru/plst/119828/

Магистерский:
youtube: https://www.youtube.com/playlist?list=PL3BR09unfgcgf7R88ZQRQqWOdLy4pRW2h

Дальнейшие творческие планы -- это записать наконец-то базовый курс по языку C и ассемблеру. Также хочется записать курс по вычислимости. И может быть что-то по бэкендам компиляторов.

Летом я скорее всего также запишу и выложу несколько обещанных лекций по системам сборки (я обещал на 1к в телеграме и приближается 10к на ютубе).

Ну и ещё бы перезаписать тулчейн с понями, так как слайдов явно добавилось и пони тоже.

В общем как мне сказала сейчас ChatGPT когда я попросил её сделать последнюю фразу этого поста: "пусть каждый ваш день будет наполнен сияющими моментами и вдохновением, а ваши мечты сбываются с легкостью. Идите вперед и покоряйте мир своим уникальным блеском".

#cpp_postgraduate #official
133👏24👍14🔥8❤‍🔥6🍓2😁1👨‍💻1
Всем привет. Есть такая идея — для всех кто вместе со всеми нами весь год смотрел магистерский курс провести пиринговый экзамен (когда вы пишете задание и оно отправляется на проверку двум людям и вам тоже приходят два задания других людей).

Задание будет состоять из двух задач. Одна вида "спроектируйте класс" (нечто многопоточное или с умными указателями или с аллокаторами или всё вместе), другая вида "напишите код" (обычно что-то с корутинами или параллелизмом или вместе).

Четыре часа на выполнение (можно не отлаживать код до идеального состояния, достаточно продемонстрировать идею), потом четыре часа на кросс-проверку.

Сколько людей хотело бы в таком участвовать в какие-нибудь ближайшие выходные? Сейчас устрою опрос, проголосуйте там если хотите, а этот пост оставлю для комментариев.

#official
👍26🔥17🌚41
🔥8🥴4💔1
Моё прошлогоднее выступление на C++ Russia наконец-то выложили в открытый доступ (раньше было только по ссылке).

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

Напоминаю что у этого выступления есть follow-up и допглавы: https://www.youtube.com/watch?v=-aE1hD9OWRk где мы погружаемся глубже и разбираем те же вопросы более обстоятельно.

#conference #graphics
👍53🔥127🍓3💔2🥰1
Всем привет. После размышлений и консультаций, было решено что пиринговый экзамен по магистерскому курсу устроим в следующую субботу, 27 мая.

В течении недели есть время на подготовку. Проголосовали "за" в опросе 45 человек, вполне достаточно для экзамена. Если решите сдавать, добавляйтесь в группу https://t.me/+RtzEqpc4OKpmYzhi вся остальная информация о формате проведения и прочем — будет там.

#official
👍18🔥2🙈1
Выложил своё выступление на конференции Аскон от 25 апреля сего года.

По сути это очень сжатый (мне урезали таймслот до 40 минут и я выживал в этих пределах как мог) рассказ про многопоточность с нуля и до транзакционной памяти.

Огромная благодарность организаторам за отличные съёмки, монтаж и разрешение выложить на своём канале.

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

P. S. Я там вначале упоминаю код на футболках которые раздавали на конференции. Сфоткал: https://ibb.co/RSXSyMx

#conference
👍62🔥247🥰1
Выложили по ссылке мой вебинар проведённый в рамках программы вебинаров Российского Альянса RISCV для различных университетов.

Кратко рассказываю что такое RISCV и как устроена эта архитектура. Очень общий обзор.

https://www.youtube.com/watch?v=3Jv9_jBq1fE

В этой серии у меня также будет второй вебинар посвящённый конкретно средствам разработки под RISCV.

Также из ближайших планов: скоро откроется по ссылке моё выступление на C++ Russia этого года, ссылку я скину сюда же. И в этом году я ещё подался на Zero Cost с докладом про масштабируемую векторизацию. Просто лето конференций получается ))

#conference #toolchain #riscv
59🔥38👍25👏2🌭2😁1
Выложили по ссылке моё выступление на C++Russia 2023. Выступление было на конференции отлично принято коллегами и набрало массу лестных отзывов и высоких оценок. Теперь можно представить его более широкой аудитории.

https://www.youtube.com/watch?v=lc3UkIZ4zOY&t=110s

В языке C++ есть синтаксис и семантика. Когда мы говорим о синтаксисе, мы говорим о контекстно-независимых конструкциях, которые просто что-то означают. Например, if — это всегда if.

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

#conference #cpp_postgraduate #llm
🔥989👍9👏3
Выложили по ссылке мой второй вебинар проведённый в рамках программы вебинаров Российского Альянса RISCV для различных университетов.

Кратко рассказываю про инструменты разработчика от начала до конца. В начале рассказываю чем компилятор от линкера отличается. В конце загружаю RISCV Linux на System QEMU. Всё это за полчаса, поэтому плотненько.

https://www.youtube.com/watch?v=29iNHEhHmd0

Дальнейшие вебинары там будут вести уже другие спикеры (мы изначально договаривались что мои там первые две лекции). Общий плейлист для желающих следить: https://www.youtube.com/playlist?list=PLJujc0We8tx80x0z8W6v68Iotteb4wK3W

#toolchain #conference #riscv
👍54🔥13123🕊1💊1
Всем привет. Через две недели выступаю вот здесь: https://cppzerocostconf.yandex.ru/cxxzerocostconf_2023 с докладом про векторизацию. Сначала разберём всю боль обычной векторизации, повекторизуем руками некоторые вещи. Потом я представлю масштабируемую векторизацию, это новая концепция которая сейчас набирает обороты в ARM и RISCV. Посмотрим как она решает проблемы. А потом поговорим о том как она создаёт проблемы.

Можно рассматривать это как продолжение записанного мной прошлым летом допсеминара про SIMD, см. https://t.me/cpp_lects_rus/27

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

#conference
🔥82👍2233