DOI QR코드

DOI QR Code

자료 종속성 제거 방법을 이용한 프로시저 변환

The Procedure Transformation using Data Dependency Elimination Methods

  • 장유숙 (순천향대학교 대학원 전산학과) ;
  • 박두순 (순천향대학교 정보기술공학부)
  • Jang, Yu-Suk (Dept.of Computer Science, Graduate School of Soonchungyang University) ;
  • Park, Du-Sun (Dept.of Information Technology Engineering, Soonchungyang University)
  • 발행 : 2002.03.01

초록

기존의 순차 프로그램에서 병렬성을 추출하는 연구들은 하나의 프로시저 내 변환에 치중되고 있다. 그러나 대부분의 프로그램들은 프로시저간 잠재된 병렬성을 가지고 있다. 본 논문에서는 자료 종속성 제거방법을 이용하여 프로시저 호출을 가진 루프에서 병렬성 추출 방식을 제안한다. 프로시저 호출을 포함하는 루프의 병렬화는 대부분 자료종석거리가 uniform 형태의 코드에서만 연구되었다. 본 논문에서는 자료종속거리가 uniform 코드와 nonuniform 코드에 대해 모두 적용 가능한 프로시저 간 변환 방법을 제시하였으며, 제시된 알고리즘의 성능평가를 위하여 CRAY T3E에서 성능평가하였고, 제시된 방법이 효과적임을 보였다.

Most researches of transforming sequential programs into parallel programs have been based on the loop structure transformation method. However, most programs have implicit interprocedure parallelism. This paper suggests a way of extracting parallelism from the loops with procedure calls using the data dependency elimination method. Most parallelization of the loop with procedure calls have been conducted for extracting parallelism from the uniform code. In this paper, we propose interprocedural transformation, which can be apply to both uniform and nonuniform code. We show the examples of uniform, nonuniform, and complex code parallelization. We then evaluated the performance of the various transformation methods using the CRAY-T3E system. The comparison results show that the proposed algorithm out-performs other conventional methods.

키워드

참고문헌

  1. Dale Allan Schouten, 'An overview of Interprocedural analysis Techniques for High Performance Parallelizing Compilers,' MS thesis, University of Illinois at Urbana Champaign, 1986
  2. D. Callahan, K.D. Cooper, K. Kennedy, and L. Torczon, 'Interprocedural constant propagation,' Journal of the ACM, pp.152 161, 1986
  3. K. D. Cooper, M. W. Hall, L. Torczon, 'An experiment with inline substitution,' Technical Report Tr90-128, Dept. of computer Science, Rice University, 1990
  4. Keith D. Cooper, Ken Kennedy, and Linda Torczon, 'Interprocedural constant propagation,' Technical Report TR-85-29, Department of Computer Science, Rice University, 1985
  5. V. A. Guarna. 'A technique for analyzing pointer and structure references in parallel restructuring compilers,' In Proceedings of ICPP 88, Vol.2, Penn State Press, August, 1988
  6. M. W. Hall, 'Managing Interprocedural Optimization,' PhD thesis, Dept. of computer Science, Rice University, 1991
  7. M. W. Hall, Ken Kennedy, Kathryn S. Mckinley, 'Interprocedural Transformations for Parallel Code Generation,' Technical Report 1149-s, Dept. of computer Science, Rice University, 1991
  8. C. A. IIuson, 'An inline subroutine expander for Parafrase,' Masters Thesis, Dept. of computer Science, Unversity of Illinois, 1982
  9. Z. Li aand P. C. Yew, 'Efficient interprocedural analysis for program restructuring for parallel programs,' In Proceedings of the SIGPLAN : Experience with Applications, Languages and Systems, 1988 https://doi.org/10.1145/62115.62125
  10. Z. Li aand P. C. Yew, 'Interprocedural analysis and program restructuring for parallel programs,' Technical Report CSRD-720, University of Illinois, Urbana-Champaign, 1988
  11. Kathryn S. Mckinley, 'A Compiler Optimization Algorithm for Shared-Memory Multiprocessors,' IEEE Transactions on Parallel and Distributed Systems, 9(8) : 769 787, August, 1998 https://doi.org/10.1109/71.706049
  12. R. W. Scheifler. 'An analysis of inline substitution for a structured programming language,' Communications of the ACM, 1977 https://doi.org/10.1145/359810.359830
  13. M. J. Wolfe, 'Optimizing Supercompilers for Supercomputers,' PhD thesis, University of Illinois at Urbana Champaign, 1982
  14. M. J. Wolfe, 'High Performance Compilers for Parallel Computing,' Addison-Wesley Publishing Company, 1995
  15. Hans Zima, 'Supercompilers for Parallel and Vector computers,' ACM press, 1990
  16. 송월봉, 박두순, '중첩루프에서 병렬화를 위한 종속성 제거', 한국정보처리학회논문지, Vol.5, No.8, Aug. 1998
  17. 안준선, 최광훈, 김성훈, 한태숙, 최광무, '병렬화 컴파일러의 소개', 정보과학회지 제14권 제7호, 1996
  18. 이만호, '병렬화를 위한 루프구조의 변환', 정보과학회지 제12권 제5호, 1994
  19. 장유숙, 박두순, '프로시저 호출을 가진 루프에서 병렬성 추출', 한국정보처리학회 춘계 학술발표논문집 제8권 제1호, 2001