• Title/Summary/Keyword: openMP program with directives

Search Result 3, Processing Time 0.017 seconds

A Detection Tool of First Races in OpenMP Programs with Directives (OpenMP 디렉티브 프로그램의 최초경합 탐지를 위한 도구)

  • Kang, Mun-Hye;Ha, Ok-Kyoon;Jun, Yong-Kee
    • Journal of KIISE:Computer Systems and Theory
    • /
    • v.37 no.1
    • /
    • pp.1-7
    • /
    • 2010
  • Detecting data races is important for debugging programs with OpenMP directives, because races result in unintended non-deterministic executions of the program. It is especially important to detect the first data races to occur for effective debugging, because the removal of such races may make other affected races disappear or appear. The previous tools for race detecting can not guarantee that detected races are the first races to occur. This paper suggests a tool what detects the first races to occur on the program with nested parallelism using the two-pass on-the-fly technique. To show functionality of this tool, we empirically compare with the previous tools using a set of the synthetic programs with OpenMP directives.

A Verification Tool of Data Races in Programs with OpenMP Directives (OpenMP 디렉티브 프로그램을 위한 자료경합 검증도구)

  • Kim, Young-Joo;Jun, Yong-Kee
    • Journal of KIISE:Computer Systems and Theory
    • /
    • v.34 no.9
    • /
    • pp.395-406
    • /
    • 2007
  • Races in programs with OpenMP directives must be detected for debugging, because they may cause unexpected result by non-deterministic executions. But, Thread Checker of Intel corporation, a well-known existing tool for detecting the races, is not practical because this tool does not verify the existence of races and is known that the cost for race detection is too big. This paper presents a web-based tool which verify the existence of races with an optimal functionality and performance using the results from the property analysis of OpenMP program as well as the user requirements. Our tool is proved to be practical in the aspect of functionality and performance by experiments using synthetic programs, because the suggested tool can verify the existence of race and shows O(n) as the ratio of time consumption while Thread Checker can not verify the existence of race and shows $O(n^2)$ as the ratio, where n is the number of total accesses.

An Efficient Tool for Verifying Races in OpenMP Directive Programs without Interthread Synchronization (스레드 동기화가 없는 OpenMP 디렉티브 프로그램을 위한 효율적인 경합검증 도구)

  • Ha, Ok-Kyoon;Kang, Moon-Hye;Kim, Young-Joo;Jun, Yong-Ki
    • Journal of KIISE:Computing Practices and Letters
    • /
    • v.14 no.3
    • /
    • pp.301-305
    • /
    • 2008
  • Races must be detected for debugging OpenMP programs with directives, because they may cause unintended nondeterministic results of programs. Intel Thread Checker, an existing tool that can detects races, can not verify the existence of races and is often time-consuming and tends to require large space. To solve these problems, we developed a tool that verifies the existence of races using user requirements and analyzed model of programs. However, the tool does not have optimal performance in programs which have no synchronization for interthread coordination. This paper presents an optimal tool that applies the optimum labeling and protocol for program models without interthread coordination. For synthetic programs without interthread synchronization, the tool verifies races over 250 times faster than the previous tool on the average, even if the maximum parallelism increases in every case of which the number of total accesses are identical.