• Title/Summary/Keyword: OpenMP 프로그램

Search Result 46, Processing Time 0.027 seconds

Automatic Generation of Race Debugging Environment for OpenMP Programs (OpenMP프로그램을 위한 경합디버깅 환경의 자동생성)

  • 강문혜;김영주;전용기
    • Proceedings of the Korean Information Science Society Conference
    • /
    • 2002.04a
    • /
    • pp.601-603
    • /
    • 2002
  • 공유메모리 병렬프로그램에서 경합은 프로그램의 비결정적인 수행을 초래하므로 디버깅을 위해서 반드시 탐지되어져야 한다. 경합을 수행 중에 디버깅하기 위한 기존의 도구들은 경합탐지 엔진과 시각화 엔진으로 구성된 경합디버깅 엔진을 특정 프로그램 모델에 의존적으로 적용하여 경합디버깅 환경을 구성한다. 이러한 도구들은 프로그램 모델의 변경 시에 경합디버깅 환경이 최적의 경합 디버깅 엔진으로 구성되지 못한다는 문제점이 있다. 본 논문에서는 OpenMP 병렬프로그랭에서 각 프로그램 모델에 따라 효과성, 효율성, 확장성 등을 고려한 경합탐지 엔진과 추상성을 고려한 시각화 엔진으로 경합디버깅 환경을 자동으로 생성하는 도구를 제안한다. 이 도구는 디버깅 대상이 되는 프로그램의 모델에 최적인 경합디버깅 엔진을 적용하므로 경합탐지 목적에 부합하는 최적의 성능과 효과적인 시각화를 제공한다. 따라서, 본 도구는 디버깅 환경을 생성하기 위한 부담을 줄여서 효과적인 디버깅을 할 수 있게 한다.

  • PDF

Survey and Analysis of OpenMP Specifications (OpenMP 명세에 대한 고찰 및 분석)

  • Lee, Jong-Woo;Park, Chan-Young
    • Proceedings of the Korea Information Processing Society Conference
    • /
    • 2000.10a
    • /
    • pp.621-624
    • /
    • 2000
  • 메시지 전달 방식과 공유 메모리 방식은 병렬 컴퓨터 시스템을 위한 대표적인 아키텍쳐이다. 이 중 공유 메모리 방식은 프로그래밍의 용이함으로 인해 메시지 전달 방식에 비해 많이 채택되고 있는 실정이다. 하지만 하드웨어 벤더마다 각기 다른 공유 메모리 프로그래밍 인터페이스를 제공하기 때문에, 코드 호환성이 주 관심사인 경우에는 프로그래밍의 불편함을 감수하면서 MPI 나 PVM 등을 이용한 메시지 전달 구조를 채택하는 경우가 자주 발생한다. 본 논문에서는 공유 메모리 병렬 컴퓨터 시스템을 위한 프로그래밍 인터페이스 표준인 OpenMP 명세에 대해 고찰, 분석한 결과를 제시한다. OpenMP 명세의 등장 배경 및 발전 과정 등을 기술하고, OpenMP 명세의 분분별 규정 내용을 요약한다. 또한 OpenMP 명세에 따라 기존 C 프로그램을 수정한 예도 보인다. 본 논문의 목적은 OpenMP 라는 공유 메모리 프로그래밍 인터페이스 표준을 소개하고, 이에 대한 관심을 높임으로써 관련 연구를 활성화시키는데 있다.

  • PDF

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.

ePRO-OMP: A Tool for Performance/Energy PRofiler and Analyzer for OpenMP Applications (ePRO-OMP: OpenMP 응용 프로그램의 성능 및 에너지 분석 도구)

  • Lee, Young-Ho;Kim, Jihong
    • IEMEK Journal of Embedded Systems and Applications
    • /
    • v.6 no.5
    • /
    • pp.287-293
    • /
    • 2011
  • As chip multiprocessors have been widely adopted in embedded systems, achieving both high performance and low power consumptions of parallel applications becomes challenging. In order to meet these requirements, it is crucial for developers to analyze the performance and energy consumption of parallel applications. In this paper, we propose a tool for profiling and optimizing the performance and energy consumption of OpenMP applications (energy PROfiler and analyzer for OpenMP: ePRO-OMP). The main advantage of ePRO-OMP is that it can analyze both the performance and energy consumption of each parallel region of an OpenMP application, which can help developers find the bottleneck of parallel applications in detail.

Comparative and Combined Performance Studies of OpenMP and MPI Codes (OpenMP와 MPI 코드의 상대적, 혼합적 성능 고찰)

  • Lee Myung-Ho
    • The KIPS Transactions:PartA
    • /
    • v.13A no.2 s.99
    • /
    • pp.157-162
    • /
    • 2006
  • Recent High Performance Computing (HPC) platforms can be classified as Shared-Memory Multiprocessors (SMP), Massively Parallel Processors (MPP), and Clusters of computing nodes. These platforms are deployed in many scientific and engineering applications which require very high demand on computing power. In order to realize an optimal performance for these applications, it is crucial to find and use the suitable computing platforms and programming paradigms. In this paper, we use SPEC HPC 2002 benchmark suite developed in various parallel programming models (MPI, OpenMP, and hybrid of MPI/OpenMP) to find an optimal computing environments and programming paradigms for them through their performance analyses.

Implementation of Underwater Simulation of a Net using OpenMP (OpenMP 병렬프로그램을 이용한 그물의 수중형상 시뮬레이션 구현)

  • Park, Myeong-Chul;Park, Seok-Gyu
    • Journal of the Korea Society of Computer and Information
    • /
    • v.13 no.2
    • /
    • pp.11-17
    • /
    • 2008
  • The net shape effects by the various vectors in underwater. Each particle of the net calculating the effect of all vectors augments an accuracy and reality. But, the time complexity becomes larger because of huge calculation. The previous techniques reduced a physics reality. And embodied the underwater virtual reality which augments visual reality with simulation. In this paper, parallel processing the particles, it embodied the simulation which is satisfied a physical reality and time reality. The parallel processing used the OpenMP, and the reality graphic expression used the OpenGL. The simulation which this paper Proposes will be the possibility becoming the fundamental data for a model analysis or a specialist system from game and marine field.

  • PDF

A Study on Efficient Parallel Programming (효율적인 병렬처리 프로그램 방식에 관한 연구)

  • Yoon, Sang-Hyuk;Kim, Youngtae
    • Proceedings of the Korea Information Processing Society Conference
    • /
    • 2016.04a
    • /
    • pp.67-69
    • /
    • 2016
  • 분산 병렬 프로그램의 성능을 향상시키기 위하여 분산 컴퓨터에서는 메시지 전송 방식(MPI)을 사용하고 독립적인 컴퓨터 내에서는 OpenMP를 사용하여 성능을 향상시키는 혼합형 병렬 방식이 많이 사용되고 있다. 본 논문에서는 OpenMP방식과 MPI 방식을 혼용하는 방식을 순수 MPI만 사용하는 방식과 비교하여 성능을 분석하였다. 성능 분석 결과, MPI만을 사용하는 방식의 성능이 효율적임을 보여주었다.

An Efficient Scheme for Creating Concurrency Information in OpenMP Programs (OpenMP 프로그램을 위한 효율적 병행성 정보의 생성기법)

  • Ha, Ok-Kyoon;Kim, Sun-Sook;Jun, Yong-Kee
    • Proceedings of the Korean Information Science Society Conference
    • /
    • 2010.06c
    • /
    • pp.534-539
    • /
    • 2010
  • OpenMP 프로그램의 수행 중에 발생하는 자료 경합과 같은 병행성 오류는 디버깅을 위하여 반드시 탐지되어야만 한다. 그러나 이를 탐지하는 것은 어려운 일이다. 접근사건의 발생 후 관계를 기반으로하는 경합 탐지 기법은 프로그램의 수행 중에 발생하는 스레드의 병행성 정보를 식별하기위한 레이블을 생성하고, 생성된 스레드의 레이블을 기반으로 공유변수에 접근하는 사건을 접근역사를 통해 감시함으로써 경합을 탐지한다. 이러한 경합 탐지의 방법에서 레이블 생성을 위한 NR 레이블링 기법은 병행성 정보생성 시에 지역자료 구조를 사용함으로써 병목현상이 발생하지 않으며, 접근역사에 저장하는 레이블의 크기가 상수 값을 갖는 공간적 효율성을 제공한다. 또한 부모스레드의 정보역사를 정렬된 리스트 형태로 가져 병행성 정보 비교 시에 이진탐색이 가능하므로 시간적 효율성을 가지는 우수한 기법이다. 그러나, NR 레이블링은 레이블의 생성시에 부모스레드의 정보역사를 유지하기 위해서 내포 병렬성의 깊이에 의존하는 시간적 비용이 요구된다. 본 논문에서는 부모스레드의 정보역사 유지를 위해 상수적인 시간 및 공간적 복잡도를 갖도록 NR 레이블링 기법을 개선한다. 합성 프로그램을 이용하여 실험한 결과에서 개선된 기법은 최대 병렬성의 증가에 따라 레이블의 생성과 유지시 기존의 기법보다 평균 4.5배 빠르고, 레이블링을 위해 평균 3배 감소된 기억공간을 요구하며, 내포 병렬성에 의존적이지 않음을 보인다.

  • PDF

Interest-Information Monitoring System for Debugging of Parallel Programs (병렬 프로그램의 디버깅을 위한 관심정보 모니터링 시스템)

  • Park, Myeong-Chul
    • Proceedings of the Korean Institute of Information and Commucation Sciences Conference
    • /
    • 2007.10a
    • /
    • pp.607-610
    • /
    • 2007
  • In this paper, proposes the monitoring system it will be able to trace the executed of each threads in OpenMP based a parallel program. The monitoring system of existing in uses each threads label information and the analysis technique which uses the access-history was most. This has the problem which raises the time and space complexity which is caused by with massive information creation. In this paper, only the thread which includes interest information it creates tracking information with the target. And it provides information which is intuitive to the user it provides the visualization system for to a same time. The visualization model is composed the images-information of a base. This does to be it will be able to understandable a program execute situation using an image processing technique. Therefore, this paper provides the parallel program an effective debugging environment.

  • PDF