AI 하드웨어·소프트웨어 스택

추론에서 배치 크기를 지나치게 키웠을 때의 단점으로 올바른 것은 무엇인가?

  1. A모을 입력이 갖춰지기를 기다리는 시간과 1회 처리 시간이 늘어 하나의 요청에 대한 응답이 느려지고 메모리도 많이 사용한다
  2. B가중치 값이 바뀌어 답이 부정확해진다
  3. C연산 강도가 떨어져 효율이 나빠진다
정답과 해설 보기

정답: A. 모을 입력이 갖춰지기를 기다리는 시간과 1회 처리 시간이 늘어 하나의 요청에 대한 응답이 느려지고 메모리도 많이 사용한다

배치를 키우면 전체 처리량(스루풋)은 올라가지만, 다른 입력이 모일 때까지 기다리거나 모은 만큼 1회 계산이 길어지므로 하나의 요청이 돌아오기까지의 시간(레이턴시)은 길어집니다. 중간 결과와 KV 캐시 메모리도 배치에 비례하여 늘어납니다. 대화형 애플리케이션에서는 응답 속도 목표를 지킬 수 있는 범위에서 배치를 키웁니다.

  • A. 정답입니다. 처리량과 응답 속도의 균형이 필요합니다.
  • B. 가중치는 바뀌지 않습니다.
  • C. 연산 강도는 오히려 올라갑니다.
이 분야 연습하기 분야로 돌아가기

AI 하드웨어·소프트웨어 스택의 다른 문제

  1. 대규모 언어 모델의 추론은 입력 문장을 한꺼번에 처리하는 단계(프리필)와 토큰을 하나씩 출력으로 만드는 단계(디코드)로 나뉜다. 각각의 성능을 주로 결정하는 것의 조합으로 올바른 것은 무엇인가(배치가 작은 경우)?
  2. 대규모 언어 모델의 추론에서 사용되는 KV 캐시의 역할로 올바른 것은 무엇인가?
  3. 대규모 언어 모델의 추론에서 긴 문장이나 큰 배치를 다룰 때 문제가 되기 쉬운 것은 무엇인가?
  4. FP16으로 약 14 GB의 가중치를 가진 모델을 메모리 대역폭 2 TB/s의 GPU에서 배치 크기 1로 디코드한다. 토큰 하나를 생성하는 데 걸리는 시간의 하한에 가장 가까운 것은 무엇인가?
  5. Transformer 셀프 어텐션의 계산량은 입력 시퀀스 길이 n에 대해 어떻게 늘어나는가?