A Benchmark Suite for Data Race Detection Technique in GPGPU Progrmas

GPGPU 프로그램의 자료경합 탐지기법을 위한 벤치마크 모음

  • Lee, Keonpyo (Dept. of Infomatics Gyeongsang National University) ;
  • Choi, Eu-Teum (Dept. of Infomatics Gyeongsang National University) ;
  • Jun, Yong-Kee (Dept. of Infomatics Gyeongsang National University)
  • 이건표 (경상대학교 정보과학학과) ;
  • 최으뜸 (경상대학교 정보과학학과) ;
  • 전용기 (경상대학교 정보과학학과)
  • Published : 2019.01.16

Abstract

자료경합은 두 개 이상의 스레드가 같은 공유메모리에 적절한 동기화 없이 접근하고, 적어도 한 개의 접근사건이 쓰기일 때 발생할 수 있는 동시성 오류이다. 자료경합은 프로그래머가 의도하지 않은 비결정적인 수행결과를 초래하여, 항공기 소프트웨어와 같은 고신뢰성이 요구되는 프로그램에서 치명적인 오류를 발생시켜 인적 물적 손해로 이어질 수 있다. 자료경합 탐지기법은 이러한 문제를 사전에 탐지하여 수정하는데 사용되어진다. 하지만 GPGPU 프로그램에서의 자료경합은 CPU 병행프로그램에서보다 복잡한 실행구조를 가지고 있어 스레드 및 메모리 계층, 스케줄링, 동기화 기법 등의 많은 변수가 존재한다. 이로 인해 실세계 프로그램에 자료경합 탐지기법을 적용하여 검증 시 이러한 변수들을 반영하여 실험하는데 많은 노력이 소요된다. 본 논문은 실세계 프로그램에서의 자료경합을 대표하는 4가지 패턴의 합성프로그램으로 이루어지고 실행 시 스레드 및 메모리 계층, 스레드 구조, 메모리 사용량 및 동기화 방안을 지정할 수 있는 벤치마크 모음을 제시한다.

Keywords