• 제목/요약/키워드: Atomicity Violations

검색결과 4건 처리시간 0.62초

A Tool for On-the-fly Repairing of Atomicity Violation in GPU Program Execution

  • Lee, Keonpyo;Lee, Seongjin;Jun, Yong-Kee
    • 한국컴퓨터정보학회논문지
    • /
    • 제26권9호
    • /
    • pp.1-12
    • /
    • 2021
  • 본 논문은 GPU 프로그램의 메모리의 상태 및 접근사건과 배리어 위치 정보를 감시하고, 실제 메모리 쓰기를 배리어 영역 종료 직전에 발생시키거나 배리어 영역을 재수행시켜 원자성 위배를 수행 중에 수리하는 도구인 ARCAV (Atomatic Recovery of CUDA Atomicity violation)를 제시한다. 기존의 연구들은 Lock과 Sleep 명령어를 사용하여 원자성 위배를 진단 및 수리하도록 구현되었기 때문에 지원되는 명령어와 동기화 기법이 CPU (Central Processing Unit) 프로그램과 다른 GPU (Graphics Processing Unit) 프로그램에는 적용될 수 없었고, GPU 프로그램에서는 원자성 위배의 탐지에 대한 연구만 수행되었다. 제안하는 ARCAV는 GPU 프로그램의 실행모델에서 수행될 수 있도록 설계되어 스레드 구성과 메모리 계층에 무관하게 실세계에서 발생한 원자성 위배를 대표하는 네 가지 패턴의 원자성 위배를 실시간으로 탐지하고 수리할 수 있다. 실험 결과 동시에 실행되는 스레드 개수와 구성에 무관하게 일정한 오버헤드를 보였다. 원자성 위배를 프로그램 수행 중에 실시간으로 탐지하고 수리하기 위해 소요되는 오버헤드는 네 개의 실세계 GPU 커널에서 실험되었고, 원본 프로그램 대비 평균 2.1배의 수행시간으로 동작하였다.

항공기 건전성 관리시스템용 원자성 위배 자율 수리 소프트웨어 기법 (On-the-fly Atomicity Violation Repairing Technique for Airborne Health Management Systems)

  • 최으뜸;이동수;전용기;이성진
    • 한국항공우주학회지
    • /
    • 제48권7호
    • /
    • pp.547-554
    • /
    • 2020
  • 항공기 건전성 관리시스템은 항공기 소프트웨어에서 발생한 오류 또는 결함으로 인해 항공기의 기능이 실패되는 것을 방지한다. ARINC-653의 병행프로그램에서 발생하는 원자성 위배의 자율 수리는 프로그램의 정상적인 실행을 보장하기 때문에 중요하다. 본 논문은 프로그램 실험 결과를 활용하여 수행 중에 원자성 위배를 예측하고 주요 관련 접근 사건을 지연시켜 수리하는 기법인 Repairing-AV를 제시한다. 실세계 소프트웨어에서 발생한 5가지 원자성 위배 패턴을 포함하는 합성 프로그램에 기존 기법과 Repairing-AV을 적용하여 수리 시간 오버헤드를 비교하였다. 실험 결과 Repairing-AV는 공유변수 접근 횟수와 관계없이 평균 1.4배의 일정한 시간 오버헤드를 가짐을 확인하였다.

항공기 소프트웨어의 건전성 관리를 위해서 순서 위배 오류를 자율 수리하는 효율적인 시스템 (An Efficient On-the-fly Repairing System of Order Violation Errors for Health Management of Airborne Software)

  • 김태형;최으뜸;전용기
    • 한국항공우주학회지
    • /
    • 제48권10호
    • /
    • pp.821-829
    • /
    • 2020
  • 항공기 소프트웨어의 건전성 관리시스템은 수행 중에 발생하는 오류를 수리하여 안전성을 제공하고 유지보수 비용을 절감한다. 순서 위배 오류는 개발 단계에서 모두 제거하는 것이 어렵기 때문에 운용 단계에서 자율적으로 수리할 수 있어야 한다. 순서 위배를 자율 수리하기 위한 기존 연구는 각 접근사건의 수행 직전에 접근사건 순서를 비교하여 오류를 진단하기 때문에 접근사건 수에 비례하는 시간 오버헤드를 발생시킨다. 본 논문은 접근사건을 포함하는 함수의 올바른 순서 정보로 오류를 진단하고 해당 함수를 지연시켜 조치하는 기법인 ORS를 제시한다. ORS를 평가하기 위해, 순서 위배 오류를 포함하는 5가지의 합성 프로그램에 기존 연구와 ORS를 적용하여 시간 오버헤드를 측정하였다. 그 결과, 접근 횟수가 약 60번 이상일 때 기존 연구보다 효율적임을 확인하였다.

멀티 스레드 프로그램의 자료경합 탐지를 위한 수행 중 감시 도구 (On-the-fly Monitoring Tool for Detecting Data Races in Multithread Programs)

  • 팽봉준;박세원;구인본;하옥균;전용기
    • 정보과학회 논문지
    • /
    • 제42권2호
    • /
    • pp.155-161
    • /
    • 2015
  • 멀티 스레드 프로그램의 수행 중에 발생하는 자료경합과 원자성 위배 등과 같은 동시성 오류는 스레드들의 비결정적 수행으로 인해 다양한 수행 순서를 고려해야 하고 재생산 또한 어렵기 때문에 디버깅하기 어렵고 귀찮은 오류로 잘 알려져 있다. 이러한 자료경합을 디버깅하기 위해서는 스레드의 수행 순서와 메모리 접근 및 동기화 정보 등과 같은 프로그램의 수행 중에 발생한 정보를 수집 및 분석해야 한다. 본 논문에서는 멀티 스레드 프로그램의 수행 중에 벡터 클록 시스템을 기반으로 스레드의 병행성과 접근사건들 간의 순서관계를 생성 및 유지함으로써 정확하면서도 효율적인 감시와 분석이 가능한 도구인 VcTrace를 제시한다. 제시된 감시 도구를 사용하여 멀티 스레드 기반의 응용 프로그램을 대상으로 수행 중 발생한 스레드와 접근사건 등의 정보를 감시 및 유지하고, 자료경합을 탐지하는 기술과 접목하여 실용성을 분석한다.