희소 행렬 연산의 성능 최적화에 관한 연구
暂无分享,去创建一个
계산 과학을 사용하는 응용 분야는 공학, 물리, 화학, 생명 과학에서 경제학까지 다양하다. 계산 과학에 사용되는 많은 알고리즘들은 행렬 연산을 포함하고 있으며 이 행렬은 크기가 크고 대부분의 원소가 0값을 갖는 희소 행렬일 경우가 많다. 본 논문에서는 희소 행렬의 연산 중, 희소 행렬 A 와 밀집 벡터 x, y에 대하여 y←y+Ax와 y←y+A^T Ax 의 두 가지 연산에 대한 계산 속도 개선 방법으로서 레지스터 재사용을 높이는 레지스터 블록화와 캐쉬 미스를 줄이기 위한 캐쉬 최적화 방법을 제안하며 또한 희소 행렬의 특성과 target 컴퓨터의 구조에 따라 정해지는 레지스터 블록 크기를 결정하는 방법을 설명한다. Preliminary 결과로 이 방법을 Pentium Ⅲ system 상에서 실험한 결과를 보이는데 y←y+Ax 의 연산에 대하여는 2.5배, y←y+A^T Ax 의 연산에 대하여는 3.5 배까지의 성능 개선을 이룰 수 있다.