Kirill Klimuk
Kirill Klimuk
*Технические проблемы* Стресс-тесты проходятся очень по разному на разных машинах. Информация по моему ноутбуку: OS: Arch Linux Kernel: x86_64 Linux 4.14.11-1-ARCH CPU: Intel Core i7-2670QM @ 8x 3.1GHz [27.8°C] RAM:...
Изменения ввели, стресс тесты стали ввести себя постабильней, но все еще выкидывают те же ошибки. Собственно, вопрос в чем. Система GC в libcds учитывает вхождения одного и того же указателя...
Итак. Краткий фидбек по статье. Судя по всему в ней есть логическая ошибка в enqueue. Обьясняю: Если один поток по какой-то причине не изменил при помощи CAS head текущего слота,...
Мне кажется вы просматривается старые коммиты, потому что уже давно поменяли на обычные атомики, обернули nullptr в DUMMY и т.п. Std::atomic_XXX использовался полтора месяца где-то что ли. в Push проблемы...
> Я смотрю master-ветку Перейдите на ветку efremov, там все коммиты должны быть. Но вопросы по репозиторию лучше перешлю @JAkutenshi. он его контролирует :)
**Итог** - Push решен путем инициализации DUMMY перед CAS - Pop решен(?) путем добавления прохода по слоту, если последний удаленный - PICKET. В этом же и недочет алгоритма, не описанный...