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