# oom

8개의 포스트
post-thumbnail

Pytorch에서 memory사용 Guide

![사진: Unsplash의Santiago Lacarta ](https://velog.velcdn.com/images/jminj/post/7b1c0dfe-cc36-4005-b5d2-e7e0c73e54a8/image.jpg) DNN 학습 step별 memory 사용 상태 steps model loading forward pass backward ass optimizer step run next it

5일 전
·
0개의 댓글
·
post-thumbnail

대용량 파일 다운로드 out of memory

대용량 파일을 제공하는 서비스를 운영하다가 문제가 발생했다. 브라우저에서 운영서버로부터 1gb 정도 크기의 zip파일을 다운받으려고 하면 에러가 발생했는데, 로컬환경에서는 이러한 문제가 발생하지 않았다. 운영서버는 도커를 사용해 배포하고 있었고, 로컬 개발환경은 데이터베이스만 도커를 사용하고 애플리케이션은 인텔리제이에서 실행시켰다. 서버에서 에러로그를 확인했는데, response 객체에 파일 stream을 쓰는도중 에러가 발생했다. runcatching 으로 실행하고 발생하는 에러를 커스텀로그 로 찍고있었다. (여기서부터 문제) 다운로드가 오래걸려서 timeout 이 발생하나? 디스크 용량이 부족한가? 파일이 크니까 메모리가 부족한가? 정도의 예상되는 문제점들이 있었고, oom은 관련로그가 당연히 찍힐거라 생각하고 가능성을 지웠다. 특히, 컨테이너에 할당한 메모리가 8gb였기 때문에 더욱 oom의 가능성은 없을거라 확신했다. 타

2023년 9월 11일
·
0개의 댓글
·
post-thumbnail

Nuxt.js - Memory Leakage

소개 > Out of memory(OOM)란? Javascript는 가비지 컬렉션(garbage collection a.k.a GC)을 통해 메모리를 관리하고 이를 통해 사용자가 메모리 영역에 대하여 관심을 가지지 않도록 하지만, Memory leakage가 발생하는 경우는 다릅니다. 어떠한 이유로 할당된 메모리 영역이 Clean up되지 않고 잔여하게 되면서 메모리 용량 부족 상태를 만들고 이를 Out of memory 라고 말합니다. Nuxt.js로 개발한 서비스에서 OOM 문제가 발생했습니다. FE 쪽이 아니라 Server 측에서 발생하는 Memory Leakage를 확인하기 위한 내용 정리와 해당 이슈를 수정해 나가는 과정을 정리하려고 합니다. 서버 Inspecter 동작 방법 Nuxt.js로 개발한 프로젝트를 빌드하고, 아래의 스크립트로 동작시키면 빌드된 패키지 기준으로 Nuxt.js. 서버를 구동합니다. `node --inspect node_modu

2023년 6월 20일
·
0개의 댓글
·
post-thumbnail

Java Out of Memory, 99% Memory In Use

서론 어느 날 갑자기 운영 중인 서버가 멈췄다. 다운 타임은 약 40분 정도 였고, 해당 건으로 많은 CS가 들어왔다. 심각한건 알아차리지 못했다. 변명을 해보자면 일단 휴가 중으로 한국이 아닌 일본에서 여행 중이긴 했다. 조치는 다른 개발자분이 인스턴스를 늘려주었고, 메모리 문제가 생긴 인스턴스들을 타겟그룹에서 제외함으로서 급한 불을 껐다. 몇 일 후 휴가에서 복귀했고 해당 내용을 살펴보았다. 사실 여행 중이든 아니었든 서버 장애에 대한 알림 시스템이 아쉽게 되어 있었다. 물론 AWS SNS을 통해 계속 보내주는 장애 관련 메일을 무시해왔던 안일함도 분명 있었다. 해당 이슈가 왜 발생했는지 디버깅하는 과정부터 후속 조치를 어떻게 했는지에 대해 간단히 적어볼까 한다. JVM Heap 메모리 신입 때(2년전에..) 강남에 있는 코딩 부트캠프 회사 인턴 면접을 본 적이 있다. CTO님의 무한 자료구조 꼬리물기 질문을 버텨낸 후 당시 내가 쓴 이력서를 바탕으로 면

2023년 4월 4일
·
0개의 댓글
·
post-thumbnail

Kubernetes API server OOM 장애기록

1. Overview 쿠버네티스 기반 AI Platform 개발을 마치고 운영하던 도중 kube-apiserver의 메모리 사용량이 지속적으로 증가하면서 Master node가 down 되는 현상이 반복되었습니다. 문제를 해결하기 위해 시도한 내용을 기록합니다. 회사 보안 상 문제 화면을 외부로 가져오지 못해 비슷하게 구현해 본 글에서 보이는 그림은 정확하지 않을 수 있습니다. 현재 클러스터의 버전 정보는 다음과 같습니다. kubernetes - v1.18.16 kube-apiserver,kube-scheduler,kube-proy - v1.18.16 etcd - v3.4.3 CoreDNS v1.6.7 kubeflow v1.2 물리적인 구성은 Master Node 3대, Worker Node 3대로 구성되어있으며 Master Node 앞에 LoadBalancer를 배치에 kube-apiserver로 오는 request를 분산해서 받고 있

2022년 2월 8일
·
0개의 댓글
·
post-thumbnail

[Android] Hello👋, Out Of Memory

Hello👋, Out Of Memory 🏃‍♂️ Android Memory 이미지 로더 라이브러리를 사용하지 않은 상태에서 많은 이미지를 사용하거나 고해상도 이미지를 이미지뷰에 로드해야하는 경우 메모리 부족으로 OOM이 발생하게 된다. 요즘 나오는 스마트폰은 굉장히 많은 메모리를 가지고 태어나는데 왜 이정도도 못 버티지(?) 라는 생각을 한다면, 안드로이드는 앱 내에서 사용할 수 있는 힙 메모리가 정해져있기 때문이다. Android의 메모리 모델은 운영체제 버전에 따라 두가지로 나뉘게 된다. Dalvik heap 영역 : java 객체를 저장하는 메모리 External 영역 : native heap의 일종으로 네이티브의 비트맵 객체를 저장하는 메모리

2021년 5월 28일
·
0개의 댓글
·

List.subList()

OutOfMemory 에러가 나와 살펴보니 필요없어진 리스트를 자를 때 subList 를 했는데 해당 함수에서 리턴되는 리스트는 View 로서 원본, 반환된 리스트를 수정해도 다른 리스트에 영향을 끼친다고 한다. 특정 범위를 제거하는 관용구. > "https://developer.android.com/reference/java/util/ArrayList#subList(int,%20int)"

2020년 11월 5일
·
0개의 댓글
·
post-thumbnail

JVM Cannot allocate memory 에러

스프링부트를 이용해서 어플리케이션을 개발하는 중... 잘만되던 build가 되지 않고 >OpenJDK 64-Bit Server VM warning: INFO: os::commit_memory(0x00007f3a357c0000, 65536, 1) failed; error='메모리를 할당할 수 없습니다' (errno=12) 이렇게 갑자기 jvm쪽에서 oom이 발생한 듯한 에러가 나왔다. 리눅스... 한줄 치면 한줄 에러나오는 수준 원인 시스템의 물리적 RAM 또는 스왑 공간이 부족. 프로세스 크기 제한에 도달. 해결 방법 시스템의 메모리 로드 줄이기. 물리적 메모리 또는 스왑 공간 늘리기. 스왑 백킹 저장소가 가득 차 있는지 확인. 64 비트 OS에서 64 비트 Java

2020년 5월 4일
·
2개의 댓글
·