반응형
요점만 간단히!! 😅
okt.morphs 사용 시에 다음과 같이 아주 드문 경우로 GC overhead limit exceeded이 발생하거나 hang이 발생할 수 있다.
- GC overhead limit exceeded
- 메모리 부족으로 python 내부적으로 gc(garbage collection)을 수행해야 하는데, CPU를 너무 많이(98% 이상) 사용하고 있어서 혹시라도 gc로 메모리를 확보할 수 있는 여지도 만들 수 없는 상황일 때 발생한다😭.
- 근본적인 원인은 메모리를 점진적으로 갉아 먹는 처리에 있기 때문에, 무엇이 그런지 찾는게 우선이 되겠다👍.
- hang
- 상식적으로 무한 루프😱를 생각할 수 있지만, 이 경우에는 논리적인 처리에 그만큼의 시간이 필요하여 오래 걸리는 경우일 가능성이 높다😵.
- 필자의 경우에는 아주 긴~ 단어로 인해 발생하였는데, 한 단어가 띄어쓰기 없이 7500번 이상 반복된 단어를 처리하면서 발생하였다. 예를 들면, "씁씁씁씁씁....." 뭐 이런 거 🤬.
확인해 본 결과, okt.morphs에서 한 단어가 2500자 정도로 이루어진 단어에 대해서는 보유한 장비 기준으로 단어당 약 40 초 정도에 처리가 되었지만, 7500자 정도로 구성된 단어에서는 15분이 지나도 처리가 안되었고, 결국 GC overhead limit exceeded가 발생하였다.
okt.morphs 실행 전에 띄어쓰기 기준으로 단어 길이 등을 체크하고 진행하여 처리하기 어렵거나 처리할 수 없는 데이터에 대한 고려가 필요하다🙂.
반응형
'이런 이슈 in 개발' 카테고리의 다른 글
[AI] SBS Biz 포럼. AI, 당신의 삶 안녕하신가요? 예고편 (22) | 2024.06.13 |
---|---|
[IT] Google Cloud NEXT '24 (64) | 2024.05.20 |
[AI] 생성형 AI(Generative AI) 충격적😱 근황 #2 (10) | 2023.12.13 |
[gRPC] Servicer에서 요청 처리할 때, 주의 사항!! (0) | 2023.11.16 |
[AI] Microsoft Build Korea #1 왜 AI 앱을 개발해야 하는가? (0) | 2023.06.29 |
댓글