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

AI 소프트웨어 스택을 사용자에 가까운 위쪽 층에서 하드웨어에 가까운 아래쪽 층으로 나열한 것으로 올바른 것은 무엇인가?

  1. A프레임워크(PyTorch 등) → 컴파일러와 런타임 → 연산 라이브러리(cuBLAS 등) → 드라이버 → 하드웨어
  2. B하드웨어 → 프레임워크 → 드라이버 → 라이브러리
  3. C드라이버 → 프레임워크 → 하드웨어 → 컴파일러
정답과 해설 보기

정답: A. 프레임워크(PyTorch 등) → 컴파일러와 런타임 → 연산 라이브러리(cuBLAS 등) → 드라이버 → 하드웨어

사용자는 PyTorch 등의 프레임워크로 모델을 작성합니다. 프레임워크와 AI 컴파일러·런타임이 계산 그래프를 최적화하고, 행렬 곱이나 합성곱 등은 고도로 최적화된 연산 라이브러리의 커널을 호출합니다. 라이브러리는 드라이버를 통해 GPU나 NPU에 명령을 보냅니다. 새로운 하드웨어가 널리 쓰이려면 연산기의 성능뿐 아니라 이렇게 층층이 쌓인 소프트웨어가 갖추어져 있는 것이 필수적입니다.

  • A. 정답입니다. 각 층이 아래 층의 차이를 감춥니다.
  • B. 순서가 맞지 않습니다.
  • C. 순서가 맞지 않습니다.
이 분야 연습하기 분야로 돌아가기

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

  1. 신경망의 '학습'과 '추론'의 차이로 올바른 것은 무엇인가?
  2. 학습에 필요한 메모리가 같은 모델의 추론보다 훨씬 커지는 이유로 해당하지 않는 것은 무엇인가?
  3. 파라미터 수 70억(7B)의 모델을 가중치, 기울기, Adam의 두 상태를 모두 FP32(4바이트)로 가지고 학습한다. 활성화를 제외하고 필요한 메모리에 가장 가까운 것은 무엇인가?
  4. 파라미터 수 70억(7B)의 모델 가중치를 FP16(2바이트)으로 가지면, 가중치 메모리는 대략 얼마인가?
  5. 앞 문제의 7B 모델을 FP16(약 14 GB)에서 4비트 정수(INT4)로 양자화하면, 가중치 메모리는 대략 얼마가 되는가?