대용량 파일 사전 캐싱

대용량 파일 사전 캐싱

동적 스펙트럼을 생성하기 위해 큰 바이너리 파일을 읽는 시간이 중요한 CPython 루틴이 있는데, 이는 파일이 이전에 캐시되지 않은 경우 훨씬 더 느려집니다. 사전 캐싱을 사용하면 vmtouch첫 번째 파일이 전체 2GB 파일을 캐시하는 데 ~14~16초가 걸리지만 다음 파일은 조금 더 느립니다(~52초 소요).

  1. 루틴을 처리하려면 2개의 2GB 파일이 필요하므로 이러한 파일을 더 빠르게 사전 캐시할 수 있는 방법이 있습니까?

시스템 세부정보:

휘발성 메모리: 16GB
Ubuntu 버전: 18.04.5 LTS

첫 번째 파일 vmtouch출력

vmtouch -vt First_Large_binary.bin
[OOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOO] 512000/512000

Files: 1
Directories: 0
Touched Pages: 512000 (1G)
Elapsed: 14.896 seconds

두 번째 파일 vmtouch출력

vmtouch -vt Second_Large_binary.bin
[OOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOO] 512000/512000

Files: 1
Directories: 0
Touched Pages: 512000 (1G)
Elapsed: 52.126 seconds

관련 정보