Научный семинар по системному программированию
4 курс, 7-8 семестр Язык: русский
Описание
Курс посвящен современным веяниям в мире системного программирования. На каждом занятии выступает докладчик из индустрии или академии, рассказывающий на близкую его профессиональной и научной деятельности тему.
Правила получения зачета
- Посещаемость >= 80% — зачет.
- Посещаемость < 80% — в конце зачет по пропущенным лекциям.
- Если пропускаете по болезни, приносите справку. Но если с учетом болезни пропустили больше 50% — все равно сдавать теорию по пропущенным парам.
Преподаватель
-
Углянский Иван Евгеньевич
Запланированные семинары
Прошедшие семинары
-
GHC internals by example
На примерах посмотрим, какие стадии проходят программы на языке Haskell, какие оптимизации к ним применяет компилятор и как ваши программы выглядят внутри GHC.
-
Как случился Meltdown
Metldown - аппаратная уязвимость Intel и ARM процессоров, опубликованная в 2018-ом году и наделавшая много шуму в индустрии IT. Благодаря трём механизмам повышения эффективности компьютерных систем, без которых невозможно представить современные процессоры и OS, злоумышленник может получить доступ к защищённым данным OS.
Мы разберёмся, как осуществляется эта атака, для чего рассмотрим такие понятия, как аппаратное обеспечение, Принстонская и Гарвардская архитектуры, конвейер выполнения команд, спекулятивное выполнение, иерархия памяти и иерархия кэшей.
-
Генеративные LLM. Как технически реализованы ChatGPT/DeepSeek и прочие языковые модели
ИИ-ассистенты сегодня — огромные системы, интегрированные в инфраструктуру интернета, которые умеют распознавать картинки, видео, вести диалог с пользователем.
В формате «научпоп» расскажу про сердце таких систем — генеративные LLM. А именно — про их внутреннее устройство и инфраструктуру нейросетей, которые непосредственно работают с текстом и отвечают пользователю на его запросы.
-
Schedulers 101
Алгоритмы + OSE
Планирование: от FCFS до EEVDF
-
Компилируем компилятор или ускоряем javac вдвое
Дмитрий Соломенников из Axiom JDK расскажет, как они разгоняли javac с помощью GraalVM (а заодно немного про сам GraalVM и как он работает).
-
Основы сетевого взаимодействия (Продолжение 2)
Продолжение серии семинаров по основам сетевого взаимодействия.
-
Project Valhalla или как в Java уже много лет пытаются добавить value классы (Продолжение)
Продолжаем разговор про проблемы и тонкости nullability и атомарных доступов к скалярам в Java.
-
Project Valhalla или как в Java уже много лет пытаются добавить value классы
Поговорим о том, как изменить язык Java и её реализацию, чтобы открыть путь для эффективной скаляризации и инлайна объектов в другие объекты, но при этом не превратить Java в C++.
-
Основы сетевого взаимодействия (Продолжение)
Семинар посвящен целиком прикладному уровню, включая его вспомогательные подуровни: отправной точкой и центральной темой будет HTTP, как наиболее распространенный и повседневно встречающийся житель прикладного уровня, но отталкиваясь от него пройдемся и по соседям, особенно по SSL/TLS.
-
Основы сетевого взаимодействия
Семинар посвящен основам сетевого взаимодействия вообще (про модель OSI) и базовым уровням стека TCP/IP: объяснение самих принципов и понятий (что есть протокол и интерфейс, уровни адресации и т.п.).