Depository of News

[Перевод] 18 из 20 порядков ломают counter++, а 10 000 запусков на ноутбуке этого не показали

newsdepo.com · world

Два потока выполняют counter++ по одному разу. Шаги можно чередовать 20 способами, и в 18 из них обновление теряется, но на простаивающем ноутбуке за 10 000 запусков такого не случилось ни разу, а с барьером на старте случилось 4 раза. Фарид Закария, работавший в AWS над RDS, замеряет на этой гонке, сколько порядков реально выполняет обычная машина, простаивающая и загруженная, и сколько их достаёт детерминированная виртуальная машина Rewind VM: под ней обновление теряется в 1371 запуске из 10 000 без барьера и в 2997 с барьером. Заодно он объясняет, почему тесты не видят баги, зависящие от расписания. Читать далее

Read full article →