저는 MPI를 사용하여 수퍼 컴퓨터로 작업하고 있습니다. 하지만 문제의 .. C++ 데이터의 파일이 "긴 숫자"의 50 수백만 달러를 포함 vector<long>v1
MPI 사용 : C++ std :: bad_alloc
//open file
...
vector<long>v1;
while (!f1.eof()){
//input data into
v1.push_back(s1);
}
좋아요로 읽어 데이터 파일 열기와 프로그램을 가지고, 그것은 완벽했다.
std::bad_alloc();
방법이 개선 : 데이터 파일이 "긴 숫자"75 백만 이상 포함 된 경우 하지만, 그것은 예외와 함께 실패? 나는 (전혀) 슈퍼 컴퓨터에 많은 경험을 가지고 있지 않지만
이 외에,
'deque'는 벡터에 가깝지만, 단편적인 저장소가있다. (분명히이 단편화를 제어하는 것은 표준 제어를 넘어서는 것입니다.) – GManNickG
@GMan 시도해 보는 것이 좋습니다. 어떻게 작동되는지는 STL의 'deque'구현이 '좋은'(자신의 특정 문제에 대한) 방법에 달려 있습니다. 대부분 그의 문제를 해결할 것입니다. –