Eu tenho um aplicativo que abre um arquivo grande (cerca de 1 a 2 GB) sempre que é executado.
Por motivos de desenvolvimento/teste, preciso continuar reiniciando o aplicativo, e o tempo de espera de 30 a 1 minuto para carregar o arquivo do disco rígido torna-se um pouco inconveniente.
Existe uma maneira de colocar o arquivo na RAM (e mantê-lo lá), para que o carregamento seja mais rápido?
Responder1
Se o seu sistema tiver RAM suficiente, o arquivo deverá ser armazenado em cache na memória, para quenão deveriaser relido na unidade todas as vezes.
Você pode tentar forçar o problema copiando o arquivo para um tmpfs
sistema de arquivos e carregando-o de lá. tmpfs
os sistemas de arquivos são baseados em RAM. A maioria das distribuições agora usa tmpfs
for /tmp
, então copiar o arquivo funcionará; se precisar, você pode mount
ir tmpfs
para outro lugar e copiar o arquivo lá. No entanto, se a memória for curta, o conteúdo de a tmpfs
pode ser trocado, então você pode acabar lendo a partir do swap.
Responder2
O sistema de arquivosdevejá armazena em cache o arquivosevocê tem RAM suficiente.
No entanto, para criar um disco RAM de 2GiB dedicado /tmp/ramdisk
para esse propósito, você pode fazer o seguinte:
sudo mkdir /tmp/ramdisk sudo mount -t tmpfs -o size=2G myramdisk /tmp/ramdisk