projects:libcds:dhp_refactor
Differences
This shows you the differences between two versions of the page.
Both sides previous revisionPrevious revision | Next revisionBoth sides next revision | ||
projects:libcds:dhp_refactor [2015/12/10 13:38] – [Рефакторинг SMR-алгоритма cds::gc::DHP] khizmax | projects:libcds:dhp_refactor [2015/12/10 13:39] – khizmax | ||
---|---|---|---|
Line 17: | Line 17: | ||
Предлагается модифицировать DHP, объявив массив retired ptr приватным (thread local data) для каждого потока, | Предлагается модифицировать DHP, объявив массив retired ptr приватным (thread local data) для каждого потока, | ||
При этом надо учитывать: | При этом надо учитывать: | ||
- | * размер массива retired data должен изменяться динамически (он зависит от числа hazard ptr на момент вызова '' | + | * размер массива retired data должен изменяться динамически (он зависит от числа hazard ptr на момент вызова '' |
- | критерий увеличения размера: | + | * нагрузка на структуру данных может быть неравномерна: |
- | * нагрузка на структуру данных может быть неравномерна: | + | |
- | то есть активно работают с retired ptr array, другие потоки — updater thread – в основном добавляют/ | + | |
- | Поэтому retired ptr array каждого потока должен иметь некий '' | + | |
- | происходить не только по заполнении retired ptr array, но и по превышению этого '' | + | |
Попутно следует упростить реализацию DHP, сократив иерархию структур. | Попутно следует упростить реализацию DHP, сократив иерархию структур. | ||
**Требование**: | **Требование**: |
projects/libcds/dhp_refactor.txt · Last modified: 2015/12/17 12:59 by khizmax