Memoria virtual machine

Oi, eu tenho um servidor com 8 GB de ram, mas preciso aumentar a capacidade de memoria da virtual machine, hoje ela funciona com 2GB mas nao consigo aumentar mais, alguem sabe como posso fazer para aumentar e iniciar o jetty com mais de 2GB?

Valeu…

Sua aplicacao está rodando com um JDK 64 bits? (meio obvia a pergunta… mas nao custa perguntar)

Eu particularmente nunca rodei uma JVM com mais de 2Gb de Ram…

Mas o que acontece é o seguinte (as vezes pode ajudar em alguma coisa para solucionar o problema):

A JVM precisa de alocar toda a memória necessária de maneira sequencial… não pode por exemplo ter 1gb em uma parte e 1gb em outra parte (nao me perguntem detalhes sobre isso pq eu nao sei os detalhes, mas existe essa história, podem pesquisar)

O que acontece nos sistemas operacionais é que a memória RAM é dividida em seções… numa máquina de 32bits por exmeplo, cada sessão tem 2GB… entao se vc tem 4gb de RAM suas sessoes terao cada uma 2gb…

Se cada sessao tem 2gb vc nao conseguirá inicializar uma JVM com mais de 2gb mesmo tendo disponivel 4gb pq a memoria nao é sequencial… existem distribuicoes ou configuracoes no linux que permitem particoes de 1gb/3gb…

Isso é para sistemas 32bits…

Em sistema 64bits a historia pode ser um pouco diferente… mas o fato é… a JVM precisa de uma memoria sequencial…

No meu sistema que tem 6gb de ram e é 64bits também nao consigo alocar mais de 2gb para uma jvm.(uso windows)

Peraí, 2Gb é um caminhão de memória, mesmo para um servidor de grande porte. Você tem certeza que não está fazendo mau uso da RAM? Já tentou usar um profiler e ver se não tem leaks feios na sua aplicação?

Dizendo Leaks, você está sendo gentil vini. Isso é uma bomba. Onde já se viu 2gb para uma aplicação. Nem em jogos de grande porte.