Доступен релиз Valgrind 3.15.0, инструментария для отладки работы с памятью, обнаружения утечек памяти и профилирования. Работа Valgrind поддерживается для платформ Linux (X86, AMD64, ARM32, ARM64, PPC32, PPC64BE, PPC64LE, S390X, MIPS32, MIPS64), Android (ARM, ARM64, MIPS32, X86), Solaris (X86, AMD64) и macOS (AMD64).
В новой версии:
- Значительно переработан и расширен инструмент профилирования кучи DHAT (Dynamic Heap Analysis Tool), позволяющий отследить все запросы на распределения памяти в куче и выявить утечки ресурсов, места излишне большой активности при работе с кучей, неиспользованные выделения памяти, краткосрочные выделения и неэффективное размещение данных в куче. Из категории экспериментальных разработок DHAT включён в штатный набор инструментов Valgrind (для запуска теперь нужно использовать опцию "--tool=dhat" вместо "--tool=exp-dhat").
Наиболее заметным улучшением стало добавление в DHAT графического интерфейса пользователя. Кроме того, после завершения отслеживаемой программы DHAT теперь выводит на экран только минимальную выжимку наиболее важных сведений, а полный отчёт с данными профилирования записывает в файл. Данные теперь не группируются в записи, а сохраняются в виде деревьев трассировки стека. Расширено число проводимых измерений и добавлены дополнительные категории отслеживаемых параметров. Для просмотра записанного отчёта предложен специальный просмотрщик dh_view.html, запускаемый в web-браузере;
- Для систем amd64 (x86_64) обеспечена поддержка расширенных наборов инструкций RDRAND и F16C;
- В Cachegrind и Callgrind предложена новая опция "--show-percs", добавляющая отображение значений счётчиков в процентах;
- В Massif для Linux, Android и Solaris активирован по умолчанию режим "--read-inline-info", для macOS по прежнему требуется явное указание "--read-inline-info=yes";
- В Memcheck при указании опции "--xtree-leak=yes" (вывод результатов проверки утечек памяти в формате xtree) теперь автоматически включается опция "--show-leak-kinds=all". Проведена работа по предотвращению ложных срабатываний;
- Добавлена опция "--show-error-list=no|yes", а также опция "-s" эквивалентная "--show-error-list=yes" для отображения списка выявленных ошибок после завершения выполнения. Ранее, подобный список выводился в режиме детального вывода "-v -v", но вывод в таком режиме захламлялся большим объёмом излишней информации.
|