Вопрос

As question says it all I was looking for in depth explanation of data-dependency barrier in SMP especially with respect to Linux Kernel. I have the definition and brief description handy in this link here.

Linux Kernel Memory Barriers Documentation

However I was attempting to get a profound understanding of this concept. Your thoughts and inputs are highly appreciated.

Это было полезно?

Решение 3

Old answer: I believe "acquire semantics" is the more commonly used term for what the document is calling a "data-dependency barrier". See for example this presentation or the C++11 memory_order_acquire.

Update: per comments, the Linux description for Data Dependency Barriers sounds more like C++ "consume semantics".

Другие советы

Actually, at least in terms of C++11, this is more closely related to consume semantics. You can read more about it e.g. here. In short, they provide weaker guarantees than acquire semantics, which makes them more efficient on certain platforms that support data dependency ordering.

In C++ terms, it is called memory_order_consume. See this presentation from Paul Mckenney.

Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top