LINUX.ORG.RU

История изменений

Исправление AntonI, (текущая версия) :

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

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

И насколько я знаю задачи @thunar (моделирование плазмы методом PIC) эта дефрагментация отнюдь не является узким местом, там есть более другие места которые действительно стоит пооптимизировать.

Исходная версия AntonI, :

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

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

И насколько я знаю задачи @thunar (моделирование плазмы методом PIC) эта дефрагментация отнюдь не является узким местом, там есть более другие места которые действительно стоит пооптимизировать.