• Title/Summary/Keyword: 병렬 프로그램

Search Result 602, Processing Time 0.023 seconds

A Design and Implementation of Parallel Programming Environment using Graph Type Intermediate Representation Form (그래프 중간표현 형태를 기반으로 한 병렬 프로그래밍 환경의 설계 및 구현)

  • 이원용;박두순;송상주
    • Proceedings of the Korean Information Science Society Conference
    • /
    • 2001.10c
    • /
    • pp.850-852
    • /
    • 2001
  • 본 논문에서는 사용자의 병렬 프로그램 작성을 도와주는 병렬 프로그래밍 환경을 제공한다. 병렬 프로그램은 다양한 하드웨어의 특성에 따라 또는 프로그램의 특성에 따라 사용자가 병렬 프로그램을 작성하여야 하기 때문에 병렬프로그램을 작성하는 것이 매우 어렵다. 본 논문에서는 많은 병렬화 연구에서 제시되고 있는 그래프 중간 표현 형태를 그래프 사용자 인터페이스로 구현하였다. 이 병렬 환경에서는 프로그램 편집기능, 종속성 분석기능, 루프 변환기능, CFG, DPG, HTG등 중간 코드를 그래프 중간 표현 형태를 통해 보여 줌으로 최적의 병렬프로그래밍 환경을 제공한다.

  • PDF

Improvement of Program Parallelism by Using Loop Transformation (루프 변환에 의한 프로그램 병렬성 개선 방안)

  • Kim, J.M.;Chi, D.H.;Yoon, S.H.
    • Electronics and Telecommunications Trends
    • /
    • v.14 no.2 s.56
    • /
    • pp.1-13
    • /
    • 1999
  • 본 연구는 병렬성 및 지역성 증진을 위한 컴파일러 최적화에 관한 연구로서, 순차 언어로 작성된 프로그램을 병렬성을 명시하는 프로그램으로 변환하는 자동 병렬화 기술을 연구하고, 병렬화를 위한 코드 변환을 수행한 후 쓰레드를 이용한 최적화된 코드 생성을 통하여 프로그램의 효율성을 높이는 것을 목적으로 한다. 이는 병렬 컴퓨터에서의 프로그램 개발 생산성을 높일 수 있고, 컴파일러의 관련 기술 발전에 도움을 줄 수 있다. 본 고에서는 순차 언어인 FORTRAN 및 C 프로그램을 입력으로 받아 병렬성 및 지역성 분석을 수행하고, 분석을 통해 기본 컴파일러로 선정한 SUIF 컴파일러에서 사용되는 루프 변환을 포함하여 루프 분산 및 병합의 프로그램 변환을 수행한 후, 쓰레드 실행시간 라이브러리로 병렬성을 명시한 C 프로그램을 출력하는 병렬화 번역기에 대한 연구 내용을 기술하였다.

A Study on Effects of Sequential Workloads on Parallel Workloads in Workstation Clusters (워크스테이션 클러스터에서 순차적 부하가 병렬 부하에 미치는 영향에 대한 연구)

  • Chang, Young-Min;Shim, Young-Chul
    • The Transactions of the Korea Information Processing Society
    • /
    • v.5 no.8
    • /
    • pp.2137-2153
    • /
    • 1998
  • 네트워크로 연결된 워크스테이션들인 NOW(Network of Workstations)가 순차 프로그램과 병렬 프로그램들을 모두 효율적으로 수행할 수 있는 환경을 제공하려면 이 두 종류의 프로그램들이 어떻게 상호 영향을 주는지 이해할 필요가 있다. 본 논문에서는 순차 프로그램의 부하의 변화에 따른 병렬 프로그램의 성능 변화를 알아보았다. 이러한 목적으로 NOW 시뮬레이터를 구현하고 실험을 하였다. 구현에서 순차 프로그램과 병렬 프로그램들은 합성 부하를 사용하였고 병렬 프로그램의 수행 환경으로는 코스케쥴링과 프로세스 이주가 가능하다고 가정하였다. 실험을 통해서 순차 프로그램들에 의해 변하는 유휴 워트스테이션의 수가 병렬 프로그램의 성능에 어떠한 영향을 미치는지와 동시에 수행되는 여러 개의 병렬 프로그램들이 서로의 성능에 어떠한 영향을 미치는 가에 대해 결과를 수집하고 분석하였다.

  • PDF

Adaptive Execution Techniques for Parallel Programs (병렬 프로그램의 적응형 실행 기법)

  • 이재진
    • Journal of KIISE:Computer Systems and Theory
    • /
    • v.31 no.8
    • /
    • pp.421-431
    • /
    • 2004
  • This paper presents adaptive execution techniques that determine whether parallelized loops are executed in parallel or sequentially in order to maximize performance. The adaptation and performance estimation algorithms are implemented in a compiler preprocessor. The preprocessor inserts code that automatically determines at compile-time or at run-time the way the parallelized loops are executed. Using a set of standard numerical applications written in Fortran77 and running them with our techniques on a distributed shared memory multiprocessor machine (SGI Origin2000), we obtain the performance of our techniques, on average, 26%, 20%, 16%, and 10% faster than the original parallel program on 32, 16, 8, and 4 processors, respectively. One of the applications runs even more than twice faster than its original parallel version on 32 processors.

Dependence Analysis and Class Design for Exploiting Implicit Parallelism in C++ (병렬성 검출을 위한 C++ 클래스 설계 및 종속성 분석)

  • Hwang, Deuk-Yeong;Gwon, O-Jin;Choe, Yeong-Geun
    • The Transactions of the Korea Information Processing Society
    • /
    • v.5 no.6
    • /
    • pp.1479-1493
    • /
    • 1998
  • C++ 프로그램을 병렬 실행시키려면 재구성 컴파일러가 함수 호출로 발생하는 요약된 정보를 수집해야 한다. 객체의 참조 매개변수를 사용하는 경우와 객체의 참조를 반환하는 메소드에 대해서 메소드간의 요약된 정보를 발견하여 병렬성을 검출하는 것은 어렵다. 본 논문에서는 순차 C++ 프로그램을 병렬 프로그램으로 변환하기 위해 클래스 인터페이스 내에 메소드간의 관계를 명시하는 병렬 정보 GERINFPO절과 순서 정보 SEQ절을 삽입하므로서 명시적인 병렬성을 얻고 재구성 컴파일러는 명시된 정보를 이용하여 프로그램내에 내재한 묵시적 병렬성을 얻는 방법을 제안한다. 또한 본 논문에서 제시하는 종속 분석 방법을 이용하여 순차 C++ 프로그램을 병렬 코드로 변환하는 병렬코드 변환기를 구현하였다.

  • PDF

A Design and Implementation of Parallel Programming Environment using Graphical User Interface (그래픽 사용자 인터페이스를 이용한 병렬 프로그래밍 환경 설계 및 구현)

  • 이원용;박두순
    • Journal of Korea Multimedia Society
    • /
    • v.4 no.6
    • /
    • pp.579-587
    • /
    • 2001
  • In this paper, we design and implement a parallel programming environment using graphicial user interface. Parallel program must be written according to the characters of various hardwares or programs. So it is difficult to write the parallel program. In this paper, we design and implement a parallel programming environment which solved this problem. The traditional parallel compiler provides the parallel information in the text environment. But this paper provides the parallel information using graphicial user interface so that the user may use it more easily. This parallel environment provide functions such as, data dependence analysis, CFG, HTF, and loop transformation.

  • PDF

Parallel Programming for Exploiting Hybrid Parallel Model of CLUMP system and its Performance Evaluation (다중 메모리 모델의 CLUMP 시스템을 이용하기 위한 병렬 프로그래밍 기법과 성능 평가)

  • 이용욱;라마크리쉬나
    • Proceedings of the Korean Information Science Society Conference
    • /
    • 2000.10c
    • /
    • pp.621-623
    • /
    • 2000
  • 클러스터를 구성하는 단위 노드로 SMP가 새로운 대안으로 시장에 등장하였다. 이러한 멀티프로세서 클러스터(CLUMP)는 하나의 시스템에 다중 메모리 구조를 가지는데, CLUMP가 가지는 다중 메모리 구조를 효과적으로 사용하기 위해서 본 논문에서는 중첩된 병렬화 프로그램 모델을 제안하였다. 중첩된 병렬화 모델은 중첩된 루프 레벨의 병렬화, 중첩된 태스크 레벨의 병렬화, 그리고 다중 중첩된 병렬화로 나뉜다. 본 논문에서는 중첩된 루프 레벨의 병렬화를 실험대상으로 하여 그 성능을 평가하고 단일 메모리 구조의 병렬화 프로그램과 성능을 비교하였다. 실험 결과 시험한 중첩된 병렬화 모델이 단일 메모리 구조의 병렬화 프로그램에 비하여 좋은 성능을 나타내었지만, 실험대상이 된 루프 레벨 병렬화의 잠재적인 특징으로 인해 실행에 참여하는 노드 수가 많아질수록 성능 향상 폭이 감소하는 결과를 보였다. 프로그램의 성능 향상 폭과 확장성은 문제 크기가 클수록 좋은 특성을 보였다.

  • PDF

A Parallel Programming Environment using Graph Type Intermediate Representation Form (그래프 중간표현 형태를 기반으로 한 병렬 프로그래밍 환경)

  • 이원용;박두순
    • Journal of Internet Computing and Services
    • /
    • v.2 no.4
    • /
    • pp.69-81
    • /
    • 2001
  • This paper describes a parallel programming environment to help programmer to write parallel programs. Parallel program must be write according to the character of the various hardware or program. So it is difficult for the programs to write the parallel programmer. In this paper, we propose and implement a parallel programming environment using graph type intermediate representation form, and graph user interface is provided for programmer to get parallel programs easily, This parallel environment supports special functions using graph type intermediate representation form. The special functions involve program editing. data dependence analysis, loop transformation. CFG, PDG, HTG. This parallel environment helps users make parallelism and optimization easy through showing the intermediate code with graph.

  • PDF

A Java Debugger for Replaying Parallel Programs on a Distributed Environment (분산환경에서 병렬프로그램 재실행을 위한 자바 디버거)

  • 최동순;김남훈;김명호
    • Proceedings of the Korean Information Science Society Conference
    • /
    • 2000.04a
    • /
    • pp.657-659
    • /
    • 2000
  • 네트워크 처리속도의 증가로 네트워크 컴퓨팅 환경에서의 작업이 늘고 있다. 플랫폼 독립성이라는 특성을 내세운 자바는 일반적인 이 기종간의 네트워크에서의 프로그래밍 언어로 많이 이용되고 있다. 그리고 이러한 네트워크 컴퓨팅 환경에서 병렬 프로그램 디버깅의 어려움으로 인해 자바 병렬 프로그램을 위한 디버거의 필요성이 요구되고 있다. 기존의 디버거들은 이런 병렬 환경에서의 디버깅을 각 프로세서에 하나의 순차디버거를 붙인 디버깅 환경을 제공한다. 그러나 병렬 프로그램은 순차프로그램과 다른 재실행시의 비결정적인 특성을 가지고 있음으로 일반적인 순차 디버거를 이용한 디버깅은 의미가 없다. 본 논문에서는 자바로 구현된 네트워크 컴퓨터(JaNeC)에서 병렬프로그램을 디버기하기 위하여 재실행 시 실행 순서를 보장하는 자바 디버거를 소개한다.

  • PDF

Design and Implementation of Visual Environment for Parallel Object-Oriented Programming (병렬 객체지향 프로그래밍을 위한 시각 환경의 설계 및 구현)

  • Choe, Suk-Yeong
    • The Transactions of the Korea Information Processing Society
    • /
    • v.6 no.2
    • /
    • pp.485-496
    • /
    • 1999
  • Comparing with sequential programming, parallel programming has additional complexity due to the consideration of parallelism, communication and synchronization of processes. A synergism between users and compliers should be established, each assisting the other to produce high quality parallel programs. On the above underlying philosophy, we developed a parallel Object-Oriented specification language, POOSL, as preliminary works. However, it is still likely to hard for users to write parallel program because users have to consider grammar of POOSL and to write text-based parallel program. It would be more desirable to provide users wit visual environment for effective parallel programming. Therefore, we propose a visual programming environment. VEPO(Visual environment for Parallel Object-Oriented Programming), based on POOSL in order that users can develop parallel programs more easily and conveniently. It aims at supporting a programming environment in which users can represent their programs more naturally and visually I parallel manner with object-oriented concept and essential steps during parallel program development such as program specification, compilation, execution and animation of execution are integrated. VEPO has useful features for parallel processing. Especially, complicated parallel codes for synchronization and communication of processes are automatically generated in the translation phase, so users can be relieved of writing error-prone parallel codes. The system is targeted to the transputer-based parallel system, MC-3. The graphic user interface of VEPO was implemented using Visual C++. Visual programs descirbed on VEPO are translated into Inmos C and executed on MC-3.

  • PDF