Page History
Table of Contents | ||||||
---|---|---|---|---|---|---|
|
Info |
---|
The software DSpace relies on does not come out of the box optimized for large repositories. Here are some tips to make it all run faster. |
...
Note | ||
---|---|---|
| ||
At the time of writing, DSpace recommends you should give Tomcat >= 512MB of PermGen Space 1024MB of Java Heap Memory to ensure optimal DSpace operation. Most larger sized or highly active DSpace installations however tend to allocate more like 1024MB 1536MB to 2048MB of Java Heap Memory. |
...
Tomcat is especially memory hungry, and will benefit from being given lots of RAM. To set the amount of memory available to Tomcat, use either the JAVA_OPTS
or CATALINA_OPTS
environment variable, e.g:
Code Block |
---|
CATALINA_OPTS=-Xmx512mXmx1024m -Xms512mXms256m |
OR
Code Block |
---|
JAVA_OPTS=-Xmx512mXmx1024m -Xms512mXms256m |
The above example sets the maximum Java Heap memory to 1024MB. They also allow the memory allocation to reset to a smaller number, if Tomcat determines that is necessary. In our experience Tomcat makes good memory to 512MBallocation decisions, if you allow it to do so.
Info | ||
---|---|---|
| ||
You can use either environment variable. |
...
Note | ||
---|---|---|
| ||
At the time of writing, DSpace recommends you should give Tomcat >= 128MB 192MB of PermGen Space to ensure optimal DSpace operation. |
...
To increase the amount of PermGen memory available to Tomcat (default=64MB), use either the JAVA_OPTS
or CATALINA_OPTS
environment variable, e.g:
Code Block |
---|
CATALINA_OPTS=-XX:MaxPermSize=128m192m |
OR
Code Block |
---|
JAVA_OPTS=-XX:MaxPermSize=128m192m |
The above example sets the maximum PermGen memory to 128MB192MB.
Info | ||
---|---|---|
| ||
You can use either environment variable. |
Note |
---|
Please note that you can obviously set both Tomcat's Heap space and PermGen Space together similar to: |
Note |
---|
On an Ubuntu machine (10.04) at least, the file |
Use the Parallel Garbage Collector
This is a fairly complicated performance tuning subject, for more information, see this article on performance tuning Tomcat. However, a number of large repositories have enabled the parallel garbage collector, and it seems to help with throughput. If you find you have to increase your heap memory allocation very high to maintain stability, you may wish to consider enabling parallel garbage collection as well.
Code Block |
---|
JAVA_OPTS="$JAVA_OPTS -XX:+UseParallelGC" |
Give the Command Line Tools More Memory
...
By default, DSpace only provides 256MB of maximum heap memory to its command-line tools.unmigrated-wiki-markup
If you'd like to provide *more* memory to command-line tools, you can do so via the {{JAVA_OPTS
}} environment variable (which is used by the {{\[dspace
\]/bin/dspace
}} script). Again, it's the same syntax as above:
Code Block |
---|
JAVA_OPTS=-Xmx512m -Xms512m
|
This is especially useful for big batch jobs, which may require additional memory.
Note |
---|
You can also edit the {{\also edit the |
Give the Command Line Tools More Java PermGen Space Memory
...
By default, Java only provides 64MB of maximum PermGen space.unmigrated-wiki-markup
If you'd like to provide *more* PermGen Space to command-line tools, you can do so via the {{JAVA_OPTS
}} environment variable (which is used by the {{\[dspace
\]/bin/dspace
}} script). Again, it's the same syntax as above:
Code Block |
---|
JAVA_OPTS=-XX:MaxPermSize=128m
|
...
Info | ||
---|---|---|
| ||
For more hints/tips with PostgreSQL configurations and performance tuning, see also: |
SOLR Statistics Performance Tuning
This @mire article covers two different methods to enhance performance for the SOLR statistics, that are part of DSpace 1.6 and newer versions.
...