'mmap'을 사용하는 동일한 프로그램은 다른 컴퓨터에서 다르게 동작합니다.

'mmap'을 사용하는 동일한 프로그램은 다른 컴퓨터에서 다르게 동작합니다.

두 대의 서로 다른 컴퓨터(CentOS 7)에서 대용량 메모리 매핑 파일을 사용하는 응용 프로그램을 실행하고 있습니다.

나는 동일한 프로그램이 두 개의 다른 컴퓨터에서 실행될 때 성능이 크게 다르다는 것을 발견했습니다.

그 이유는 대부분의 페이지가 디스크로 스왑 아웃되기 때문에 한 시스템이 과도한 양의 디스크 I/O를 사용하기 때문입니다.

명령을 실행할 때 top 공유 메모리 영역의 크기는 느린 시스템에서 약 몇 메가바이트에 불과합니다. 더 빠른 시스템에서 공유 메모리 영역의 크기는 약 6GB입니다. 이는 대부분의 데이터가 OS 페이지 캐시에 캐시된다는 것을 의미합니다.

전체 메모리 매핑 파일을 캐시하기에 충분한 여유 메모리 공간(16GB 이상)이 있는지 확인했습니다.

아무도 나에게 이 문제에 대한 아이디어를 줄 수 있습니까?

관련 정보