Jupyter notebook 블록이 계속 [*]만 보여줄 때

Soogyung Gwon·2026년 5월 30일

구름을잡아라

목록 보기
70/76

Jupyter Notebook에서 셀 왼쪽에 [*]가 계속 나오는 이유

Jupyter Notebook에서 셀을 실행했는데 왼쪽에 실행 번호 대신

[*]

가 계속 표시된다면, 해당 셀이 아직 실행 중이거나 실행이 끝나지 않았다는 뜻이다.

정상적으로 실행이 완료되면:

[1]
[2]
[3]

처럼 실행 번호가 표시돼.


주요 원인

1. 코드 실행에 시간이 오래 걸리는 경우

가장 흔한 원인으로

예를 들어:

  • 대용량 파일 읽기
  • 모델 다운로드
  • 모델 로딩
  • 파인튜닝 시작
  • 대규모 데이터 처리

같은 작업은 몇 분 이상 걸릴 수도 있다.

model = AutoModelForCausalLM.from_pretrained(...)

같은 코드도 모델 크기에 따라 꽤 오래 걸릴 수 있다.


2. 무한 루프에 빠진 경우

코드가 끝날 조건 없이 계속 실행되는 경우

예:

while True:
    pass

이 경우 셀은 영원히 종료되지 않고 [*] 상태가 유지된다.


3. GPU 메모리 부족(CUDA Out Of Memory) 이후 멈춘 경우

LLM 학습 시 자주 발생하는 문제다.

예:

CUDA out of memory

에러가 발생한 뒤 PyTorch가 정상적으로 복구되지 못하면:

  • 셀은 계속 실행 중으로 보임
  • 출력도 없음
  • GPU 메모리도 반환되지 않음

이런 경우 Kernel Restart가 필요한 경우가 많다.


4. 출력이 너무 많은 경우

예:

for i in range(1000000):
    print(i)

Notebook이 엄청난 양의 출력을 처리하느라 멈춘 것처럼 보일 수 있다.


5. 사용자 입력을 기다리는 경우

예:

input()

이 코드는 사용자가 값을 입력할 때까지 계속 대기

따라서 셀은 [*] 상태를 유지하게 된다.


LLM 학습 중 자주 발생하는 상황

모델 로딩 중

model = AutoModelForCausalLM.from_pretrained(...)

8B, 70B 같은 대형 모델은:

  • 다운로드
  • VRAM 할당
  • 양자화 처리

등으로 인해 상당한 시간이 걸릴 수 있다.


파인튜닝 시작 직후

trainer.train()

실행 후:

  • 데이터셋 전처리
  • 모델 준비
  • GPU 메모리 할당

과정 때문에 한동안 출력이 없을 수 있다.


CUDA OOM 이후 멈춤

아래와 같은 에러가 발생한 뒤:

CUDA out of memory

GPU 컨텍스트가 꼬이면 계속 [*] 상태로 남는 경우가 있다.

이때는 보통:

import os
os.kill(os.getpid(), 9)

또는

  • Kernel → Restart Kernel

을 수행하는 것이 가장 확실한 해결 방법이다.


현재 상태 확인 방법

GPU 사용량 확인

터미널에서:

nvidia-smi

실행.

확인할 내용:

  • GPU Utilization
  • VRAM 사용량

만약:

  • GPU 사용률 0%
  • VRAM은 거의 가득 참

이라면 프로세스가 꼬였을 가능성이 높다.


해결 방법

실행 중인 셀 강제 중지

메뉴에서:

Kernel → Interrupt Kernel

선택.


커널 재시작

메뉴에서:

Kernel → Restart Kernel

선택.


실행 상태 표시 의미

표시의미
[ ]아직 실행하지 않음
[*]현재 실행 중
[1], [2]실행 완료
Dead Kernel커널이 종료됨

profile
오랜시간 망설였던 코딩을 다시 해보려고 노력하고 있는 사람

0개의 댓글