|
|
|
Вопрос по статье http://en.wikipedia.org/wiki/Read-copy-update | По современным ЦП вопрос.
|
|||
|---|---|---|---|
|
#18+
авторRCU's fundamental guarantee may be used by splitting updates into removal and reclamation phases. The removal phase removes references to data items within a data structure (possibly by replacing them with references to new versions of these data items), and can run concurrently with RCU read-side critical sections. The reason that it is safe to run the removal phase concurrently with RCU readers is the semantics of modern CPUs guarantee that readers will see either the old or the new version of the data structure rather than a partially updated reference. Once a grace period has elapsed, there can no longer be any readers referencing the old version, so it is then safe for the reclamation phase to free (reclaim) the data items that made up that old version. [2] Как? За счёт чего? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 29.03.2012, 15:01 |
|
||
|
Вопрос по статье http://en.wikipedia.org/wiki/Read-copy-update | По современным ЦП вопрос.
|
|||
|---|---|---|---|
|
#18+
Криптокомбинятина небеснаяКак? За счёт чего? Про кеш на процессоре слышал когда? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 29.03.2012, 15:31 |
|
||
|
Вопрос по статье http://en.wikipedia.org/wiki/Read-copy-update | По современным ЦП вопрос.
|
|||
|---|---|---|---|
|
#18+
Вах: http://en.wikipedia.org/wiki/Read-copy-update ...writes to single aligned pointers are atomic on modern CPUs, allowing atomic insertion, removal, and replacement of data items in a linked structure without disrupting readers. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 29.03.2012, 15:33 |
|
||
|
Вопрос по статье http://en.wikipedia.org/wiki/Read-copy-update | По современным ЦП вопрос.
|
|||
|---|---|---|---|
|
#18+
Криптокомбинятина небеснаяВах: http://en.wikipedia.org/wiki/Read-copy-update ...writes to single aligned pointers are atomic on modern CPUs, allowing atomic insertion, removal, and replacement of data items in a linked structure without disrupting readers. эт че, транзационная память на аппаратном уровне? з.ы. на программном в хаскеле хорошо реализована. а так, еще в кложуре видел. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 29.03.2012, 23:53 |
|
||
|
Вопрос по статье http://en.wikipedia.org/wiki/Read-copy-update | По современным ЦП вопрос.
|
|||
|---|---|---|---|
|
#18+
мне такой подход - больше чем локи нравится. здесь не может быть дедлоков(если ошибаюсь - покажите юзкейс, когда дэдлок будет) но и накладные расходы здесь большие, что не очень гуд. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 29.03.2012, 23:59 |
|
||
|
Вопрос по статье http://en.wikipedia.org/wiki/Read-copy-update | По современным ЦП вопрос.
|
|||
|---|---|---|---|
|
#18+
а вот мне в голову пришел случай, когда такая память не проконает, а решение на локах работать будет. что есть у нас есть редко запускающая задача, которая выполняется N времени. а есть задача(и), которые выполняются за время М(М << N), но с периодом меньшим чем N. тогда задача N никогда не отработает. не шарите, есть решения в STM, с помощью которых решается данная проблема? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 30.03.2012, 00:02 |
|
||
|
Вопрос по статье http://en.wikipedia.org/wiki/Read-copy-update | По современным ЦП вопрос.
|
|||
|---|---|---|---|
|
#18+
ZyK_BotaNКриптокомбинятина небеснаяВах: пропущено... эт че, транзационная память на аппаратном уровне? з.ы. на программном в хаскеле хорошо реализована. а так, еще в кложуре видел. Видимо процессоры физически не умеют ничего записывать в память кусками меньше, чем некоторое кол-во. При этом одна операция чтения-записи может быть выполнена только блоком (например 32-битный проц - 4-мя байтами) и только по границе этих 4-х байт. Если надо прочитать 2 байта на границе, будет прочитано 8 и вычленены нужные. А указатель в C++ - это оно и есть. Те самые 4 или 8 байт (32 bit, 64 bit). Если указатели записывать в память по выровненным адресам, изменяться они будут атомарно. P.S. Я тут один алгоритм реализовывал. Выравнивание и последовательный доступ к памяти дали прирост процентов 40 по производительности перед случайным доступом (раньше 0.4 сек, после выравниваний и изменения схемы доступа - 0.2 сек). ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 30.03.2012, 00:07 |
|
||
|
Вопрос по статье http://en.wikipedia.org/wiki/Read-copy-update | По современным ЦП вопрос.
|
|||
|---|---|---|---|
|
#18+
Криптокомбинятина небеснаяZyK_BotaNпропущено... эт че, транзационная память на аппаратном уровне? з.ы. на программном в хаскеле хорошо реализована. а так, еще в кложуре видел. Видимо процессоры физически не умеют ничего записывать в память кусками меньше, чем некоторое кол-во. При этом одна операция чтения-записи может быть выполнена только блоком (например 32-битный проц - 4-мя байтами) и только по границе этих 4-х байт. Если надо прочитать 2 байта на границе, будет прочитано 8 и вычленены нужные. А указатель в C++ - это оно и есть. Те самые 4 или 8 байт (32 bit, 64 bit). Если указатели записывать в память по выровненным адресам, изменяться они будут атомарно. P.S. Я тут один алгоритм реализовывал. Выравнивание и последовательный доступ к памяти дали прирост процентов 40 по производительности перед случайным доступом (раньше 0.4 сек, после выравниваний и изменения схемы доступа - 0.2 сек). а ты уверен, что это не что-то вроде STM? я тогда пойду погуглю. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 30.03.2012, 00:09 |
|
||
|
Вопрос по статье http://en.wikipedia.org/wiki/Read-copy-update | По современным ЦП вопрос.
|
|||
|---|---|---|---|
|
#18+
ZyK_BotaNмне такой подход - больше чем локи нравится. здесь не может быть дедлоков(если ошибаюсь - покажите юзкейс, когда дэдлок будет) но и накладные расходы здесь большие, что не очень гуд. Такой - это RCU? Наоборот - нулевый расходы в реальной линуксовой реализации, например (из википедии). От дедлоков защищена "по определению". ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 30.03.2012, 00:09 |
|
||
|
Вопрос по статье http://en.wikipedia.org/wiki/Read-copy-update | По современным ЦП вопрос.
|
|||
|---|---|---|---|
|
#18+
ZyK_BotaN а ты уверен, что это не что-то вроде STM? я тогда пойду погуглю.[/quote]а да. я все перепутал. это совсем другое. здесь как раз локи есть. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 30.03.2012, 00:11 |
|
||
|
Вопрос по статье http://en.wikipedia.org/wiki/Read-copy-update | По современным ЦП вопрос.
|
|||
|---|---|---|---|
|
#18+
Криптокомбинятина небеснаяZyK_BotaNмне такой подход - больше чем локи нравится. здесь не может быть дедлоков(если ошибаюсь - покажите юзкейс, когда дэдлок будет) но и накладные расходы здесь большие, что не очень гуд. Такой - это RCU? Наоборот - нулевый расходы в реальной линуксовой реализации, например (из википедии). От дедлоков защищена "по определению".да я спутал с STM. думал что это что-то похожее. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 30.03.2012, 00:11 |
|
||
|
Вопрос по статье http://en.wikipedia.org/wiki/Read-copy-update | По современным ЦП вопрос.
|
|||
|---|---|---|---|
|
#18+
Криптокомбинятина небеснаяОт дедлоков защищена "по определению". хм? опиши как? от дедлоков защищена STM, потому, что там совсем локов нет. а в RCU - локи есть? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 30.03.2012, 00:12 |
|
||
|
Вопрос по статье http://en.wikipedia.org/wiki/Read-copy-update | По современным ЦП вопрос.
|
|||
|---|---|---|---|
|
#18+
авторOne thing that disappoints me personally about all of these mechanisms is their limited support for RCU. Don't get me wrong, you can use RCU with HTM updates. However, bare RCU readers will typically cause HTM updaters to unconditionally abort. Although RCU's purpose is in fact to favor readers, this is entirely too much of a good thing. For ideas for improved interactions between TM and RCU, please see an earlier posting. It is also unclear to what extent HTM helps in cases involving severe real-time-response constraints. There have also been some interesting software transactional memory (STM) papers. Pankratius and Adl-Tabatabai published a productivity comparison in which the highest productivity was attained by teams that used both STM and locking. Although one can argue that inevitable transactions will subsume the uses of locking in the Pankratius paper, inevitable transactions are normally implemented as a global lock. sharply limiting I/O scalability. http://paulmck.livejournal.com/31285.html ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 30.03.2012, 00:21 |
|
||
|
Вопрос по статье http://en.wikipedia.org/wiki/Read-copy-update | По современным ЦП вопрос.
|
|||
|---|---|---|---|
|
#18+
Ну разочаровывает это чувака по каким-то параметрам, дальше-то что? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 30.03.2012, 00:30 |
|
||
|
Вопрос по статье http://en.wikipedia.org/wiki/Read-copy-update | По современным ЦП вопрос.
|
|||
|---|---|---|---|
|
#18+
Криптокомбинятина небеснаяНу разочаровывает это чувака по каким-то параметрам, дальше-то что?ниче. просто про RCU первый раз слышу, вот мне и интересны недостатки\преимущества по сравнению с STM. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 30.03.2012, 00:37 |
|
||
|
Вопрос по статье http://en.wikipedia.org/wiki/Read-copy-update | По современным ЦП вопрос.
|
|||
|---|---|---|---|
|
#18+
ZyK_BotaNКриптокомбинятина небеснаяНу разочаровывает это чувака по каким-то параметрам, дальше-то что?ниче. просто про RCU первый раз слышу, вот мне и интересны недостатки\преимущества по сравнению с STM. А... Я тоже офигел от атомарности перезаписей слов данных по выровненным границам. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 30.03.2012, 00:56 |
|
||
|
|

start [/forum/topic.php?fid=16&msg=37730543&tid=1342337]: |
0ms |
get settings: |
10ms |
get forum list: |
20ms |
check forum access: |
3ms |
check topic access: |
3ms |
track hit: |
164ms |
get topic data: |
12ms |
get forum data: |
3ms |
get page messages: |
73ms |
get tp. blocked users: |
1ms |
| others: | 249ms |
| total: | 538ms |

| 0 / 0 |
