Обновить

Комментарии 7

А как же святой грааль мемсанов - Valgrind?

по ссылке №1 (https://static.googleusercontent.com/media/research.google.com/hr//pubs/archive/43308.pdf ) есть сравнение msan (в том числе) с valgrind, если вкратце, то основной профит msan в том что он намного эффективнее по ресурсам (cpu и расход памяти) и нормально работает с многопоточными приложениями

А почему, можете объяснить?
Ну и не хочу придираться, в статье нет (как же это бесит) даты ее выхода. По списку литературы могу предположить что это было лет 10, если не больше назад. Не очень актуально.

не смотря на то что статье и правда 10 лет (она 2015 года), принципиально с того времени особо ничего не изменилось. msan (и прочие санитайзеры типа asan) делают compile-time инструментацию кода для трекинга операций с памятью, а valgrind это делает без пересборки исходников, но очень тяжелым способом (транслируя код в специальное представление, заменяя всё что нужно чтобы следить за памятью и транслируя еще раз в машинный код)

НЛО прилетело и опубликовало эту надпись здесь

AddressSanitizer и MemorySanitizer это разное? У MSVC есть AddressSanitizer.

в clang это (asan и msan) разные штуки, судя по доке MSVC, AddressSanitizer в MSVC не ловит ситуации для которых создан msan. в MSVC есть какой-то аналог /RTCu, но ловит много меньше чем msan

Зарегистрируйтесь на Хабре, чтобы оставить комментарий

Публикации