본문 바로가기
시스템 반도체/컴퓨터 구조 (RISC-V)

컴퓨터 구조 AMAT ( Average Memory Access Time, cache 성능 평가 )

by 전컴반 2022. 3. 23.
반응형

cache의 성능을 어떻게 평가할 것인가에 대한 지표가 AMAT이다.

cache는 instruction과 Data가 존재하는데 cache에 cpu가 찾는 데이터가 있다면 이걸 HIT이라고 하고 cache에 없다면 miss라고 한다. 없다면 메인 메모리로부터 가져와야 하는데 이걸 miss penalty라고 한다. 왜 penalty 냐면 메인 메모리의 접근은 오래 걸리기 때문이다.

 

AMAT의 계산을 아래와 같이 이루어진다. 

 

AMAT = Hit time + Miss rate * Miss penalty

 

 

 

Hit time = cpu로부터 cache캐시에 있는 정보를 가져오는 데 걸리는 시간이다

Miss rate = cache에서 메인 메모리로 접근하는 비율을 말한다. 다시 말해, cpu에서 cache에 명령을 보냈을 때, 몇 번 메인 메모리에 접근하냐는 비율이다.

Miss penalty = cache에서 메인 메모리에 있는 데이터를 가져오는 데 걸리는 시간이다.

 

예를 들어보자

clock (1 GHz == 1ns)

Hit time = 1 cycles

Miss penalty = 20 cycles

Miss rate = 5%  (다른 말로 Hit rate =  95%)

 

AMAT = 1 + 0.05 * 20 = 2ns

 

조금 다르게 계산하면, 95%가 1 cycles가 걸리고 나머지 5%는 앞에서 1 cycles가 걸리고 메인 메모리 접근에 20 cycles가 걸린다고 보면 아래와 같이 표현할 수 있다.

 

AMAT

= 95% * 1 cycles + 5% * (1 cycles + 20 cycles)

= 100% * 1 cycles + 5% * 20 cycles(=1 cycles)

= 100% * 1 cycles + 1 cycles = 2 cycles 

 

즉, 메인 메모리에 접근하는데 평균적으로 2 cycles가 걸린다는 의미다. 파이프라인을 그려보면 아래와 같다.

 

 

너무 많이 nop동작을 한다. 어떻게 줄일 수 있을지에 대해선 다음 포스팅에 올리겠다.

 

 

반응형

댓글