배열접근분석

Array access analysis

컴퓨터 과학에서 배열 접근 분석은 배열의 요소나 부분에 대한 읽기 및 쓰기 접근 패턴을 결정하는 데 사용되는 컴파일러 분석 접근법이다.[1]

과학 프로그램에서 조작되는 주요 데이터 유형은 배열이다.전체 어레이에 대한 정의/사용 분석은 자동 병렬화 및 어레이 민영화와 같은 공격적인 컴파일러 최적화에 불충분하다.어레이 액세스 분석은 어레이의 어떤 부분 또는 어떤 요소가 주어진 코드 세그먼트(기본 블록, 루프 또는 절차 수준에서도)에 의해 액세스되는지에 대한 지식을 얻는 것을 목표로 한다.

배열 접근 분석은 정확성(또는 참조 리스트 기반)과 정확성과 복잡성의 상이한 절충을 위한 요약 방법으로 크게 분류할 수 있다.정확한 방법은 정확하지만 계산과 공간 저장 측면에서 비용이 많이 드는 반면, 요약 방법은 근사하지만 빠르고 경제적으로 계산할 수 있다.

전형적인 정확한 배열 접근 분석에는 선형화와 원자 이미지가 포함된다.요약방법은 추가로 배열 섹션, 트리플트 표기법을 사용한 경계 정규 섹션, 데이터 액세스 설명자 및 배열 영역 분석과 같은 선형 기형적인 방법으로 나눌 수 있다.

참조

  1. ^ Paek, Yunheung; Hoeflinger, Jay; Padua, David (January 2002). "Efficient and precise array access analysis". ACM Transactions on Programming Languages and Systems. 24 (1): 65–109. doi:10.1145/509705.509708.