Types of Memory

In Java there are two different types of memory: heap memory, and metaspace memory.

Heap Memory is the main memory used to store your plugins, world data, mods, etc. Therefore, the more worlds and plugins you have, the more Heap Memory you need.

Metaspace Memory is the memory used to store classes that will be frequently accessed, for example it stores functions that can be called on Players, but the actual player's data is not stored in Metaspace.

While Heap Memory will stay within what's assigned to your server, Metaspace Memory will expand as large as it needs, past the amount of RAM assigned to your server. This means that if your Metaspace expands too much it can detriment other users on the node, which would be unfair for other users.

Memory Limits

When you purchase a Pebblehost service, you are assigned the amount of RAM you purchased for heap space. For example, a Budget 5GB service has 5 * 1000 = 5000MB of memory assigned to heap space. On top of that, we provide some extra memory before your server is killed, in order to account for Metaspace.

On plans with 9GB of RAM or lower, you will be able to use 8% of your plan's RAM on top of what's assigned. So, for example, on a 5GB Budget your server has 5000MB of heap space, and can use up to 8% of 5000 = 400MB of extra memory for Metaspace.
On plans with 10GB or more, you can use up to 4% of your plan's RAM on top of what's assigned. So for example on a 16GB Budget your server has 16000MB of heap space, and can use up to 4% of 16000 = 640MB of extra memory for Metaspace

This is the same for both Budget and Premium plans.

What to do if your server is getting killed for RAM usage

On the left hand sidebar of your server, there is a Pebblehost Loader option. If you click this, you should see an option labelled Heap Limiter 1: 0MB, 2: 300MB, 3: 600MB.

This essentially removes memory from your Heap Space, but increases the amount of memory available to Metaspace. So on a 16GB Budget server, with option 3 enabled for heaplimiter, you'll have only 15400MB of Heap Space, but 1240MB available for Metaspace (600MB from the heaplimiter, 640MB from our provided heap). Therefore, if your server is getting killed for using too much RAM you should try giving more RAM to heapspace, which you can do with this option.
Was this article helpful?
Thank you!