Насколько хорошо Valgrind обрабатывает потоки и инструкции по синхронизации на уровне машины? - PullRequest
2 голосов
/ 23 июня 2009

У меня есть высокопараллельная программа для Windows, в которой используется множество потоков, вручную написанные инструкции по синхронизации машин и домашние параллельные безопасные распределители памяти. Увы в управлении хранилищем есть отверстие (а не отверстие для синхронизации в распределителях, Я почти уверен), и я хотел бы найти это. Valgrind был предложен как хороший инструмент для поиска ошибок управления хранилищем. Какой-нибудь опыт работы с Valgrind, использованный в этих обстоятельствах?

1 Ответ

3 голосов
/ 23 июня 2009

Valgrind не работает в Windows, но он работает с программами Windows, работающими под Wine в Linux. Если ваша программа будет работать под Wine, у нее есть хорошие шансы работать с valgrind. Подробнее см. winehq.org .

Последняя версия довольно хорошо справляется со всеми 32-битными инструкциями x86. Он может обрабатывать программы, которые создают много потоков, но не ожидайте, что они будут работать одновременно под valgrind. Он будет запускать только один поток за раз, как если бы он запускался на одноядерном компьютере.

...