램디스크와 램캐싱은 조금 다른 개념임. 기술적으로 보면 세부적으로 차이가 나지만, 가장 큰 차이는 데이터를 데이터를 ssd나 하드디스크에 기록하냐 안하냐., 안하냐임. 일반적으로 램디스크는 램 자체에 데이터를 올려두고 읽기쓰기를 하다가, 컴퓨터 종료시에 데이터를 저장하지 않거나, 따로 설정해서 디스크에 데이터를 저장하도록 설정함. 속도는 매우 빠르지만 안정성이 떨어지고, 컴퓨터 켜고 끌때 램에서 디스크로 데이터 저장하는 시간이 오래 걸린다.


램캐싱은 하드디스크에 버퍼메모리를 추가하는 느낌이다. 일정시간동안 혹은 일정 용량구간만큼 램에다 입출력을 하고, 적당한 시간이 되면 디스크에다 기록을 한다. 디스크의 부하를 줄이고, 주기적으로 저장을 하기 때문에 더욱 높은 안정성이 있다 (물론, 지연된 쓰기를 사용하면 리스크는 사용자의 몫이다.)


두 기술 다 일반 사용자들은 램이 적어서 제대로 활용하기 어렵다. 벤치점수용으로나 쓸까, 제대로 활용되는곳은 스토리지 레이드 컨트롤러나 서버에서 사용한다. 일반 사용자도 램이 많다면 쏠쏠하게 써먹을 수 있다.


--------------------------------------------------------------------------------


dsp가 오토세이브 5개에 수동세이브도 있는데, 나중에 되면 세이브파일 하나당 몇기가씩 처먹으며, 수십기가 용량을 차지하게 된다. 계산 편하게, 세이브파일 하나가 4기가라고 가정해보자. dsp 기본세팅에선 자동세이브 주기가 8분으로 되어있다. 아무리 ssd를 사용한다 하더라도 8분마다 끔찍한 렉에 시달리게 된다. 그래서 이와 같이 세팅을 하였다.


아래 스크린샷 왼쪽 최상단에 보면 A 드라이브가 보일거다. DSP 게임폴더, 모드매니저와 모드데이터, 내문서에 저장되는 게임 세이브폴더를, 심볼릭 링크를 사용해서 A드라이브로 옮겨왔다. 이 A드라이브는 삼성 PM981 - 1테라 모델이다. A드라이브와 B드라이브로 파티션이 나뉘어있는데, A드라이브에 36기가쯤 설정했다. B드라이브는 게임 설치용, 동영상 녹화 및 인코딩용으로 사용하고 있다.


스샷 왼쪽 위에서 세번째를 보면 프리모캐시라는 프로그램이 실행되어있다. 이게 램캐싱 프로그램이다. 데이터를 램에 올려두어 디스크를 가속화한다. 데이터 읽기캐시나 쓰기캐시로만 사용한다면 디스크 가속용으로 약간만 줘도 되지만, 게임 세이브 로드를 쾌적하게 하기 위해서 A드라이브에 72기가를 할당했다.


스샷 오른쪽 맨 아래를 보면 데이터 읽기로 50%, 데이터 쓰기로 50%를 사용하겠다고 설정을 해두었다. 사실상 디스크의 모든 내용이 램에 올라가서 빠른 읽기속도를 가지고, 거기에 더불어 데이터 저장시에도 그만큼 램을 사용하겠다는 의미이다. 쓰기캐시 용량은 상대적으로 적어도 되긴 하는데, 테스트를 위해서 동등하게 올려두었다. 실제 사용시엔 파티션 용량을 좀 늘리고 각각 비율을 좀 조정하면 될것 같다.


그리고 지연된 쓰기 30분을 넣었다. 이것은 결코 일반적인 세팅이 아닌 큰 리스크를 갖고 있다. 보통은 위험하기 때문에 이 기능을 쓰지 않거나, 1분 이내로 설정한다.

30분마다 디스크에 저장을 하겠다는 의미이고, 데이터가 저장된 뒤 29분 후에 정전이나, 블루스크린이나, 기타 컴퓨터가 뻗으면 그만큼이 날아간다.


** 실사용시 그 아래 Prefetch Last Cache 옵션을 체크하면, 컴퓨터 부팅시 기존에 캐시되어 있던 데이터를 로드한다. 윈도우 부팅시 즉각 가져오는게 아니라서, 부팅속도에 큰 영향을 주지 않는다.


이렇게 세팅을 끝내고 해본 크리스탈 디스크마크 벤치 결과가 왼쪽 위에서 두번째 사진이다. 보통 유저들은 램용량의 한계때문에 벤치용 뻥스펙인 경우가 많지만, 이 세팅에선 모든 데이터가 램에 올라가있는 상태이기 떄문에 뻥스펙이 아니다.



근데 뭐다? 이건 프레임을 올리기 위한 세팅이 아니고, 거대한 용량의 세이브파일을 빨리빨리 처리하기 위한 세팅이다. 3090마렵다... ㅠㅠ