학부 컴퓨터 아키텍처 수업, AI 가속기 메모리 병목 분석 프로젝트
학부 컴퓨터 아키텍처 수업에서 AI 추론 가속 구조를 분석하는 프로젝트를 했습니다. 행렬 곱셈 연산을 GPU로 돌렸을 때 연산 자체보다 메모리 대역폭이 병목이 된다는 걸 직접 측정으로 확인했습니다. Near Memory 컴퓨팅의 핵심은 연산 소자를 메모리에 가깝게 배치해 데이터 이동 비용을 줄이는 것이라는 걸 그때 이해했습니다. 같은 알고리즘이라도 메모리 접근 패턴에 따라 성능 차이가 몇 배나 났습니다. 인터페이스 설계에서 대역폭·지연·에너지 세 가지 트레이드오프가 아키텍처 선택을 결정한다는 것도 배웠습니다.
AI 가속 구조를 이해하려면 알고리즘이 어떻게 하드웨어 자원을 쓰는지를 함께 봐야 한다는 걸 알았습니다. 이후 저는 성능 이슈를 볼 때 연산량보다 메모리 접근을 먼저 확인하는 시각이 생겼습니다. 병목은 보통 예상치 못한 곳에 있다는 걸 그 경험에서 배웠습니다.