2012-11-21 20 views
19

Używam 32-bitowego Intellij na moim 32-bitowym Windows XP z 4 GB pamięci RAM.
Próbuję zwiększyć intellij xmx do 1,5 GB: -Xmx1500m Więc wiem, że JVM obsługuje 1,5 GB pamięci RAM w systemach 32-bitowych.
Ale ten błąd wyrzuca z JVM:
Jak zwiększyć intelli 32bit xmx więcej niż 1 GB?

The JVM could not be started. The maximum heap size (-Xmx) might be too large ... 

nie mogę zwiększyć IntelliJ xmx ponad 900MB
Proszę mi pomóc!

Odpowiedz

39

Nie można tego zrobić, ponieważ JVM musi przydzielić całą stertę w jedną ciągłą porcję, co może nie być możliwe z powodu fragmentacji pamięci. See my FAQ article, aby uzyskać więcej informacji.

Zobacz także to zdjęcie:

JVM heap

Jak widać, ilość pamięci proces jest nie tylko wielkość sterty, dzięki czemu znacznie łatwiej trafić limit 2GB OS.

Rzeczywiste sterty, które mogą być używane, różnią się w konfiguracji systemu operacyjnego i innych działających aplikacjach (biblioteki DLL z hakami są wstrzykiwane do przestrzeni procesu i powodują dodatkowe fragmentacje). Zwykle jest to gdzieś pomiędzy 512M a 1G, ale może być wyższe w czystym systemie.

Powiązane problemy