AI 하드웨어·소프트웨어 스택
N×N의 FP16(2바이트) 행렬끼리의 곱에서, 두 입력을 한 번씩 읽고 결과를 한 번 쓴다고 하자. 연산 강도(1바이트당 연산 수)는 대략 얼마인가?
- A1/3
- BN/3
- C3N
정답과 해설 보기
정답: B. N/3
연산 수는 2N³, 메모리 읽기/쓰기는 세 행렬로 3N² 요소이며 FP16이므로 6N² 바이트입니다. 연산 강도는 2N³ ÷ 6N² = N/3이고, N=1024이면 약 340이 됩니다. 행렬 곱은 클수록 1바이트당 계산이 늘어나므로 연산기의 성능을 끌어내기 쉬운 처리입니다. 반면 요소별 덧셈 같은 처리는 연산 강도가 1 미만이며 메모리 대역폭으로 속도가 결정됩니다.
- A. N에 비례하여 커집니다.
- B. 정답입니다. 2N³ ÷ 6N² = N/3입니다.
- C. 연산 수를 너무 많이 어림했습니다.