Podlodka #502 – Ассемблер
«Никогда не программируйте на ассемблере» – первое правило Константина Владимирова, преподавателя МФТИ и автора курса по C и ассемблеру, но зачем тогда разработчику уметь его читать? Представьте, что в дебаге программа работает, а в релизе падает при чтении из памяти. В отладчике можно проследить, как программа вычислила адрес, по которому попыталась прочитать данные.

В выпуске разбираем, почему компилятор оставляет лишнее чтение из памяти в горячем цикле, когда пригодится ассемблерная вставка и почему GPU-ядро может замедлиться, если компилятору не хватает регистров. А ещё обсуждаем, как выбрать первую задачу, в которой пригодится чтение ассемблера, и где в этой работе помогают нейросети.
Слушать выпуск
Полезные ссылки:
  • Канал Константина Владимирова
https://www.youtube.com/@tilir
  • Семинар МФТИ «Изобретаем ассемблер»
https://www.youtube.com/watch?v=44uQ6Q3qHNQ 
  • Примеры кода к курсу на GitHub
https://github.com/tilir/c-graduate 
  • Google Benchmark
https://github.com/google/benchmark
Похожие выпуски