매우 큰 사이즈의 배열을 다루는 프로그램 작성 전략.. ?
글쓴이: phantom7026 / 작성시간: 월, 2014/06/16 - 8:15오후
큰 사이즈의 배열을 다뤄야 하는 프로그램을 작성할 때 마다 메모리 부족 때문에 어려움을 겪습니다.
크기는 수~수십 억 x 수십 정도 되는 int 형 배열인데, 컴퓨터가 힘들어 하다가 먹통이 되네요.
배열 전체가 동시에 로드되어야 하는 건 아닌데.. 파일 입출력 등으로 해결할 수 있을까요 ?
Forums:
?
메모리에 넣기 힘들 정도로 큰 데이터를 다룰 때는 항상 파일에서 부분적으로 읽어와서 처리하는 로직을 따로 구성해야 합니다.
이것도 참고해 보세요
1. 윗분 말씀대로 파일맵 (DB) 을 사용할 수 있습니다.
2. __int64 와 같은 큰 변수를 만들 수 있습니다. 첨부한 예제소스를 참고해보세요.
3. CreateFileMapping() MapViewOfFile() 과 같은 함수가 있습니다. 윈도우 API 책을 참고해보세요.
http://interest.pe.kr/bbs/view.php?id=private_memo&no=68
4. 네트워크 통신으로 클라우드의 OpenAPI로 원격저장을 할 수 있습니다.
5. USB 나 CD. TAPE 로 대용량 시스템을 만들어서. 저장할 수 도 있습니다.
6. int data[i] 배열에 int * pa[i]; 에 포인터를 사용한 2중 배열을 사용할 수 도 있어 보입니다.
----------------------------------------------------------------------------
젊음'은 모든것을 가능하게 만든다.
매일 1억명이 사용하는 프로그램을 함께 만들어보고 싶습니다.
정규 근로 시간을 지키는. 야근 없는 회사와 거래합니다.
각 분야별. 좋은 책'이나 사이트' 블로그' 링크 소개 받습니다. shintx@naver.com
댓글 달기