JVM size and performance tuning

JiraYo
Rising Star
Rising Star
Rising Stars are recognized for providing high-quality answers to other users. Rising Stars receive a certificate of achievement and are on the path to becoming Community Leaders.
February 20, 2018

firstly, can someone repost this article? it appears to have been deleted and is refered to from multiple sources:

 

https://confluence.atlassian.com/display/JIRAKB/JIRA+Performance+Tuning

 

secondly, we are finding that after a day or two using jira, the system grinds to a halt and needs to be restarted to get back functionality. I am looking into it, and i noticed that JVM is set extremely low in my no knowledge opinion:

 

image.png

Some items like meatspace are at 0%!!!!

 

 

EDIT: increasing to 2gb (reports as 1051mb used out of 1815 free) now has made the site MUCH faster! wow... ill continue to monitor

image.png

 

 

 

 

so i was going to change the JVM memory size, but i went to look at that and the document says that 768 should be fine with less than 5k issues. We have like 30 issues, so maybe it doesnt need to be changed as per this doc? https://confluence.atlassian.com/adminjiraserver073/increasing-jira-application-memory-861253796.html

 

I am going to try boosting it anyways. The vm has like 8 gigs assigned to it so i think increasing to 2gb is not crazy. However the doc makes me think it could actually have negative performance impacts. Anyone got any thoughts on this? or what could be giving me performance issues after a few days running.

 

3 answers

2 accepted

2 votes
Answer accepted
Ivan Tovbin
Rising Star
Rising Star
Rising Stars are recognized for providing high-quality answers to other users. Rising Stars receive a certificate of achievement and are on the path to becoming Community Leaders.
February 20, 2018

Check out this documentation on Jira sizing. 

As for personal experience, for an instance with ~50 projects and ~70k issues we've set JVM heap size to 6GB and are doing just fine.

Shradha Singh February 13, 2020

Hi Ivan

What is the JVM heap size recommendation for ~ 629998 issues and ~350 projects.

Thanks.

Regards
Shradha

Like Rebeca Cunningham likes this
1 vote
Answer accepted
louisdj
Rising Star
Rising Star
Rising Stars are recognized for providing high-quality answers to other users. Rising Stars receive a certificate of achievement and are on the path to becoming Community Leaders.
February 20, 2018

We are using 8GB of memory for the JVM for at least a year, and only happy we upgraded the memory. The only thing to keep in mind is keep enough memory for the rest of the system, but Jira will not work worser because it has too much memory.

1 vote
Dave Menconi April 25, 2022

I respectfully beg to differ with the comment "Jira will not work worse because it has too much memory". 

If you put too much memory in the JVM you can experience periodic slow downs. Typically it will run great for, say, a week and then everything will stop for 20 minutes. If you don't reboot the server it will eventually recover but I don't know of many system operators who would allow that. 

Usually people think "huh, we'll every system has memory leaks, this system isn't as reliable as I would like, I guess we'll just have to deal with it." They certainly don't think "oh, I have too much memory in the JVM!" 

But that's the problem. I've seen it a few times. 

What's happening is that the system is running fine. Lots of memory is being correctly deallocated and marked for garbage collection. But, since it's not running out of memory yet, no garbage collection is happening. Eventually (after several days or even weeks, depending on how much memory you have and how heavily the system is used), it runs out of memory. Then it starts garbage collection. With a LOT of memory to garbage collect, this takes a LOOONG time (on the order of minutes) and, during that time, performance is affected. 

The recommendation from the experts (not me, I'm just trying not to step in the holes) is that you should tune the JVM SLOWLY. Make small changes and wait a long time to see their long term affects. 

Simply allocating the maximum you have is NOT recommended because, as I say, it will work in the short term but cause problems in the multiple week time frame. 

Sachin Shukla January 18, 2023

@Dave Menconi As you suggested if we increase JVM memory, system performance goes down.

We have seen this case in our instance after increasing the JVM memory to 22GB from 16GB system was too slow and CPU utilization was going to 95%.

We are getting many hung thread as compare to earlier, do you have any suggestion on it?

 

Regards,

Sachin

Suggest an answer

Log in or Sign up to answer