$\require{mediawiki-texvc}$

연합인증

연합인증 가입 기관의 연구자들은 소속기관의 인증정보(ID와 암호)를 이용해 다른 대학, 연구기관, 서비스 공급자의 다양한 온라인 자원과 연구 데이터를 이용할 수 있습니다.

이는 여행자가 자국에서 발행 받은 여권으로 세계 각국을 자유롭게 여행할 수 있는 것과 같습니다.

연합인증으로 이용이 가능한 서비스는 NTIS, DataON, Edison, Kafe, Webinar 등이 있습니다.

한번의 인증절차만으로 연합인증 가입 서비스에 추가 로그인 없이 이용이 가능합니다.

다만, 연합인증을 위해서는 최초 1회만 인증 절차가 필요합니다. (회원이 아닐 경우 회원 가입이 필요합니다.)

연합인증 절차는 다음과 같습니다.

최초이용시에는
ScienceON에 로그인 → 연합인증 서비스 접속 → 로그인 (본인 확인 또는 회원가입) → 서비스 이용

그 이후에는
ScienceON 로그인 → 연합인증 서비스 접속 → 서비스 이용

연합인증을 활용하시면 KISTI가 제공하는 다양한 서비스를 편리하게 이용하실 수 있습니다.

데이터 재구성 기법을 이용한 고성능 FFT
High-Performance FFT Using Data Reorganization 원문보기

정보처리학회논문지. The KIPS transactions. Part A. Part A, v.12A no.3 = no.93, 2005년, pp.215 - 222  

박능수 (건국대학교 컴퓨터공학부) ,  최영호 (건국대학교 전기공학과)

초록
AI-Helper 아이콘AI-Helper

대규모 신호처리 변환을 신속하게 처리하기 위해서는 캐시 메모리를 효과적으로 이용하는 것이 중요하다. 대규모 DFT 계산에서는 stride 액세스로 인한 캐시 충돌 적중 실패로 인하여 캐시 성능이 상당히 떨어지게 되고 이로 인해 전체적인 성능이 저하하게 된다. 본 논문에서는 메모리 계층 구조를 고려한 동적 데이터 재배열(Dynamic Data Layout) 방법을 개발하였다. 제시된 방법은 stride를 가지는 계산 단계(computation stage) 사이에 데이터를 동적으로 재구성을 하여 캐시 적중 실패를 줄이는 것이다. 또한 트리 구조 FFT 계산 방법에서 FFT 크기와 데이터 stride 액세스를 기초로 하여 가능한 모든 인수분해 트리 중에서 최소 실행시간을 가지는 최적의 인수 분해트리를 찾아내는 탐색 알고리즘을 개발하였다. 성능 향상을 확인하기 위하여 제시된 방법을 기존의 FFT 알고리즘에 적용하여 Pentium 4, Alpha 21264, $Athlon^{TM}$ 64, UltraSPARC III에서 실험하였다. 실험 결과에 따르면 기존의 FFT 패키지들과 비교하여 제시된 방법을 적용한 FFT가 최대 3.37배의 성능 향상을 얻을 수 있었다.

Abstract AI-Helper 아이콘AI-Helper

The efficient utilization of cache memories is a key factor in achieving high performance for computing large signal transforms. Nonunit stride access in computation of large DFTs causes cache conflict misses, thereby resulting in poor cache performance. It leads to a severe degradation in overall p...

주제어

AI 본문요약
AI-Helper 아이콘 AI-Helper

* AI 자동 식별 결과로 적합하지 않은 문장이 있을 수 있으니, 이용에 유의하시기 바랍니다.

문제 정의

  • 2절 에서는 동적 데이터 재구성 기법을 적용한 FFT 트리에 대하여 논하였다. 그리고 43절에서 동적 데이터 재구성 기법을 사용한 최적화 FFT 트리를 찾는 탐색 알고리즘에 관하여 설명하였다.
  • 하지만, 큰 규모의 DFT 계산에서는 데이터 재구성을 포함한 트리에서 신속한 처리를 할 수가 있다. 따라서 본 탐색 알고리즘은 이러한 데이터 재구성을 고려한 최적 실행시간을 가지는 트리를 제시하게 된다. (그림 6)은 이러한 동적 데이터 재구성과 dynamic programming을 이용한 탐색 알고리즘을 간략하게 나타낸 것이다.
  • 본 논문에서 캐시를 기반으로 하는 메모리 계층구조를 가진 플랫폼 상에서 인수분해된 트리구조 DFT의 성능을 최적 화 시킬 수 있는 효과적인 방법을 개발하였다. 제안된 방법은 캐시 성능을 향상시키기 위해 stride를 가지는 계산 단계 사이에 데이터를 동적으로 데이터 배열을 재구성하는 방법으로 이를 DDL 방법이라 한다.
  • 따라서 트리구조 FFT에서 어느 시점에 데이터를 재배열하여 데이터 액세스 에 변화를 줄지 결정하는 것은 전체적인 성능 향상을 이루 기 위하여 중요하다. 본 논문에서는 데이터 재구성을 포함 하는 최적의 트리구조를 찾기 위하여 dynamic programming 기법을 이용한 탐색 알고리즘을 개발하였다. 성능 향 상을 확인하기 위하여 제시된 DDL 방법과 탐색 알고리즘을 기존의 FFT 알고리즘에 적용하여 FFT 패키지를 개발하여 Alpha 21264, Pentium 4, Athlon™ 64, UltraSPARC U[에서 실험하였다.
  • 따라서 제 시한 알고리즘은 DFT] 크기뿐만 아니라 노드 계산의 데이터 액세스 stride도 고려하기 때문에 그 탐색공간은 기존의 것에 비하여 더 크게 되므로 전수 탐색 (exhaustive search) 으로 찾는 것은 비현실적이다. 본 논문에서는 이를 효과적으로 찾기 위하여 dynamic programming기법을 이용하고자 한다. dynamic programming 기법에서 트리는 bottom-up 방법으로 구현되고, 그 복잡도는 0(^2)가 된다.
  • 본 논문에서는 캐시의 효율을 높이기 위하여 계산 중간에 메모리 안에 데이터를 동적으로 데 구성하는 동적 데이터 재배열(Dynamic Data Layout: DDL) 방법을 제안한다. 일정한 거리를 가지는 비연속적인 데이터 액세스를 연속적인 데이터 액세스로 전환하는 데이터 재구성을 함으로서 응용 프 로그램의 공간적 집약성(spatial locality)을 증가시켜 캐시 적중 실패를 줄일 수 있다.

가설 설정

  • 인수 분해된 DFT의 stride 액세스가 캐시 성능에 미치는 영향을 분석을 하기 위해 먼저 2-level 메모리 계층 구조를 생각하자. C를 캐시 크기 그리고 B를 캐시 라인(cache line) 크기라 가정하자. 최신 컴퓨터가 direct-mapped 또는 작eset-associative 캐시를 가지지만, 동작 분석을 간략하게 하기 위하여 direct-mapped 캐시라 가정흐!.
  • (그림 3)에서 리프 노드의 stride가 커서 str讯e><N\>C가 되는 경우를 생각해보자. 먼저 캐시 크기 C = 32포인트 이고 캐시 라인 B = 4 포인트인 direct-mapped 캐시를 가정하자. 만약 _站 = 4이고 ?由=16라 가정하면, -point DFT의 데이터가 (그림 4)에서처럼 캐시에 사상하게 된다.
  • (그림 5)를 보면, 16*16 데이터 포 인트들은 행 중심 순서(row-major order)에 따라서 배열이 된다. 효과적인 설명을 위하여, 캐시의 크기는 64 포인트이 고 캐시 라인의 크기는 4인 direct-mapped 캐시라 가정을 하자. (그림 5) (a)에서처럼 stride가 16인 16-point DFT를 생각해 보자.
본문요약 정보가 도움이 되었나요?

참고문헌 (14)

  1. A. Ailamaki, D. DeWitt, M. D. Hill, M. Skounakis, 'Weaving Relations for Cache Performance,' in Proc. 27th International Conference Very Large Data Base, 2001 

  2. D. H. Bailey, 'Unfavorable Strides in Cache Memory Systems,' Scientific Programming, 1995 

  3. S. Egner, 'Zur Algorithmischen Zerlegungstheorie Linearer Transformationen mit Symmetire,' Ph.D. Thesis, Universitat Karlsruhe, 1997 

  4. M. Frigo and S. G. Johnson, 'FFTW: An Adaptive Software Architecture for the FFT,' International Conference on Acoustics, Speech, and Signal Processing 1998 (ICASSP 1998), 3, 1998 

  5. K. S. Gatlin and L. Carter, 'Faster FFTs via Architecture Cognizance,' International Conference on Parallel Architectures and Compilation Techniques (PACT2000), Oct., 2000 

  6. G. Haentjens, 'An Investigation of Recursive FFT Implementations,' Master's Thesis, Dept. of Electrical and Computer Engineering, Canegie Mellon University, 2000 

  7. J. Johnson and M. Piischel, 'In Search of the Optimal Walsh-Hadamard Transform,' International Conference on Acoustics, Speech, and Signal Processing 2000 (JCASSP 2000), June, 2000 

  8. M. Linderman and R. Linderman, 'Real-Time STAP Demonstration on an Embedded High-Performance Computer,' National Radar Conference, 1997 

  9. W. Liu and V. K. Prasanna, 'Utilizing the Power of High-Performance Computing,' IEEE Signal Processing, September, 1998 

  10. V. VanLoan, 'Computational Frameworks for the Fast Fourier Transform,' Frontieres in Applied Mathmetics, Vol. 10, SIAM, 1992 

  11. D. Mirkovic, R. Mahassom, and L. Johnsson, 'An Adaptive Software Library for Fast Fourier Transforms,' Proceedings of the 2000 International Conference on Supercomputing, May, 2000 

  12. N. Prak, B. Hong, and V. K. Prasanna, 'Analysis of Memory Hierarchy Performance of Block Data Layout,' Proceedings of the 2002 International Conference on Parallel Processing (JCPP 2002), Aug., 2002 

  13. N. Prak and V. K. Prasanna, 'Cache Conscious Walsh-Hadamard Transform,' International Conference on Acoustics, Speech, and Signal Processing 2001 (ICASSP 2001), May, 2001 

  14. R. Tolimieri, M. An, and C. Lu, 'Algorithms for Discrete Fourier Transforms and Convolution,' Springer, 1997 

저자의 다른 논문 :

관련 콘텐츠

이 논문과 함께 이용한 콘텐츠

섹션별 컨텐츠 바로가기

AI-Helper ※ AI-Helper는 오픈소스 모델을 사용합니다.

AI-Helper 아이콘
AI-Helper
안녕하세요, AI-Helper입니다. 좌측 "선택된 텍스트"에서 텍스트를 선택하여 요약, 번역, 용어설명을 실행하세요.
※ AI-Helper는 부적절한 답변을 할 수 있습니다.

선택된 텍스트

맨위로