Pular para o conteúdo

SSD e "elevator" - dica de desempenho para netbooks e virtual machines

Dica publicada em Linux / Miscelânea
Andre (pinduvoz) pinduvoz
Hits: 8.629 Categoria: Linux Subcategoria: Miscelânea
  • Indicar
  • Impressora
  • Denunciar
O Viva o Linux depende da receita de anúncios para se manter. Ative os cookies aqui para nos patrocinar.
Não conseguimos carregar os anúncios. Se usa bloqueador, considere liberar o Viva o Linux para nos patrocinar.

SSD e "elevator" - dica de desempenho para netbooks e virtual machines

O que são os "elevators" (elevadores) incluídos no kernel? Pesquisei o assunto por conta de uma dica recorrente sobre o funcionamento do SSD (Solid State Disk) do Acer Aspire One e tento aqui passar a vocês o que eu aprendi sobre eles (quem quiser e souber, pode me corrigir se achar necessário).

Um elevador não entrega seus passageiros fora de ordem, ou seja, pára no primeiro andar, no segundo e assim sucessivamente, para que as pessoas embarquem e desembarquem conforme os respectivos destinos. Se há três pessoas no elevador e uma vai ao 10º andar, outra ao 1º e a última ao 5º, é óbvio que, se o elevador parasse primeiro no 10º, depois no 1º e por último no 5º, consumiria mais tempo do que seguindo a ordem natural de parada (1º, 5º e 10º).

Essa analogia vale para os discos rígidos (HD), já que a leitura/gravação ordenada por setores é muito mais rápida do que a leitura pela ordem das requisições. Podemos dizer, então, que o "elevator" do Kernel estabelece uma ordem ideal para as requisições de leitura/gravação no disco.

E o que isso tem a ver com o SSD do Acer Aspire One e de outros netbooks? Um dos quatro tipos de "elevadores" do Kernel Linux trabalha exatamente pela ordem "Primeiro a entrar, Primeiro a sair" ("First in, First out", cuja sigla é FIFO), desprezando trilhas de disco (posição dos dados no HD) e assim "casando" com a estrutura dos SSD, que, ao contrário dos discos rígidos mecânicos, não precisam de "ordenamento".

E se os SSD, assim como os discos virtuais (a dica também vale para quem tem Linux numa VM), não precisam de "ordenamento", o trabalho realizado nele é pura perda de tempo e desempenho, ou seja, em vez de ajudar, atrapalha.

E como podemos utilizar esse elevador "Primeiro a entrar, Primeiro a sair"? Simplesmente passando a escolha dele ao Grub.

No Linpus, como no Fedora, não temos o arquivo "menu.lst" e sim o arquivo "grub.conf", que deve ser editado com o comando:

sudo mousepad /boot/grub/grub.conf

E o que está assim:

default=0
timeout=0
splashimage=(hd0,0)/boot/grub/splash.xpm.gz
hiddenmenu

title Linpus Linux RCD
   rootnoverify (hd0,0)
   kernel /boot/bzImage ro root=LABEL=linpus vga=0x311 splash=silent loglevel=1 console=tty1 quiet nolapic_timer
   initrd /boot/initrd-splash.img

Fica assim:

default=0
timeout=0
splashimage=(hd0,0)/boot/grub/splash.xpm.gz
hiddenmenu

title Linpus Linux RCD
   rootnoverify (hd0,0)
   kernel /boot/bzImage ro root=LABEL=linpus vga=0x311 splash=silent loglevel=1 console=tty1 quiet nolapic_timer elevator=noop
   initrd /boot/initrd-splash.img
O Viva o Linux depende da receita de anúncios para se manter. Ative os cookies aqui para nos patrocinar.
Não conseguimos carregar os anúncios. Se usa bloqueador, considere liberar o Viva o Linux para nos patrocinar.

Em suma, acrescente "elevator=noop" à linha de boot do kernel (é uma linha só), logo após a última opção ("nolapic_timer").

É óbvio que, se a sua distro usa o arquivo "menu.lst", é ele que deve ser editado.

Encerrando, esclareço que uso a dica acima e meu Acer Aspire One não "congela" lendo e escrevendo no disco tanto quanto antes dela ser aplicada.

Agora cabe a você testar e ver se o desempenho do seu Acer Aspire One também melhora.

O Viva o Linux depende da receita de anúncios para se manter. Ative os cookies aqui para nos patrocinar.
Não conseguimos carregar os anúncios. Se usa bloqueador, considere liberar o Viva o Linux para nos patrocinar.

MintMenu no Debian 6.0 "Squeeze"

Dash-To-Dock do Ubuntu

Forçar resolução de tela no GNU/Linux

Troque senhas perdidas com um Live CD/USB

Personalizar o Painel do Gnome no Ubuntu Lucid Lynx

Winetricks - turbinando seu wine sem dores de cabeça

Ativando composite automaticamente

File Manager muito bom e com suporte a thumbs

Convertendo outros formatos de áudio para MP3 no Mandriva One e superior

Unindo arquivos divididos pelo hjsplit/winrar no Linux

#1 Comentário enviado por clebaosantz em 21/06/2009 - 09:10h
André, valeu pela dica. Realmente funciona, a performance ficou muito melhor, uso o Linux instalado em um pendrive e travava toda hora agora consigo usar normalmente
#2 Comentário enviado por pinduvoz em 23/06/2009 - 00:09h
Que bom, Cleber.

Eu também notei uma certa melhora e por isso resolvi postar, pesquisando para dar uma explicação, ainda que sucinta.
#3 Comentário enviado por shirulkm em 14/08/2009 - 01:47h
Ola
desculpe a ignorância...
To com o UNR e o comando eh invalido, claro trocando o grub.conf por menu.lst .
Mas o comando mousepad da invalido. Qual o comando pro UNR?

E to acompanhando os artigos para o AA1... Valeu pelas dicas.
#4 Comentário enviado por shirulkm em 14/08/2009 - 02:27h
Entrei pelo $ sudo gedit /boot/grub/menu.lst
E nao consegui encontra a linha pra modificar...
=/
#5 Comentário enviado por pinduvoz em 15/08/2009 - 19:25h
É a linha das opções do Kernel, que termina com "quiet splash".

Segue a minha:

kernel /boot/vmlinuz-2.6.28-14-generic root=UUID=4a204b19-2b7d-4f2d-a016-d79f1d230c7d ro locale=pt_BR quiet splash pciehp.pciehp_force=1 elevator=noop

Altere também em "# defoptions", para que a cada upgrade do Kernel as alterações sejam preservadas. Fica assim:

## additional options to use with the default boot option, but not with the
## alternatives
## e.g. defoptions=vga=791 resume=/dev/hda5
# defoptions=quiet splash pciehp.pciehp_force=1 elevator=noop
#6 Comentário enviado por shirulkm em 18/08/2009 - 02:00h
Valeu, troquei ja!!!
Agora eh ta sempre olhando as dicas pra deixa o bichinho melhor
Valeu =D
#7 Comentário enviado por thiagoanselmo em 01/02/2013 - 15:11h
Amigo, vamos ver se podes me ajudar.

Tenho um servidor que roda Debian 6.0.6 com KVM.
Tenho uma maquina virtual rodando windows 2003 server, só que ela trava, já olhei memória e processamento e estão OK. Percebi que está dando um gargalo no Disco, pois atualmente eu uso um HD 320GB 7200RPM, eu iria colocar um SSD para o sistema operacional e outro onde fica armazenada a VM, mais pelo oque eu li isso não ajudaria? é isso?

Contribuir com comentário

Entre na sua conta para comentar.