Skip to content

기글하드웨어기글하드웨어

인터넷 / 소프트웨어 : 윈도우즈, 리눅스, 기타 운영체제, 각종 어플리케이션, 프로그램, 소프트웨어, 인터넷, 인터넷 서비스에 대한 이야기, 소식, 테스트, 정보를 올리는 게시판입니다.

Extra Form

어떤 상황이었는지 간략하게 설명하면 다음과 같습니다.

 

1. A라는 데이터가 있으며 용량은 1GB.

2. A를 가지고 Python으로 연산을 수행해 B라는 형태로 재가공해서 저장하려고 함.

3. 이때 B의 형태로 A를 연산한 결과물이 하나씩 램에 쌓임.

4. 계산하고 있던 서버가 서서히 멈추더니 갑자기 접속이 끊김.

5. 계산해보니 서버컴이 가진 램이 16GB인데 B를 저장할 경우 20GB가 필요함.

6. 아마도 메모리가 부족해서 컴이 뻗은 것 같음....

 

서버 OS는 우분투이고 도커에서 돌렸습니다.

내일 가서 재부팅해야 할 거 같습니다.

 

이런 상황에서는 암만 기다려도 코드 실행이 안 끝나는 거 같더라구요.

저 상황에서 컴퓨터 안에서는 어떤 일이 일어나는지, 해결책이 어떤 게 좋을지 알고자 질문드립니다.

 

1. 이 상황에서 내버려두면 언젠가 코드 실행이 끝나는 건가요 아니면 계속 저 상태에 남는 건가요?

2. 프로세스(이 경우 Python)의 램 사용량이 너무 높을 때 해당 프로세스를 강제로 종료할 수 있는 방법이 있을까요? 코드 실행에 실패하면 다시 돌리면 되니까 뻗는 거라도 방지하고 싶습니다.



  • profile
    슬렌네터      Human is just the biological boot loader for A.I. 2021.12.01 00:52
    또다른 평행세계인건지 PTSD 오는 내용이네요...

    비슷한 상황의 어느 회사의 어느 부서에 일이였는데

    전산 담당이라서 개입할 이유도 없고 개입햇다가 괜히 불똥이 날라올까봐 걍 버로우 모드로 있었는데

    "일단 뭔가 돌아가니까 냅둬보는게 낫지 않을까 하는 생각이 드는데요?"

    라고 해서 냅둿더니 일단 작업이 완료가 되긴 햇습니다

    그때 데이터 용량이 830메가 짜리였는데, 램 용량이 기억 안나네요.

    3주 걸렸습니다... 파이썬 램 사용량 진짜 미치게 쳐먹긴했는데... 어짜피 그 프로젝트는 해야 하기에 걍 냅두는게 맞긴 하지만, PM과 사장 입장에선 전기세 ㅂㄷㅂㄷ 시간낭비 ㅂㄷㅂㄷ 해서 노발대발 했던 기억이 나네요
  • ?
    CyBerry 2021.12.01 00:58
    와.. 담부턴 코드 돌리기 전에 꼭 체크해봐야겠네요
    다행히 방금 계산 끝나서 서버 접속되고 있습니다.
    당장 내일 모래까지 결과 내야 하는데 3주 걸린다 생각하면 끔찍합니다..
  • profile
    슬렌네터      Human is just the biological boot loader for A.I. 2021.12.01 01:30
    금방 끝나셧네요!?

    하긴 몇년전과 지금 최신의 하드웨어의 스펙 차이면 뭐 납득되네요
  • ?
    title: 부장님Neons 2021.12.01 01:33
    리눅스 커널은 메모리가 부족할 때 메모리 많이 먹는 프로세스를 강제로 종료시켜서 옥체를 보존하시도록 되어있습니다. 만약 컴이 완전히 뻗어버렸다면 그건 메모리가 아니라 CPU/네트워크/디스크 용량 문제일 가능성이 더 높다고 봐야겠죠. 이를테면: 1. CPU가 너무 바빠 연결 요청을 처리하지 못한다. 2. CPU 쿨링이 부족해 하드웨어적으로 꺼졌다. 3. 네트워크를 너무 많이 써서 연결용 패킷이 자꾸 드랍된다. 4. 디스크 남은용량이 0바이트가 되는 바람에 연결 요청을 처리하려다 디스크 쓰기를 못해서 실패한다.

    일단 코드를 고치지 않고 시도할 수 있는 방법은 다음과 같습니다: 1. 메모리를 늘린다... 2. 스왑파일을 추가한다...
  • profile
    슬렌네터      Human is just the biological boot loader for A.I. 2021.12.01 03:05
    어? 그럼 저의 경우는 윈도우서버 운영체제였던거라서 간신히 살아서 처리되어졌던 거군요
  • ?
    CyBerry 2021.12.01 11:13
    애석하게도 둘다 블가능하기에 코드를 고쳐야겠네요..
    게다가 생각보다 고려할 게 많네요 ㅠㅠ..
    감사합니다.
  • profile
    title: 부장님오노데라코사키      おのでらちゃんマジ天使! 2021.12.01 09:41
    1. 스왑 메모리를 사용해서 끝날수도 있고 헹 걸려서 그 상태에서 멈춰있거나 크래시나서 꺼질수도 있습니다.
    2. Neons님이 말해주셨지만 리눅스 커널에는 OOM(Out Of Memory) Killer가 있습니다. 강제로 호출하는 방법은 있긴 하지만 실제로 해본적이 없어서 잘 모르겠네요.
    https://unix.stackexchange.com/questions/153585/how-does-the-oom-killer-decide-which-process-to-kill-first
    https://lynxbee.com/how-to-invoke-oom-killer-manually-for-understanding-which-process-gets-killed-first/
  • ?
    CyBerry 2021.12.01 11:15
    감사합니다 이쪽도 한번 알아봐야겠네요
  • ?
    wisewolf 2021.12.01 10:04
    스왑 넉넉하게 주셨으면 언젠가 끝나긴 할 텐데 굉장히 느리겠죠. oom killer는 자기가 판단해서 죽이는 놈이라 엄한놈이 죽을수 있는데다가 물리적인 메모리가 부족한건 어떻게 해주진 못하죠.
    0. 메모리 증설
    1. batch로 쪼개서 처리
    2. 자료구조 개선
    3. GC 최적화
    4. 압축 후 메모리 저장
    5. DB 사용
    여러가지 옵션이 있겠습니다만 0,1은 항상 옳고 2,3번은 경우에따라 불가능할수도 있고 4,5번은 근본적인 해결책이 아니니까 고려해보세요.
    1gb짜리 데이터가 20gb정도가 필요하단거는 압축을 풀거나 sparse matrix형태로 인코딩하는거같은데 b의 데이터가 조회가 빈번해서 인메모리에 넣어두고 계속해서 조회해야 되는게 아닌이상 단순한 ETL작업은 배치처리가 제일 이상적인 답이긴 합니다.
  • ?
    CyBerry 2021.12.01 11:19
    넵 저도 배치 처리를 생각해봤는데 속도 차이가 많이 날 것 같아서 후순위로 미뤘는데...
    일단 돠게 해야 하는 게 우선이라 이걸로 해봐야겠습니다 감사합니다.
  • profile
    ForGoTTen      결제중.... 2021.12.01 13:10
    저희가 항상 하는 작업이군요. GPU위에서라는게 다르지만...
    다만.... 가능하면 H/W 리소스의 추가가 대부분 빠르고 쉽게 끝납니다. 저희는 기존 상용 H/W 이상이 필요하니 최적화를 하지만서도...

    H/W 추가가 불가능한데 성능이 문제라면... 적당한 크기의 batch로 나누고, operation & I/O overlapping을 하는 수 밖에 없습니다. (연산과 batch를 읽고 쓰기는 작업이 parallel하게...)
  • ?
    오곡미숫가루 2021.12.01 14:54
    모든 데이터가 동시에 램에 올라와야하는게 아니라면 일단 pickle형태로 serialize 하고 필요하면 읽는 방식으로 하면 될 것 같습니다.
  • profile
    BEE3E3      idolm@ster.email 2021.12.01 15:13
    그냥 부분적으로 처리해서 결과물을 여러번에 걸쳐 출력하면 안되나요...?
  • ?
    Letrhee 2021.12.01 17:30
    데이터 저장이 메인인 작업이라면 그 부분은 mmap을 사용하세요.

작성된지 4주일이 지난 글에는 새 코멘트를 달 수 없습니다.


  1. No Image

    컴퓨터 계산에 램이 부족한 상황에 대해 질문드립니다

    어떤 상황이었는지 간략하게 설명하면 다음과 같습니다.   1. A라는 데이터가 있으며 용량은 1GB. 2. A를 가지고 Python으로 연산을 수행해 B라는 형태로 재가공해서 저장하려고 함. 3. 이때 B의 형태로 A를 연산한 결과물이 하나씩 램에 ...
    Date2021.12.01 질문 ByCyBerry Reply14 Views2579
    Read More
  2. No Image

    트위터 잭 도시 CEO 사임..암호화폐에 집중

    트위터 공동 창업자 잭 도시가 최고경영자(CEO) 자리에서 물러난다고 29일(현지시간) 발표했다. 지난 2007년 트위터 CEO에 올랐다가 다음해 회사를 떠났으나 2015년 트위터 CEO로 복귀했다. 후임은 파라그 아그라왈 현 최고기술책임자(CTO...
    Date2021.11.30 소식 By낄낄 Reply2 Views725
    Read More
  3. 오미크론 가상화폐가 급등 중

    오미크론이라는 코로나 변종이 돌고 있다는 발표 이후로 투자자들이 보다 안전한 자산을 찾으면서 가상화폐 시세가 일제히 떨어지고 있습니다. 비트코인은 고점 대비 20%가 떨어지기도 했습니다. 하지만 오미크론이라는 가상화폐는 가격이...
    Date2021.11.30 소식 By낄낄 Reply10 Views1816 file
    Read More
  4. 이케아 회사 메일이 계속해서 털리는 중

    이케아 회사 메일 시스템이 해킹돼 이케아 직원들에게 계속해서 피싱 메일이 발송 중이라고 합니다. 프록시쉘과 프록시로그인 취약점을 악용해 MS 익스체인지 서버를 공격했다고 하네요. 이케아는 피싱 메일이 어떤 형식으로 발송되는지 ...
    Date2021.11.30 소식 By낄낄 Reply0 Views887 file
    Read More
  5. No Image

    인텔 그래픽 드라이버

    요즘 세상에 윈도우10을 x86으로 사용하는 곳이 있어 이래저래 골칫거리네요 시퓨가 i5-8500이고 칩셋이나 다른 건 드라이버를 잡았는데 그래픽은 드라이버를 구할수가 없네요 인텔에서도 공식적으로 드라이버 지원 하지 않는거 같고.. 외...
    Date2021.11.30 일반 By두리 Reply5 Views2609
    Read More
  6. ASUS ROG Rapture GT-AX6000 공유기

    ASUS ROG Rapture GT-AX6000 공유기입니다. 2.5기가비트 WAN/LAN x1, 2.5기가비트 랜 x1, 기가비트 랜 x4, USB 3.2 Gen.1 x1, USB 2.0 x1. 802.11ax 무선랜으로 WiFi-6, 2.4GHz 대역에서 1148Mbps, 5GHz에서 4804Mbps 듀얼 밴드 지원. 브...
    Date2021.11.30 소식 By낄낄 Reply4 Views820 file
    Read More
  7. No Image

    지금부터 흑우 투표를 진행하도록 하겠습니다.

      소인의 농협 계좌에 총 240만냥이 있사옵니다만, VM 웨어 블랙 프라이데이 40% 할인을 살까 말까 고민하다 결국 끝나버리고 사이버데이 30% 할인 밖에 남지 않았사옵니다.   지금 3년어치를 사게 된다면 VM 웨어 19 버전이 나올때까지 ...
    Date2021.11.29 질문 By록키베어 Reply9 Views2198
    Read More
  8. No Image

    스웨덴, EU에 가상화폐 채굴 금지를 촉구

    스웨덴 금융감독청과 환경보호청의 사무총장은 공개 편지를 통해 가상화폐의 사회적 장점이 있는지 의심스럽다며, 가상화폐가 소비자들에게 위험하며 범죄 목적으로 많이 사용하고 채굴 과정에 온실 가스를 대량으로 배출한다고 주장했습...
    Date2021.11.28 소식 By낄낄 Reply17 Views1118
    Read More
  9. 월페이퍼 엔진 안드로이드 앱 출시

      Wallpaper Engine 2.0이 출시되며 무료 안드로이드 앱도 공개되었습니다. PC버전 Wallpaper Engine을 구매하지 않아도 사용할 수 있습니다.     배경화면과 실시간 상호작용이 가능하고, 자이로 스코프, 소리에도 반응하는 배경화면을 ...
    Date2021.11.27 소식 ByDecAF Reply10 Views2323 file
    Read More
  10. No Image

    애플/구글, 동의 없이 개인 정보를 상업적으로 사용했다며 이탈리아에서 벌금

    애플과 구글이 명확한 동의를 구하지 않고 상업적인 목적으로 사용자 데이터를 사용했다는 이유로 이탈리아 정부에서 1천만 유로의 벌금을 부과 받았습니다. 애플이 앱 스토어, 아이튠스 스토어, 애플 북 등을 통해 수집한 사용자 데이터...
    Date2021.11.27 소식 By낄낄 Reply1 Views681
    Read More
  11. No Image

    프랑스 정부, 검색 엔진에서 중국 제품을 주로 판매하는 사이트를 차단 요청

    Wish는 유럽의 고객을 대상으로 운영되는 인터넷 쇼핑몰입니다. 판매자는 대부분 중국이고, 중국의 제품이 유럽까지 배송되지요. 유럽의 알리 익스프레스 같은 곳이라고 생각하시면 되겠습니다. 프랑스 소비자 경쟁 정책 총무부는 이 사이...
    Date2021.11.27 소식 By낄낄 Reply8 Views917
    Read More
  12. No Image

    Apple, 국가 후원 스파이웨어 남용 방지 위해 NSO Group에 대한 소송 제기

    Apple 오늘 NSO Group 및 모기업을 상대로 Apple 사용자를 표적으로 삼고 감시한 행위에 대해 책임을 묻기 위한 소송을 제기했다. 소송장은 NSO Group이 자사의 Pegasus 스파이웨어로 피해자의 기기를 감염시킨 방식에 관한 새로운 정보를...
    Date2021.11.27 소식 By낄낄 Reply0 Views1253
    Read More
  13. No Image

    독일, 속도가 느린 인터넷 사업자에게 가격 할인을 강제

    속도가 느린 인터넷 서비스 제공자에게 가격 할인을 강제하는 법안이 독일에서 통과, 12월부터 시행됩니다. 독일의 전기통신법 개정 초안에 따르면 사용자가 독일 연방 네트워크청이 제공하는 공식 측정 앱을 사용, 2일 동안 연속으로 20...
    Date2021.11.27 소식 By낄낄 Reply3 Views763
    Read More
  14. No Image

    코리아센터, 국내 1세대 이커머스 '다나와' 인수…인수가 약 4천억원

    1세대 e커머스 ‘다나와’ 인수전 불꽃 https://gigglehd.com/gg/soft/11237122   코리아센터는 오늘(26일) 다나와 경영권 인수를 위한 주식매매계약(SPA)을 체결했다고 공시했습니다. 인수 대상은 성장현 다나와 이사회 의장 등 특수관계인...
    Date2021.11.26 소식 By센트레아 Reply13 Views1884
    Read More
  15. 여러줄에 html 태그 일괄추가? 할 방법을 찾습니다...

    ~~ <body> <p>문장1번입니다.</p>   문장 2번입니다.   문장 3번입니다?   문장 4번<> 입니다.   </body> ~~   이런 텍스트가 있을 때, 문장 2, 3, 4를 문장 1번처럼 앞뒤를 paragraph 태그로 감싸고 싶습니다.   <p>문장 2번입니다.</p> ...
    Date2021.11.26 질문 ByDogPig__ Reply17 Views2065 file
    Read More
목록
Board Pagination Prev 1 ... 209 210 211 212 213 214 215 216 217 218 ... 578 Next
/ 578

최근 코멘트 30개

MSI 코리아
AMD
한미마이크로닉스
더함

공지사항        사이트 약관        개인정보취급방침       신고와 건의


기글하드웨어는 2006년 6월 28일에 개설된 컴퓨터, 하드웨어, 모바일, 스마트폰, 게임, 소프트웨어, 디지털 카메라 관련 뉴스와 정보, 사용기를 공유하는 커뮤니티 사이트입니다.
개인 정보 보호, 개인 및 단체의 권리 침해, 사이트 운영, 관리, 제휴와 광고 관련 문의는 이메일로 보내주세요. 관리자 이메일

sketchbook5, 스케치북5

sketchbook5, 스케치북5

나눔글꼴 설치 안내


이 PC에는 나눔글꼴이 설치되어 있지 않습니다.

이 사이트를 나눔글꼴로 보기 위해서는
나눔글꼴을 설치해야 합니다.

설치 취소