LLVM и GCC / Register allocation / IT-образование в вузах (часть 1)

  Переглядів 14,531

Истовый Инженер

Истовый Инженер

День тому

В этом выпуске Константин Владимиров, занимавшийся разработкой компиляторов для CPU и GPU, расскажет о том достоинствах и недостатках GCC и LLVM. Константин опишет различные современные подходы к аллокации регистров, применяемых в компиляторах. А также поделится базовыми рекомендациями для пользователей компиляторов, желающих улучшить производительность своих программ с помощью компиляторов. Кроме того, мы обсудили животрепещущий вопрос об IT-образовании с точки зрения преподавателя.
Насколько больно переходить на новые версии компилятора? По каким причинам выбирают LLVM? Какие достоинства и недостатки GCC и LLVM? Какие методы решения задачи аллокации регистров существуют? Насколько этот этап влияет на скорость работы программы? Почему инженерам полезно идти преподавать в ВУЗы? Какие проблемы есть у современного высшего образования в сфере IT? Ответы на эти и другие вопросы вы узнаете из этого эпизода. Больше интересного обсудим с Константином во второй части выпуска, которая выйдет чуть позже.
📍 Канал Константина: / @tilir
✅ Подписывайтесь на Telegram-канал подкаста: t.me/+bx50QfUlw4pkZDEy
🎧 Слушать «Битовые маски» на других платформах:
Яндекс.Музыка: music.yandex.com/album/26508178
Apple Podcasts: podcasts.apple.com/ru/podcast...
Все площадки: engineer.yadro.com/podcasts/c...
00:00:00 - Тизер
00:00:22 - В гостях Константин Владимиров
00:01:40 - Карьерный путь Константина
00:08:16 - Как Константин попал в сферу разработки компиляторов
00:10:05 - Процесс проектирования микроархитектуры
00:11:39 - Сравнение GCC и LLVM, преимущества и недостатки
00:15:47 - LLVM IR
00:16:41 - Все крупные системы должны быть переписаны на C++
00:17:18 - Преимущества C
00:18:57 - Наследие, оставшееся от С, в GCC
00:20:19 - Ниши gcc и clang
00:22:26 - Отсутствие бинарной совместимости для LLVM IR
00:24:42 - Различные методы аллокации регистров в компиляторах
00:34:47 - Как аллокация регистров влияет на качество сгенерированного кода
00:36:15 - Рекомендации для пользователей компиляторов
00:37:02 - Архитектурные решения проблемы аллокации регистров
00:40:07 - Польза преподавательской деятельности
00:43:43 - Собеседования при найме
00:45:27 - Что полезно для развития специалиста
00:46:56 - Проблемы IT-кафедр
00:52:10 - Участие компаний в высшем образовании
00:55:27 - Новогоднее пожелание будущим инженерам от Константина
00:57:02 - Тизер второй части
🔹 Стань частью команды YADRO! careers.yadro.com
#llvm #gcc #llvmir #c++ #itобразование

КОМЕНТАРІ: 60
@user-fn8qh2md3i
@user-fn8qh2md3i 4 місяці тому
Роскошный выпуск! Просто подарок к новому году). Спасибо ведущим и конечно же Константину!
@ultimate_engineer
@ultimate_engineer 4 місяці тому
Спасибо большое! В новом году выйдет вторая часть :)
@user-ft3xw2kg9u
@user-ft3xw2kg9u 4 місяці тому
Владимир Александрович, здравствуйте! Спасибо, что на одной из пар порекомендовали этот канал! Я знаю, вы это прочитаете!)
@MikhailGoncharov-tl4cr
@MikhailGoncharov-tl4cr Місяць тому
я просмотрел сначала 2 часть. она прогла на одном дыхании. полтора часа прошли как 10 минут. но когда понял что есть ещёи первая часть был очень доволен
@CatExpert1211
@CatExpert1211 4 місяці тому
Хороший канал, интересное интервью. Смотрю магистерский курс С++ на канале Константина с большим удовольствием
@ultimate_engineer
@ultimate_engineer 4 місяці тому
Спасибо вам большое!
@sup5282
@sup5282 4 місяці тому
мало что понимаю, но очень интересно слушать. Атмосфера в студии и манера речи гостя располагает к прослушиванию)
@ultimate_engineer
@ultimate_engineer 4 місяці тому
Здорово, что не пасуете перед непонятной информацией. Смотрите и другие выпуски "Битовых масок"!
@mr.Ponizovsky
@mr.Ponizovsky 4 місяці тому
Отлично! Большое спасибо за выпуск! Жду вторую часть
@ultimate_engineer
@ultimate_engineer 4 місяці тому
Спасибо вам! Новый выпуск выйдет в январе :)
@mr.Ponizovsky
@mr.Ponizovsky 4 місяці тому
@@ultimate_engineer супер, а пока я посмотрю другие видео) кажется там есть серия про "железо" и его программирование
@taraslitvinenko8651
@taraslitvinenko8651 24 дні тому
Спасибо большое, ребята. Успехов вам всем. Очень приятно смотреть и слушать.
@ultimate_engineer
@ultimate_engineer 24 дні тому
Спасибо большое! Если вам понравился гость, то на канале есть также 2 часть выпуска (ukposts.info/have/v-deo/l4N6dp-KiW6j24E.html) и доклад Константина с недавнего митапа: ukposts.info/have/v-deo/m3tll4Obr2-CxoU.html
@taraslitvinenko8651
@taraslitvinenko8651 23 дні тому
@@ultimate_engineer спасибо за ссылки, да я уже посмотрел вторую часть и доклад недавний в первую очередь.
@vanhelsing4214
@vanhelsing4214 4 місяці тому
Еее!! Комменты для продвижения!! Вперёёд)
@ruslankhl
@ruslankhl 4 місяці тому
Послушал с удовольствием!
@ultimate_engineer
@ultimate_engineer 4 місяці тому
Рады, что понравился выпуск! Если ещё не слушали, то у "Битовых масок" вышло ещё 6 эпизодов подкаста с интересными спикерами ;)
@romankrivonogov9474
@romankrivonogov9474 4 місяці тому
Я в процессе профессионального самоопределения, и контент Константина (и материалы "Истового Инженера*) мотивируют развиваться в разработке, несмотря на трудности ❤
@ultimate_engineer
@ultimate_engineer 4 місяці тому
Это очень радостно слышать! Желаем удачи на профессиональном пути! Будет сложно, но интересно :)
@brotherofken
@brotherofken 4 місяці тому
Спасибо за годный хардкорный контент.
@ultimate_engineer
@ultimate_engineer 4 місяці тому
Спасибо вам! Рады, что понравился подкаст!
@taraslitvinenko8651
@taraslitvinenko8651 24 дні тому
Про преподавателей я полностью согласен. Моя учёба давно окончена и не бы связанна с программированием, но у нас были на кафедре преподы которые имели рабочий опыт и это круто, истории, советы и прочие фишки открываются. Но немного взгрустнул с фразы Константина Владимирова
@nagibator77779
@nagibator77779 3 місяці тому
Думал, что с jetbrains из РФ ушли топ специалисты по компиляторам, а похоже они все походили из jetbrains, ядро молодцы
@yurykorolev
@yurykorolev 4 місяці тому
Спасибо
@xaoc3932
@xaoc3932 4 місяці тому
Конечно знаю))
@rkc137
@rkc137 4 місяці тому
си плас плас ))) про то что ядро линукса переписать на плюсах мешает только фанатизм Торвальдса это база топ контент ❤
@ultimate_engineer
@ultimate_engineer 4 місяці тому
Спасибо, рады, что понравился выпуск!
@alexgorodecky1661
@alexgorodecky1661 4 місяці тому
Это не база, а смех. Rust еще сойдёт более менее
@MariaEsenina
@MariaEsenina 4 місяці тому
@@alexgorodecky1661 Rust - вот это шутка. От Rust в ядре не матерится только ленивый и это больше смахивает на саботаж и лицемерие.
@rake2029
@rake2029 4 місяці тому
Первый раз вижу, чтобы интервьюеры были разбирающимися людьми, а не смузихлебами
@ultimate_engineer
@ultimate_engineer 4 місяці тому
Спасибо, стараемся делать только то, за что не стыдно и создавать действительно полезный контент :)
@bookbrain9863
@bookbrain9863 4 місяці тому
Первый и последний раз походу 😂
@user-bu5yz9pd8e
@user-bu5yz9pd8e 4 місяці тому
Экстра лекция бакалаврского курса 😂❤
@ultimate_engineer
@ultimate_engineer 4 місяці тому
Мы тоже радуемся, что удалось договориться с Константином об участии в подкасте! Спасибо, что смотрите!
@vitalyl1327
@vitalyl1327 4 місяці тому
А есть еще и GPU, для которых register pressure определяет, сколько параллельных потоков можно исполнять одновременно. Задача тогда существенно усложняется - надо не просто уложиться в, например, 16 регистров доступного адресного пространства, а минимизировать регистры насколько это возможно. Или даже удалить некоторые регистры (rematerialisation) и заменить их повторными вычислениями.
@bookbrain9863
@bookbrain9863 3 місяці тому
Расслабься
@andreykhakimov5588
@andreykhakimov5588 4 місяці тому
Где ссылка на канал Константина Владимирова??!!
@ultimate_engineer
@ultimate_engineer 4 місяці тому
Уже стоит в описании :) Спасибо, что смотрите наши выпуски одним из первых! Канал Константина: www.youtube.com/@tilir
@andreykhakimov5588
@andreykhakimov5588 4 місяці тому
@@ultimate_engineer Спасибо! (🤫у меня есть ссылка), просто Елена пообещала, на 57 секунде ролика ;) А как преподаватель, да и уверен, как разработчик, Константин хорош! И это скорее мягко сказано )
@apivovarov2
@apivovarov2 4 місяці тому
@9:50 а что за книгу он упомянул? Мучник?
@ultimate_engineer
@ultimate_engineer 4 місяці тому
Верно, Steven Muchnick "Advanced Compiler Design and Implementation"
@pompei2
@pompei2 Місяць тому
"Я не боюсь когда меня спрашивают, а я ничего не знаю, либо отвечаю полную дичь.... ЯЗЫК ТАКОЙ" - это звучит прикольно!!!
@andreypopov6166
@andreypopov6166 13 днів тому
ага и кажешься очень умным!
@gallok-gv2iy
@gallok-gv2iy 4 місяці тому
Не подскажите, что за книга на 9:53
@eklepilkina
@eklepilkina 4 місяці тому
Steven Muchnick "Advanced Compiler Design and Implementation"
@user-hy8qj6nv8q
@user-hy8qj6nv8q 4 місяці тому
В таймкоде написано "Все крупные системы должны быть переписаны на С", а гость говорит обратное :D
@ultimate_engineer
@ultimate_engineer 4 місяці тому
Видимо, UKposts считает, что это одно и то же :)) потому что в описании у нас стоит С++
@astralfoxy1787
@astralfoxy1787 Місяць тому
Правильное исправление. Ютуб шарит.
@JohnJTraston
@JohnJTraston 4 місяці тому
Ну так и шо? Современные процессоры (во всяком случае x86) даже спиллинт переименовывают. Т.е. внутри проца там типа очень много регистров (128-256...) и если мы пишем в пямять а потом читаем оттуда же то это происходит фактически за бесплатно, такая же скорость как и работы с регистрами.
@ortsaslan
@ortsaslan 14 днів тому
Неудачные обложки. Есть такая хорошая практика как ставить фото гостя и указывать его имя.
@ultimate_engineer
@ultimate_engineer 13 днів тому
Нам известны такие практики, но не все инженеры в восторге от фотосессий и хотят видеть своё лицо на обложке :)
@ortsaslan
@ortsaslan 13 днів тому
@@ultimate_engineer вполне может быть)
@cuniapapa5370
@cuniapapa5370 3 місяці тому
"Ядро Linux должно быть переписано на C++" Столяров: 💀💀💀💀😡😡🤬🤬🤬🤬👺👺👺👹👹👹☠☠☠
@champion_of_the_light
@champion_of_the_light 4 місяці тому
Человек говорит про фанатизм Торвальдса, и перед этим говорит - "Переписать все крупные системы на C++", смешно. Каждой задаче свой инструмент. А C++ уже должен начать переставать быть языком общего назначения и стать языком спец назначения. Для остального C и Rust. К счастью или сожалению, C++ становится легаси языком.
@The604FX
@The604FX 4 місяці тому
Казалось бы, это было что-то наподобие профессионального фразеологизма с долей иронии, а не просто утверждение
@MariaEsenina
@MariaEsenina 4 місяці тому
C++ никому ничего не должен). А то, что сейчас корпы насильно стараются пропихнуть Rust в ядро - это вообще саботаж. И да, скажите ведущим высокотехнологичным компаниям причём в разных сферах, что C++ оказывается legacy и посмеются над вами. Все драйверы как писали на C++, так и пишут и писать будут, Rust лезет со своей рекламной компанией, но дальше слов особо дело не движется, далее вся 3D графика - это C++, причём как для проприетарных продуктов nVidia, так и открытых, всё машинное обучение - это C++, то что вам предоставляют юзерспейс на Python - это ничего не значит, а иногда и вредит индустрии. Хорошенькое такое "legacy".
@cuniapapa5370
@cuniapapa5370 3 місяці тому
@@MariaEsenina А чем Rust хуже C++?
@dmitriidemenev5258
@dmitriidemenev5258 3 місяці тому
​@@cuniapapa5370 Ответ Раст разработчика: всё ещё нет variadic generics (template packs). Но у плюсов гораздо больше проблем, поэтому испытываю меньшую боль в Rust.
@user-ne4bd3ry1n
@user-ne4bd3ry1n 4 місяці тому
где же патриотизм? Столовка...
@ultimate_engineer
@ultimate_engineer 4 місяці тому
Кажется, патриотизм заключается не в этом :)
LLVM в GPU компиляторах/Стандарты С++ (часть 2)
1:01:29
Истовый Инженер
Переглядів 6 тис.
Voloshyn - ЗУСИЛЛЯ (прем'єра треку 2024)
06:17
VOLOSHYN
Переглядів 786 тис.
skibidi toilet 73 (full episode)
09:41
DaFuq!?Boom!
Переглядів 19 млн
Піхотинці - про потребу у людях
00:57
Суспільне Новини
Переглядів 958 тис.
КАК РАБОТАЕТ СЖАТИЕ?
27:37
Alek OS
Переглядів 81 тис.
Разбираем основы Kafka и RabbitMQ
26:54
Digital train | Alex Babin
Переглядів 8 тис.
Байкал Электроникс: КОГДА НОВЫЙ ЧИП?
1:50:23
Максим Горшенин
Переглядів 51 тис.
Верификация аппаратных блоков / UVM / Рынок труда в hardware
1:59:08
Клавиатура vs геймпад vs руль
0:47
Balance
Переглядів 935 тис.
Я Создал Новый Айфон!
0:59
FLV
Переглядів 2,8 млн
Что еще за обходная зарядка?
0:30
Не шарю!
Переглядів 1,9 млн