Skip to main content
QUICK REVIEW

[논문 리뷰] Data-centric Dynamic Partial Order Reduction

Marek Chalupa, Krishnendu Chatterjee|arXiv (Cornell University)|2016. 10. 04.
Fuel Cells and Related Materials인용 수 16
한 줄 요약

이 논문은 관찰 동치성 기반의 데이터 중심 동적 부분순서 축소(DPOR) 방법을 소개한다. 여기서 두 추적(trace)가 동치라는 것은 각 독자 읽기 이벤트가 둘 다 동일한 쓰기 이벤트를 관찰한다는 것을 의미한다. 이 방법은 비순환 아키텍처에 대해 증명적으로 최적이며, 다항수 시간 내에 각 동치 클래스를 처리함으로써 마조르키에비치 기반 DPOR보다 지수적으로 적은 추적을 탐색하여 실질적으로 탐색 시간과 상태공간 크기를 크게 줄인다.

ABSTRACT

We present a new dynamic partial-order reduction method for stateless model checking of concurrent programs. A common approach for exploring program behaviors relies on enumerating the traces of the program, without storing the visited states (aka stateless exploration). As the number of distinct traces grows exponentially, dynamic partial-order reduction (DPOR) techniques have been successfully used to partition the space of traces into equivalence classes (Mazurkiewicz partitioning), with the goal of exploring only few representative traces from each class. We introduce a new equivalence on traces under sequential consistency semantics, which we call the observation equivalence. Two traces are observationally equivalent if every read event observes the same write event in both traces. While the traditional Mazurkiewicz equivalence is control-centric, our new definition is data-centric. We show that our observation equivalence is coarser than the Mazurkiewicz equivalence, and in many cases even exponentially coarser. We devise a DPOR exploration of the trace space, called data-centric DPOR, based on the observation equivalence. 1. For acyclic architectures, our algorithm is guaranteed to explore exactly one representative trace from each observation class, while spending polynomial time per class. Hence, our algorithm is optimal wrt the observation equivalence, and in several cases explores exponentially fewer traces than any enumerative method based on the Mazurkiewicz equivalence. 2. For cyclic architectures, we consider an equivalence between traces which is finer than the observation equivalence; but coarser than the Mazurkiewicz equivalence, and in some cases is exponentially coarser. Our data-centric DPOR algorithm remains optimal under this trace equivalence. Finally, we perform a basic experimental comparison between the existing Mazurkiewicz-based DPOR and our data-centric DPOR on a set of academic benchmarks. Our results show a significant reduction in both running time and the number of explored equivalence classes.

연구 동기 및 목표

  • 동시 프로그램의 상태없는 모델 체킹 과정에서 발생하는 추적 공간의 지수적 증가 문제를 해결하기 위해.
  • 기존 마조르키에비치 동치성보다 더 넓은 동치 관계를 개발하여 검증의 완전성을 유지하기 위해.
  • 이 새로운 동치성에 대해 최적인 동적 부분순서 축소 알고리즘을 설계하기 위해.
  • 기존 DPOR 방법과 비교해 실행 시간과 탐색된 동치 클래스 수에서 뚜렷한 성능 향상을 달성하기 위해.

제안 방법

  • 두 추적이 각 독자 읽기 이벤트가 동일한 쓰기 이벤트를 관찰할 경우 동치가 되는 새로운 추적 동치성인 관찰 동치성을 제안한다.
  • 비순환 아키텍처를 대상으로 하여 각 관찰 동치 클래스에서 정확히 한 개의 대표 추적만을 탐색하는 데이터 중심 DPOR 알고리즘을 개발한다.
  • 관찰 동치성에 맞게 조정된 실시간 충돌 탐지 및 영구 집합 기법을 사용하여 효율적인 탐색을 구현한다.
  • 순환 아키텍처를 위한 개선된 동치성을 도입하여, 마조르키에비치 동치성보다는 더 넓지만 관찰 동치성보다는 더 좁은 동치성을 확보한다.
  • 이전의 SMT 기반 접근법에서 사용하는 NP-오라클 호출을 피하기 위해 각 동치 클래스당 다항수 시간 내에 계산을 수행한다.
  • 최적성 유지 조건 하에 순환 아키텍처를 처리할 수 있도록 알고리즘을 확장한다.

실험 결과

연구 질문

  • RQ1동시 프로그램의 동적 부분순서 축소에서 기존 마조르키에비치 동치성보다 더 넓은 동치성을 사용할 수 있는가?
  • RQ2데이터 중심 동치 관계에 대해 최적인 DPOR 알고리즘을 설계하는 것은 가능한가?
  • RQ3이러한 동치 관계가 기존 방법과 비교해 탐색하는 추적 수를 지수적으로 줄일 수 있는가?
  • RQ4실제로 새로운 알고리즘의 성능은 기존 DPOR 기법과 비교해 어떻게 되는가?
  • RQ5이러한 접근법은 효율성과 정확성을 유지하면서도 순환 아키텍처를 처리할 수 있도록 확장할 수 있는가?

주요 결과

  • 관찰 동치성은 마조르키에비치 동치성보다 더 넓으며, 일부 경우에 지수적으로 더 넓어지므로 탐색해야 할 추적 수를 크게 줄일 수 있다.
  • 비순환 아키텍처에서는 데이터 중심 DPOR 알고리즘이 각 관찰 동치 클래스에서 정확히 한 개의 대표 추적만 탐색하고, 클래스당 다항수 시간 내에 실행되어 최적임을 입증한다.
  • 실험 결과, 탐색된 동치 클래스 수와 실행 시간이 모두 감소함을 확인하였다.
  • 이전의 SMT 기반 접근법에서 사용하는 NP-오라클 호출에 의존하지 않아, MCR와 달리 클래스당 지수적 최악의 복잡도를 가지지 않는다.
  • MCR와 달리, 이 알고리즘은 각 동치 클래스가 오직 한 번만 탐색됨을 보장하여 탐색 과정에서의 지수적 팽창을 방지한다.
  • 실험 결과, 기존의 마조르키에비치 기반 DPOR와 비교해 실행 시간과 탐색된 클래스 수 모두 뚜렷한 감소를 보였다.

더 나은 연구,지금 바로 시작하세요

논문 읽기부터 검토까지, 연구 시간을 획기적으로 줄여보세요.

카드 등록 없음 · 무료 플랜 제공

이 리뷰는 AI가 만들고, 인간 에디터가 검토했습니다.