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

추론과 학습의 차이, 양자화, 연산 강도와 루프라인 모델, 시스톨릭 어레이, 연산자 융합, 타일링 등 AI 하드웨어와 소프트웨어를 객관식 문제로 학습합니다.

—내 정답률
0 / 50푼 문제 수
이 분야 연습하기이 분야의 모든 문제를 무작위 순서로 풀어요 취약 문제최근에 틀린 문제만 다시 풀어요

AI 하드웨어·소프트웨어 스택: 핵심 정리

신경망 연산의 대부분은 큰 행렬의 곱셈-누산입니다. 그래서 AI 하드웨어는 많은 곱셈-누산 유닛을 늘어놓고, 메모리 트래픽을 줄이기 위해 데이터를 최대한 재사용하도록 설계됩니다. 학습은 추론보다 훨씬 많은 연산과 메모리를 필요로 하며, 더 높은 수치 정밀도도 요구합니다.

성능은 연산 유닛의 수만으로 정해지지 않습니다. 데이터 1바이트당 연산량인 연산 강도(arithmetic intensity)와 루프라인 모델을 이용하면 워크로드가 연산 성능과 메모리 대역폭 중 어느 쪽에 제한되는지 알 수 있습니다. 이 주제는 AI 컴파일러와 추론 런타임이 양자화, 연산자 융합, 타일링으로 하드웨어 성능을 끌어내는 방법도 다룹니다.

AI 하드웨어·소프트웨어 스택 전체 문제 (50)

  1. 신경망의 '학습'과 '추론'의 차이로 올바른 것은 무엇인가?
  2. 학습에 필요한 메모리가 같은 모델의 추론보다 훨씬 커지는 이유로 해당하지 않는 것은 무엇인가?
  3. 파라미터 수 70억(7B)의 모델을 가중치, 기울기, Adam의 두 상태를 모두 FP32(4바이트)로 가지고 학습한다. 활성화를 제외하고 필요한 메모리에 가장 가까운 것은 무엇인가?
  4. 파라미터 수 70억(7B)의 모델 가중치를 FP16(2바이트)으로 가지면, 가중치 메모리는 대략 얼마인가?
  5. 앞 문제의 7B 모델을 FP16(약 14 GB)에서 4비트 정수(INT4)로 양자화하면, 가중치 메모리는 대략 얼마가 되는가?
  6. M×K 행렬과 K×N 행렬의 곱을 계산할 때의 부동소수점 연산 횟수(곱셈과 덧셈을 따로 센다)는 대략 얼마인가?
  7. N×N의 FP16(2바이트) 행렬끼리의 곱에서, 두 입력을 한 번씩 읽고 결과를 한 번 쓴다고 하자. 연산 강도(1바이트당 연산 수)는 대략 얼마인가?
  8. 피크 성능 100 TFLOPS, 메모리 대역폭 2 TB/s의 가속기에서 연산 강도가 10 FLOP/바이트인 처리를 실행한다. Roofline 모델로 어림한 달성 가능한 성능은 얼마인가?
  9. 입력이 하나뿐일 때(배치 크기 1), 완전 연결층의 계산(가중치 행렬과 벡터의 곱)이 메모리 율속이 되기 쉬운 이유로 올바른 것은 무엇인가?
  10. 추론에서 배치 크기(한꺼번에 처리하는 입력의 수)를 키우면 전체 처리 효율이 올라가기 쉬운 이유는 무엇인가?
  11. 추론에서 배치 크기를 지나치게 키웠을 때의 단점으로 올바른 것은 무엇인가?
  12. 대규모 언어 모델의 추론은 입력 문장을 한꺼번에 처리하는 단계(프리필)와 토큰을 하나씩 출력으로 만드는 단계(디코드)로 나뉜다. 각각의 성능을 주로 결정하는 것의 조합으로 올바른 것은 무엇인가(배치가 작은 경우)?
  13. 대규모 언어 모델의 추론에서 사용되는 KV 캐시의 역할로 올바른 것은 무엇인가?
  14. 대규모 언어 모델의 추론에서 긴 문장이나 큰 배치를 다룰 때 문제가 되기 쉬운 것은 무엇인가?
  15. FP16으로 약 14 GB의 가중치를 가진 모델을 메모리 대역폭 2 TB/s의 GPU에서 배치 크기 1로 디코드한다. 토큰 하나를 생성하는 데 걸리는 시간의 하한에 가장 가까운 것은 무엇인가?
  16. Transformer 셀프 어텐션의 계산량은 입력 시퀀스 길이 n에 대해 어떻게 늘어나는가?
  17. FlashAttention 등 고속 어텐션 구현의 주된 발상으로 올바른 것은 무엇인가?
  18. AI 계산에서 사용되는 '연산 융합(오퍼레이터 퓨전)'의 주된 목적은 무엇인가?
  19. 행렬 곱의 결과에 바이어스를 더하고 ReLU를 통과시키는 처리를 3개의 별개 커널에서 하나로 융합했다. 주로 줄어드는 것은 무엇인가?
  20. XLA, TVM, PyTorch의 컴파일 기능과 같은 AI 컴파일러가 수행하는 주된 처리로 올바른 것은 무엇인가?
  21. AI 프레임워크나 컴파일러에서 사용되는 '계산 그래프'의 설명으로 올바른 것은 무엇인가?
  22. ONNX의 설명으로 올바른 것은 무엇인가?
  23. TensorRT나 ONNX Runtime 같은 추론 런타임이 학습용 프레임워크로 그대로 추론하는 것보다 빠를 수 있는 주된 이유는 무엇인가?
  24. ReLU나 레이어 정규화와 같은 요소별 연산이 AI 계산 중에서 연산 횟수에 비해 시간이 걸리기 쉬운 이유로 올바른 것은 무엇인가?
  25. 합성곱 신경망에서 합성곱 계산을 im2col 등의 방법으로 행렬 곱으로 변환하여 계산하는 경우가 있는 이유로 올바른 것은 무엇인가?
  26. 학습 후 양자화(PTQ)와 양자화 인지 학습(QAT)의 차이로 올바른 것은 무엇인가?
  27. 활성화를 INT8로 양자화하는 학습 후 양자화에서 수행하는 '캘리브레이션'의 목적으로 올바른 것은 무엇인가?
  28. 대규모 언어 모델의 양자화에서 극히 일부 채널에 큰 이상치가 있으면 정확도가 떨어지기 쉽다. 대책으로 일반적인 것은 무엇인가?
  29. 대규모 언어 모델의 추론에서 활성화는 FP16 그대로 두고 가중치만 4비트로 하는(W4A16) 양자화가 디코드를 특히 빠르게 하는 이유로 올바른 것은 무엇인가?
  30. 신경망의 프루닝(가지치기)에 대해 올바른 것은 무엇인가?
  31. GPU의 행렬 연산기가 지원하는 '2:4 구조적 희소성(스파스)'의 설명으로 올바른 것은 무엇인가?
  32. 지식 증류(날리지 디스틸레이션)의 설명으로 올바른 것은 무엇인가?
  33. 여러 GPU로 학습하는 데이터 병렬의 설명으로 올바른 것은 무엇인가?
  34. GPU 1장의 메모리에 들어가지 않는 큰 층의 행렬 곱을 여러 GPU로 나누어 계산하는 텐서 병렬의 설명으로 올바른 것은 무엇인가?
  35. 모델의 층을 순서대로 여러 GPU에 나누어 담당시키는 파이프라인 병렬에서, 배치를 작은 마이크로배치로 나누어 흘려 보내는 이유로 올바른 것은 무엇인가?
  36. 분산 학습에서 사용되는 올리듀스(All-Reduce) 통신의 역할로 올바른 것은 무엇인가?
  37. 학습에서 사용되는 기울기 체크포인팅(활성화 재계산)의 설명으로 올바른 것은 무엇인가?
  38. AI용 가속기에서 사용되는 시스톨릭 어레이가 행렬 곱을 효율적으로 계산할 수 있는 주된 이유는 무엇인가?
  39. AI용 가속기가 칩 위에 큰 SRAM(수십~수백 MB)을 탑재하는 경우가 있는 주된 이유는 무엇인가?
  40. AI 가속기의 데이터플로 방식 중 하나인 '웨이트 스테이셔너리(가중치 고정)'의 설명으로 올바른 것은 무엇인가?
  41. AI 추론을 클라우드 서버가 아니라 스마트폰 같은 단말 안(엣지)에서 수행할 때의 이점으로 해당하지 않는 것은 무엇인가?
  42. 스마트폰 SoC에 탑재되는 NPU가 AI 추론에서 CPU보다 전력 효율이 높은 주된 이유는 무엇인가?
  43. AI 가속기의 성능으로 제시되는 '○○ TOPS'라는 값에 대해 주의할 점으로 올바른 것은 무엇인가?
  44. 대규모 학습의 효율을 나타내는 지표인 MFU(Model FLOPs Utilization)의 설명으로 올바른 것은 무엇인가?
  45. Transformer 모델의 학습에 필요한 연산 수의 기준으로, 파라미터 수를 N, 학습에 사용하는 토큰 수를 D라 할 때 자주 쓰이는 근사는 무엇인가?
  46. 파라미터 수 N의 대규모 언어 모델에서 토큰 1개를 생성하는 추론에 필요한 연산 수의 기준은 무엇인가(어텐션 부분 제외)?
  47. 소프트맥스 함수 exp(xi)/Σexp(xj)를 계산할 때 각 xi에서 최댓값을 뺀 뒤 계산하는 경우가 많은 이유로 올바른 것은 무엇인가?
  48. 대규모 언어 모델의 추론을 빠르게 하는 '투기적 디코딩'의 발상으로 올바른 것은 무엇인가?
  49. 추천 시스템 모델 등에서 사용되는 큰 임베딩 테이블의 조회가 AI 하드웨어에서 다루기 어려운 이유로 올바른 것은 무엇인가?
  50. AI 소프트웨어 스택을 사용자에 가까운 위쪽 층에서 하드웨어에 가까운 아래쪽 층으로 나열한 것으로 올바른 것은 무엇인가?

컴퓨터 시스템의 다른 분야