Стресс-тестирование параллелизма: как замедлить выполнение потока в моем приложении? - PullRequest
0 голосов
/ 11 марта 2020

Я сталкивался с ситуациями, когда определенные условия гонки возникают, только когда я запускаю свое приложение в эмуляторе valgrind. Но если я запускаю свой исполняемый файл как обычную программу, таких проблем не возникает.

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

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

кто-то знает о существующем инструменте для этой работы. Я пытался найти это онлайн. Должна быть какая-то академическая статья, посвященная этому вопросу. Но пока я его еще не нашел.

...