LINUX.ORG.RU

Valgrind 3.7.0

 , , , s390x, ,


0

3

Valgrind — это инструмент, позволяющий находить в программах недостатки, такие как ошибки при работе с памятью, неправильное разделение потоков, неинициализированные переменные и прочее. В новой версии:

  • Поддержка Linux на архитектуре IBM z/Architecture (s390x).
  • Начальная поддержка MacOSX 10.7 и XCode 4.
  • Начальная поддержка ARM/Android.
  • Поддержка IBM Power ISA 2.06 (Power7).
  • Общее улучшение поддержки ARM/Linux и соответственно ARM/Android.
  • Дальнейшее улучшение поддержки инструкций SSE4.2 в 64-битном режиме.
  • Удалена поддержка AIX5.
  • В Helgrind улучшена производительность и в общем снижено потребление памяти.
  • В DRD появилась возможность вывода в XML, улучшена поддержка Darwin.
  • Область работы exp-ptrcheck уменьшена ради сокращения потребления ресурсов (удалённый функционал уже присутствует в лучшем качестве в Memcheck)
  • В Valgrind встроен GDB-сервер. То есть теперь можно контролировать работу Valgrind'а из GDB.
  • Проверена возможность сборки Valgrind с помощью Clang-2.9.
  • Множество других улучшений и исправлений ошибок.

Официальный сайт

>>> Подробности

★★★

Проверено: maxcom ()
Последнее исправление: adriano32 (всего исправлений: 1)

>В Valgrind встроен GDB-сервер. То есть теперь можно контролировать работу Valgrind'а из GDB.

Самая нужная мне фича. Наконец!

rave
()

> Поддержка IBM Power ISA 2.06 (Power7).

Молодцы какие, а. Одобряем-с!

powerpc
()

> Valgrind — это инструмент, позволяющий находить недостатки в программах, такие как ошибки при работе с памятью, неправильное разделение потоков, неинициализированные переменные и прочее.
А я думал что для этого существует голова. ЧЯДНТ?

FeyFre ★★★★
()
Ответ на: комментарий от FeyFre

Голова - хорошо, но автоматический инструмент тоже нужен. Он не отменяет голову, а дополняет. Но это в идеале конечно же.

AlexKiriukha ★★★★
()

> Valgrind — это инструмент, позволяющий находить недостатки в программах

Из этого описания совершенно непонятно с чем работает данная программа. С уже собранным бинарником, с исходным кодом на C, на C++, на других языках программирования?

bbk123 ★★★★★
()
Ответ на: комментарий от bbk123

Если вопрос не риторический, то с бинарником, отображая строчки из исходного кода как минимум C/C++, если собран с -g.

gag ★★★★★
()

>Valgrind — это инструмент, позволяющий находить недостатки в программах

То есть, ЛОР — это всего-лишь веб-интерфейс к Valgrind'у?

terminator
()

Годный инструмент, но когда они займутся увеличением производительности?

Deleted
()
Ответ на: комментарий от bbk123

С бинарником с дебаг-информацией (может и без, но без он почти бесполезен). Вроде как для любых компилируемых языков, но я пока юзал только для C и C++.

Deleted
()
Ответ на: комментарий от Deleted

сомневаюсь, что он выдаст что-то адекватное на бинарь созданный лиспом или каким-нибудь ocaml'ом

Reset ★★★★★
()

valgrind обновился, выпить повод появился

shty ★★★★★
()
Ответ на: комментарий от Reset

Так он и бесполезен для функциональщины со сборкой мусора.

Deleted
()

Классная вещь, мно-о-о-ого багов с ней нашёл :-)

unDEFER ★★★★★
()
Ответ на: комментарий от Lordwind

Недавно обнаружил, что в MSVC для утечек памяти есть встроенное средство:

#include <crtdbg.h>
if( !_CrtDumpMemoryLeaks() )
   всё чисто
Но в MINGW оно недоступно. А вот попробовать http://dynamorio.org/drmemory.html всё никак руки не доходят.

gag ★★★★★
()
Ответ на: комментарий от gag

> _CrtDumpMemoryLeaks()

Ох, помню, хотел его использовать. Подключаешь заголовный файл для mfc и оно всегда возвращает 1 /=

hired777
()
Ответ на: комментарий от hatefu1_dead

оно во-первых за бабло, а во-вторых сколько я его не пытался осилить у меня из этого так ничего и не вышло

Reset ★★★★★
()
Ответ на: комментарий от bbk123

С бинарником. Валгринд сам исполняет бинарь (!), как то так

yoghurt ★★★★★
()
==17923== ERROR SUMMARY: 10000000 errors from 150 contexts (suppressed: 15 from 11)

Что-то его на 10 лямах клинит, больше не показывает. Надеюсь, новая версия осилит 20КК.

Napilnik ★★★★★
()
Ответ на: комментарий от nt_crasher

>А где вы видели программу сложнее «hello world» без ошибок ?

А где ты достал такой аватар?

P.S. в детстве насмарелся всяких фреди хрюгеров, терь с приветом небошим.

anonymous
()
Ответ на: комментарий от FeyFre

А я думал что для этого существует голова. ЧЯДНТ?

Не пишешь большие программы.

mv ★★★★★
()
Ответ на: комментарий от vasaka

Ошибок в нем, может, и нет, только вот оригинальный TeX имеет море недостатков. А XeTeX - труЪ, да вот только не очень популярен.

Deleted
()

Ура, новая версия костыля для недоязычков!

anonymous
()
Ответ на: комментарий от slyjoeh

>Под соляру нету что ли?

Пока нет. Над ней работают, но разработчики честно признаются, что для них сейчас приоритетнее arm/linux чем солярка.

beka
()
Ответ на: комментарий от muon

можно. а если бинарь собран с дебаг информацией - то еще и показать, где именно он налажал.

val-amart ★★★★★
()
Ответ на: комментарий от muon

Имея только бинарник без дебага, можно доказать, что автор программы - криворукий дебил?

Если программа делает segfault в своем коде, то автор с вероятностью в 75% криворукий дебил (оставшиеся 25% спишем на баги в используемых бибилиотеках) :-)

no-dashi ★★★★★
()
Ответ на: комментарий от Lordwind

> Неплохо... а есть нечто подобное под оффтоп?
Кстати один и тот же код с ошибками памяти под форточками (или wine) падает намного раньше чем под Linux. Поэтому для Linux valgrind оказывается несколько необходимее.

Да и вообще при написании кросплатформенного кода подобных вопросов не возникает. Пишите для Linux с использованием valgrind и тогда кросскомпилированный код с помощью mingw будет работать и в оффтопе без ошибок.

unDEFER ★★★★★
()

>инструмент, позволяющий находить в программах недостатки

Следуя просто логике, в этой программе тоже есть недостатки. Как программа с недостатками может грамотно определить недостатки других программ, никак не компенсируя вероятность схождения векторов ошибок обеих программ?

Zhbert ★★★★★
()
Ответ на: комментарий от Zhbert

Как водитель автобуса может везти пассажиров, если сам не всегда доезжает до конечного пункта?

unC0Rr ★★★★★
()

поддержка Clang? Одобряем!

anonymous
()
Ответ на: комментарий от FeyFre

> А я думал что для этого существует голова. ЧЯДНТ?

не пишешь большие программы на сишечке

unC0Rr ★★★★★
()
Ответ на: комментарий от Zhbert

грамотно == со 100%-й вероятностью? Так не бывает. А потому никак.

КЭП

dizza ★★★★★
()
Ответ на: комментарий от Zhbert

> Следуя просто логике, в этой программе тоже есть недостатки. Как программа с недостатками может грамотно определить недостатки других программ, никак не компенсируя вероятность схождения векторов ошибок обеих программ?

Ахиллес и черепаха

Допустим, Ахиллес бежит в десять раз быстрее, чем черепаха, и находится позади неё на расстоянии в тысячу шагов. За то время, за которое Ахиллес пробежит это расстояние, черепаха в ту же сторону проползёт сто шагов. Когда Ахиллес пробежит сто шагов, черепаха проползёт ещё десять шагов, и так далее. Процесс будет продолжаться до бесконечности.
Ахиллес так никогда и не догонит черепаху.

Neksys ★★★
()

поддержка новых glibc и gcc не указал, это одно из важных нововведений

frad00r4
()
Ответ на: комментарий от Zhbert

> Следуя просто логике, в этой программе тоже есть недостатки. Как программа с недостатками может грамотно определить недостатки других программ, никак не компенсируя вероятность схождения векторов ошибок обеих программ?

К тому простому факту, что «следуя просто логике, в логике тоже есть недостатки», можно добавить, что для «грамотной» компенсации схождения/фильтрации/ необходима корректная обобщающая модель, иначе может не сойтись /аттракторы - не частая удача/.
Парадокс ситуации в том, что любая попытка формализации и записи корректной обобщающей модели - есть программа, корректность которой ещё нужно доказать. :)

Neksys ★★★
()
Ответ на: комментарий от Neksys

Что-то вы загнались в своей теории, начиная с Zhbert.
Не теоретизируйте. Просто используйте valgrind - оно работает.

unDEFER ★★★★★
()

>Начальная поддержка MacOSX 10.7 и XCode 4.

Чем сабж лучше Developer tools'ов идущих в комплекте с XCode?

anonymous_
()

> Начальная поддержка ARM/Android.

Киллер-фича для мобильного Firefox.

> В Valgrind встроен GDB-сервер.

Круто!
Судя по изменениям тут не на одну минорную цифру тянет. :)

backbone ★★★★★
()
Ответ на: комментарий от Lordwind

Из бесплатного - ничего. Из платного - purify, insure++, intel че-то там inspector, boundschecker. Все жутко дорогое и в большинстве своем еще и УГ.

JackyTreehorn
()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.