Главная         Авторы   Статьи   Год проведения   Тематика   Организации        Конференция МЭС

Функциональная верификация атомарных операций с использованием анализа конфликтов блокировок  

Авторы
 Гревцев Н.А.
 Чибисов П.А.
Год публикации
 2020
DOI
 10.31114/2078-7707-2020-3-57-64
УДК
 004.052.42

Аннотация
 известно, что симметричный мультипроцессор (SMP) должен использовать набор механизмов синхронизации для достижения результатов, свободных от состояния гонки, а также для корректного распределения ресурсов. Было доказано, что использование атомарных операций для доступа к разделяемым областям памяти в SMP-системах является основным методом предотвращения потери данных при реализации в программном обеспечении таких примитивов, как mutual exclusion, spinlock, thread execution barrier. Современные микропроцессорные архитектуры предоставляют различные виды атомарных операций, например, инструкции LL и SC на микропроцессорах с архитектурой MIPS используются в связке, чтобы гарантировать атомарность доступа к общей памяти для операций чтения и записи.
Механизмы синхронизации, такие как критические секции и барьеры, используемые для обеспечения исключительного доступа к разделяемым ресурсам, являются потенциальным узким местом производительности в многопоточных приложениях. Существует множество подходов, предлагающих различные методы для анализа и уменьшения влияния этой проблемы в программном или аппаратном обеспечении. Описанные подходы количественно измеряют накладные расходы на механизмы синхронизации, а также оценивают влияние данных примитивов синхронизации на общее время выполнения многопоточных приложений.
Все упомянутые исследования и описанный в литературе опыт могут быть использованы для расширения покрытия функциональной верификации атомарных операций. Функциональная верификация атомарных операций является достаточно трудоемким процессом, поскольку корректность работы атомарных операций не может быть проверена с помощью стохастических методов генерации тестов в силу непредсказуемости их поведения. Об этом свидетельствует отсутствие достаточной информации по данной теме, что с одной стороны могло бы означать, что атомарные операции были успешно проверены традиционными методами. Однако можно найти по крайней мере две ссылки на задокументированные ошибки известных процессоров, в которых перечислены проблемы, связанные с неправильным поведением атомарных операций.
Представленный в статье анализ механизмов синхронизации является методом, который фокусируется не на вопросах производительности, а на функциональной верификации инструкций атомарных операций, которые обеспечивают основу механизмов синхронизации.
Ключевые слова
 lock contention, cache contention, атомарные инструкции, функциональная верификация, псевдослучайная направленная генерация тестов, тесты производительности, PARSEC, lock torture, тестовое покрытие.
Ссылка на статью
 Гревцев Н.А., Чибисов П.А. Функциональная верификация атомарных операций с использованием анализа конфликтов блокировок // Проблемы разработки перспективных микро- и наноэлектронных систем (МЭС). 2020. Выпуск 3. С. 57-64. doi:10.31114/2078-7707-2020-3-57-64
Адрес статьи
 http://www.mes-conference.ru/data/year2020/pdf/D090.pdf

Copyright © 2009-2024 ИППМ РАН. All Rights Reserved.

Разработка сайта - ИППМ РАН