Является ли линеаризуемость эквивалентной проблеме консенсуса?


9

Во введении к этой статье « В конечном итоге линеаризуемые общие объекты» (PODC'10) авторы представили следующее утверждение без ссылок:

Однако линеаризуемость может быть достигнута тогда и только тогда, когда можно достичь консенсуса.

Здесь линеаризуемость - это самое сильное известное свойство согласованности общих объектов, которое предлагается в статье « Линеаризуемость: условие корректности для параллельных объектов» .

Я запутался в приведенном выше утверждении из-за следующих аргументов:

В статье « Совместное использование памяти в системах передачи сообщений» (JACM95) мы знаем, что линеаризуемость может быть достигнута в асинхронной системе передачи сообщений, допуская при этом меньшее количество сбоев процессов:

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

С другой стороны, статья « Невозможность распределенного консенсуса с одним ошибочным процессом» (JACM85) доказала невозможность результата консенсуса даже при одном сбое процесса:

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

Следовательно, можем ли мы прийти к следующему выводу:

консенсус сильнее линеаризуемости?

Что не так с моими аргументами? Есть ли прямые ссылки для заключения об эквивалентности ?


1
Далеко не эксперт в распределенных вычислениях, но мне кажется, что причина, по которой вы можете получить свой результат, заключается в предположениях, сделанных в результатах в справочнике JACM85. Линеаризуемость может быть эквивалентна консенсусу по конкретной модели вычислений, но это может быть не так, если мы сильно ограничим нашу модель вычислений.
chazisop

Ответы:


4

Суть в том, что вы ошибаетесь: «мы знаем, что линеаризуемость может быть достигнута в асинхронной системе передачи сообщений, допуская при этом меньше сбоев процессов». Мы этого не знаем, и на самом деле это неправильно.

Цитата из статьи JACM95 показывает, что регистры с несколькими читателями с одним устройством записи могут быть реализованы с использованием передачи сообщений. И только такого рода регистры или любые другие объекты, которые могут быть реализованы (с учетом небольшого числа сбоев) из таких регистров. Это включает в себя, например, регистры с несколькими модулями чтения (MWMR).

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

Фактически, как указывают Аттия и др. (Раздел 7), такие объекты не могут быть реализованы с помощью регистров MWMR точно, потому что они позволяют решать задачи консенсуса (см. Синхронизацию без ожидания Герлихи) и, следовательно, реализуемость может противоречить результату FLP.


Извините за задержку. Тем не менее, 1. Поскольку линеаризуемость является локальным свойством , я не думаю, что количество рассматриваемых объектов имеет значение. Не могли бы вы объяснить подробнее? 2. Каково ваше значение использования « то есть» связать atomicity of operations on a single objectс sequential specifications are not violated?
hengxin

Правда. Дайте мне подумать еще раз ...
Мартин Б.

Я полностью переписал ответ ... Я думаю, что теперь это имеет смысл. Не помню, что я думал раньше.
Мартин Б.

Я думаю, что ваш текущий аргумент имеет смысл. После вашего ответа я проверил документ Eventually Linearizable Shared Objects (PODC'10)и заметил, что были рассмотрены произвольные объекты (а не только регистры SWMR).
hengxin

Спасибо за ваше внимание и усилия. Вы работаете над теорией распределенных вычислений / параллелизма? Тогда не могли бы вы оценить мою еще одну проблему: алгоритмы атомарного снимка в древовидных общих регистрах ? Как вы думаете, это проблема, которую стоит изучить?
hengxin
Используя наш сайт, вы подтверждаете, что прочитали и поняли нашу Политику в отношении файлов cookie и Политику конфиденциальности.
Licensed under cc by-sa 3.0 with attribution required.