Ok, vamos fazer a pergunta mais fácil aqui. Os SSDs são particularmente excelentes em leituras aleatórias . Contanto que você esteja lendo um bloco inteiro, não importa se você está fazendo isso em um bloco imediatamente antes ou "na metade do disco". Não faz diferença prática. Na verdade, você não pode nem dizer. Seu sistema operacional pode pensar que está armazenando dados em locais sequenciais no SSD, mas o próprio SSD pode mapeá-los para lados opostos > do 'armazenamento'. Então, em SSDs, você praticamente não precisa se preocupar com a desfragmentação de arquivos. Exceto. Eu voltarei a isso.
Ok, vamos voltar aos discos mecânicos comuns. Eles são muito mais rápidos em leituras seqüenciais do que em leituras aleatórias. Muito, muito mais rápido.
Agora, se eu estiver jogando Half Life 3 e precisar carregar arquivos de dados, meu computador terá muito mais facilidade se esses arquivos de dados forem desfragmentados e armazenados nas proximidades. Aproximadamente (muito aproximadamente), a desfragmentação converte leituras aleatórias em leituras sequenciais.
Você está concedendo que é obviamente mais rápido ter o arquivo de dados do mapa e o arquivo de dados de caractere desfragmentado e ao lado um do outro, do que ter o arquivo de dados do mapa espalhado por todo o disco e o arquivo de dados de caracteres também espalhado por todo o disco.
Mas ... você coloca um cenário bastante estranho. Você está sugerindo, por exemplo, que o Half Life 3 precise carregar PART do arquivo de dados do mapa e PARTE do arquivo de dados do caractere. Por exemplo, ele só precisa dos primeiros 10% do arquivo de dados do mapa e do meio 10% do arquivo de dados de caracteres.
Nesse caso, a melhor maneira de armazenar os dados seria armazenar os primeiros 10% dos dados do mapa, seguidos imediatamente pelos 10% do meio dos dados de caracteres. Como você não está carregando mais nada (neste exemplo inventado), não importa onde mais esteja.
Então sim. Nesse caso específico, seria útil se os dados estivessem fragmentados.
Agora, voltando ao SSD. Acontece que os SSDs precisam ler e escrever uma página por vez. O tamanho exato da página depende do SSD, mas pode ser
Sim, existem algumas circunstâncias em que a fragmentação proposital dos dados acelera o seu acesso. Mas é difícil imaginar por que você já tentou otimizar para este caso. Na verdade, na maioria das vezes, você deseja carregar todo um arquivo, não apenas os primeiros 10%. E os sistemas operacionais modernos armazenam arquivos em cache de qualquer maneira, então há uma boa chance quando você passa de um mapa para outro no Half Life 3, os dados do mapa já estão no cache do sistema de arquivos e você não precisa carregar nada do disco .
Uma opção interessante é o SSHD, os drives híbridos. Estas são (praticamente) combinações de drives mecânicos com um cache SSD. Como isso é relevante aqui? Bem, grosso modo, as unidades híbridas moverão o conteúdo acessado com freqüência para uma área de armazenamento mais rápida, movendo os dados do seu disco spinny para a parte SSD. Se você sempre carregasse os primeiros 10% dos dados do mapa e os 10% do meio dos dados de caractere e nunca carregasse mais nada, e se o algoritmo da unidade híbrida fosse bom, esses dados acabariam na parte mais rápida do SSD. Até certo ponto, então, isso realiza o que você está planejando fazer. Note que o cache regular do sistema de arquivos realiza a mesma coisa, somente o efeito é provavelmente mais rápido, mas só dura até que você reinicie.
TL; DNR: Sim. Mas, falando sério, é praticamente garantido que é uma otimização inútil.