Как часто в ошибках программ виноваты компиляторы



На YouTube и стримингах вышел второй выпуск подкаста «Битовые маски» с Константином Владимировым, руководителем отдела инструментов разработки и компиляторов в YADRO, инженером с более чем 20-летним опытом работы на С/С++, в том числе в компании Intel. В этом эпизоде Константин обсуждает с ведущими особенности компиляторов для GPU, сложности использования LLVM, необходимого для их создания, а также выделяет наиболее полезные фичи из новых стандартов С++.



Вы узнаете:

В чём заключаются базовые отличия CPU и GPU;

Почему MLIR не применяется в графических компиляторах;

В чём сложность гетерогенного программирования;

Зачем разработчику компиляторов знать стандарты C++ и какие полезные новшества появились в C++23 и каких ждать от C++26;

Почему undefined behaviour — это хорошо.



Вас также ждёт занимательная история бага, который стоил команде разработки компиляторов полгода работы, и ещё одна о том, как оптимизация сломала Linux kernel.



Смотреть 📺 | Слушать 🎤



А если вы пропустили первую часть, в которой Константин рассказывал о преимуществах и недостатках компиляторов GCC и LLVM, а также о современных подходах к аллокации регистров, то все ссылки можно найти в прошлом посте.



#программы #подкасты #битовыемаски