Eu tenho um VPS do servidor Debian e o provedor instalou o Debian 5. de 64 bits. Devo solicitar uma instalação de 32 bits, já que tenho apenas 750 MB de RAM e ouvi dizer que variáveis consomem mais RAM em sistemas de 64 bits?
Eu tenho um VPS do servidor Debian e o provedor instalou o Debian 5. de 64 bits. Devo solicitar uma instalação de 32 bits, já que tenho apenas 750 MB de RAM e ouvi dizer que variáveis consomem mais RAM em sistemas de 64 bits?
Respostas:
A resposta curta :
As variáveis não ocupam o dobro do espaço no software de 64 bits versus 32 bits. O ganho potencial de memória ao mudar para um sistema operacional de 32 bits não valerá o esforço.
A resposta longa :
Os números podem ser maiores, sim, mas isso não significa que eles serão. Isso também se aplica a números, e não a cadeias, e as cadeias (geralmente) são as que consomem mais quantidade de memória em um aplicativo.
Além disso, muitos aplicativos especificam explicitamente o tamanho do número com o qual desejam trabalhar, como em idiomas como C, int
pode ser de qualquer tamanho, incluindo menores que 32 bits. E indo ainda mais longe, na minha máquina Linux de 64 bits, em C int
é de 32 bits. Portanto, você teria que solicitar explicitamente long long
para obter um número de 64 bits.
Então, basicamente, os aplicativos não usarão mais memória apenas porque foram compilados para 64 bits.
Edição :
Em resposta à alegação de Gilles de que o Firefox de 64 bits usa duas vezes mais memória, fiz uma comparação entre o Firefox de 32 e 64 bits no meu sistema.
Testei iniciando 5 guias abertas em http://acid3.acidtests.org/ e realizei o teste três vezes (uma vez em 32 bits, uma vez em 64 bits e repita duas vezes). Eu escolhi este site porque é intensivo em JavaScript e usa conteúdo estático (cada renderização da página fornecerá os mesmos dados).
Na execução final:
32 bits: 173.244kb rss / 918.348kb virt
64 bits: 184.588kb rss / 966.624kb virt
Eu poderia fazer testes mais extensos sim, mas acho que isso demonstra bem o suficiente para que a diferença de tamanho entre os dois seja marginal.
Eu escolho instalações de 32 bits em vez de 64 bits para sistemas com menos de 4gig de ram.
64 bits usa mais memória, devido à natureza de seus ponteiros, isso varia entre aproximadamente 10 e 50 megabytes extras para uma instalação LAMP de baunilha.
Em um sistema com ram limitado, por exemplo, 256meg, isso pode ser um pedaço considerável.
Tecnicamente, com o PAE, o mesmo se aplica até 64gig, no entanto, o espaço endereçável para aplicativos ainda é limitado a 4gig em qualquer caso. Portanto, com algo acima de 4gig, recomenda-se 64 bits para utilizar os ganhos de desempenho, principalmente os associados à sobrecarga do PAE.
Em poucas palavras: <4gig = 32 bits | > 4gig = 64 bits.
Se o provedor instalou o Debian 5 de 64 bits, eu recomendo que você permaneça com esta versão.
A diferença entre 64 bits e 32 bits não está apenas no gerenciador de memória.
Exceto por alguns aplicativos de processamento de números que são executados mais rapidamente, o único benefício de um sistema de 64 bits é que você pode endereçar mais de 4 GB de memória. Como parte do espaço de endereço é reservado ao kernel, um processo obtém apenas 2 GB ou 3 GB de espaço de endereço (ou mais ou menos, dependendo da configuração do kernel). Para um caso de uso de banco de dados e servidor da Web, você não planeja trocar muito e não fará muito processamento de números. Portanto, com apenas 750 MB de RAM, você não verá nenhum benefício em usar um sistema de 64 bits.
O tamanho do código é praticamente o mesmo entre o código i386 (32 bits) e amd64 (64 bits). A memória de dados usada pelo programa de 64 bits é um pouco maior; quanto maior depende da aplicação. Eu esperaria ver uma diferença notável, mas não grande, para o seu caso de uso.
Dado que há um pequeno custo e nenhum benefício em usar 64 bits, recomendo que você use um sistema de 32 bits, se não houver muitos problemas para obter.