karl2002 Posted August 16, 2012 Posted August 16, 2012 Im having issues allocating more than 1gig of ram to my tekkit server on a 32bit windows server enterprise edition. I know server editions can address way more ram then regular os's but what i can figue out why it wont let me assign more than 1gig of ram Tryied to assign 5gig and the dedi having 8gig of ram in it message i get is Invaleid maximum heap size -xmx5g the specified size exceeds the maximum representable size error could not create java virtual machine when its set to 1gig it starts up perfectly so im really comfused now any hlep would be great Quote
prenetic Posted August 16, 2012 Posted August 16, 2012 You pretty much answered your own question. You're running a 32-bit operating system which is only capable of addressing 4,294,967,296 bits (2^32), which comes out to 4 GiB of addressable memory in total. There are tricks such as PAE (Physical Address Extension) which allows the addressable memory of the operating system to extend beyond 4 GiB, however this does not apply to 32-bit processes. This is the same reason why 32-bit filesystems cannot (without unsupported modifications) contain entities greater than 4 GiB. tl;dr: The maximum you can address is 4 GiB. Give that a shot. Quote
karl2002 Posted August 16, 2012 Author Posted August 16, 2012 You pretty much answered your own question. You're running a 32-bit operating system which is only capable of addressing 4,294,967,296 bits (2^32), which comes out to 4 GiB of addressable memory in total. There are tricks such as PAE (Physical Address Extension) which allows the addressable memory of the operating system to extend beyond 4 GiB, however this does not apply to 32-bit processes. This is the same reason why 32-bit filesystems cannot (without unsupported modifications) contain entities greater than 4 GiB. tl;dr: The maximum you can address is 4 GiB. Give that a shot. Funny enough even 4gig didnt work lol Quote
karl2002 Posted August 16, 2012 Author Posted August 16, 2012 But Also from the research i done i see that windows server enterprise can see and use up to 64 gig of ram on 32bit. thats also what my dedicated host told me unless im seeing this wrongly lol Quote
prenetic Posted August 16, 2012 Posted August 16, 2012 Try working down from 4 GiB in 512 MiB increments (4096, 3584, 3072, 2560, etc.) until it works. You're running into virtual memory address space limitations. 4 GiB is the absolute maximum you will have success with as it is the upper ceiling, however the effective ceiling varies from machine to machine based on the operating system and configuration. From Wikipedia: On a 32-bit Microsoft Windows installation, by default, only 2 GiB are made available to processes for their own use. The other 2GB are used by the operating system. On later 32-bit editions of Microsoft Windows it is possible to extend the user-mode virtual address space to 3 GiB while only 1 GiB is left for kernel-mode virtual address space by marking the programs as IMAGE_FILE_LARGE_ADDRESS_AWARE and enabling the /3GB switch in the boot.ini file. On 64-bit Microsoft Windows, processes running 32-bit executables that were linked with the /LARGEADDRESSAWARE:YES option have access to 4 GiB of virtual address space; without that option they are limited to 2GB. By default, 64-bit processes have 8TB of user-mode virtual address space; Linking with /LARGEADDRESSAWARE:NO artificially limits the user-mode virtual address space to 2 GB. Quote
prenetic Posted August 16, 2012 Posted August 16, 2012 As for Windows Server 2008 Enterprise (x86) capable of utilizing 64 GiB of memory, that's true. It falls under the PAE exception I mentioned in my first post. Again, this does not apply to user processes. Quote
karl2002 Posted August 17, 2012 Author Posted August 17, 2012 As for Windows Server 2008 Enterprise (x86) capable of utilizing 64 GiB of memory, that's true. It falls under the PAE exception I mentioned in my first post. Again, this does not apply to user processes. Thank you for your helpful replys I was only able to get it up to 1600m no higher any higher and it tells me this message "could not reserve enough space for object" This is what my launcher bat file currently looks like It works like this but server regualy hits its allocated ram at the momeant @Echo OFF SET BINDIR=%~dp0 CD /D "%BINDIR%" "%ProgramFiles%\Java\jre7\bin\java.exe" -Xms1024m -Xmx1600m -jar tekkit.jar --nojline PAUSE Also task manager under performance tells me there is total 8181 total memory cached 4187 free 3389 Quote
prenetic Posted August 17, 2012 Posted August 17, 2012 That sounds about right. One recommendation I will make is to set -Xms and -Xmx to be the same in the context of Minecraft. If you still need more memory for your Minecraft server you can also add the /3GB switch to your boot.ini file. There are plenty of tutorials online as to how you can go about doing this. Quote
Recommended Posts
Join the conversation
You can post now and register later. If you have an account, sign in now to post with your account.