Эффективное построение переупорядочиваний множества операций с памятью в многопоточной программе
Аннотация
Данная работа посвящена различным методам построения всевозможных линейных порядков для частично упорядоченных множеств. Сложность задачи заключается в том, что даже для множества небольшого размера, построение и проверка на какой-либо признак его всевозможных линейных порядков может приводить к необходимости перебора огромного количества вариантов. Частным случаем этой общей задачи является построение всевозможных переупорядочений для операций с памятью в многопоточных программах с учётом модели памяти. Цель этой работы — это сокращение пространства перебора в этом случае. В качестве важного практического примера рассматриваются модели памяти, позволяющие буферизацию загрузок. При этом оказывается возможным установить классы эквивалентности над перестановками операций. Это в свою очередь имеет большое значение для верификации памяти в многопоточных системах. На сегодняшний день для такого рода верификации применяются литмус-тесты, которые имеют свои ограничения. В данной работе предложен алгоритм, который учитывает классы эквивалентности при переупорядочиваниях операций с памятью, что позволяет существенно сократить как количество необходимых перестановок, так и время, затраченное на их перебор. Результаты исследования позволяют эффективно обобщить концепцию литмус-тестов на произвольные частично упорядоченные множества и существенно расширить их применимость.
Это произведение доступно по лицензии Creative Commons «Attribution» («Атрибуция») 4.0 Всемирная.
Редакционная политика журнала основывается на традиционных этических принципах российской научной периодики и строится с учетом этических норм работы редакторов и издателей, закрепленных в Кодексе поведения и руководящих принципах наилучшей практики для редактора журнала (Code of Conduct and Best Practice Guidelines for Journal Editors) и Кодексе поведения для издателя журнала (Code of Conduct for Journal Publishers), разработанных Комитетом по публикационной этике - Committee on Publication Ethics (COPE). В процессе издательской деятельности редколлегия журнала руководствуется международными правилами охраны авторского права, нормами действующего законодательства РФ, международными издательскими стандартами и обязательной ссылке на первоисточник.
Журнал позволяет авторам сохранять авторское право без ограничений. Журнал позволяет авторам сохранить права на публикацию без ограничений.
Издательская политика в области авторского права и архивирования определяются «зеленым цветом» в базе данных SHERPA/RoMEO.
Все статьи распространяются на условиях лицензии Creative Commons «Attribution» («Атрибуция») 4.0 Всемирная, которая позволяет другим использовать, распространять, дополнять эту работу с обязательной ссылкой на оригинальную работу и публикацию в этом журналe.