|Date tip published:||02/17/2012|
|Description:||Learn how to speed up your Notes and Domino Designer with this quick and easy tip!|
To learn more about XPages development use the following links:
Developing XPages using Domino Designer 8.5
XPages Development 2 for Notes and Domino 8.5
Mobile XPages Development for Domino 8.5
Speed Up Your Notes and Domino Designer 8.5 Client
This tip was updated on 11/26/2012 to reflect information in the following IBM technote:
Want to reduce the time to start your Notes and Designer clients and get better overall performance? You can with a few configuration tweaks described below.
Notes and Domino Designer run in Eclipse, a Java-based application. There are two settings in the jvm.properties file that you can change to increase the initial memory assigned to the Eclipse environment and to set the maximum memory used by Eclipse. These settings are listed and described below:
These settings should be set in multiples of 8, such as: 128m, 512m, 768m, etc.
vmarg.Xmx=-Xmx256m - This setting represents the maximum amount of memory (in MB) used by the Eclipse client. This setting can be increased from the default 256MB, however, never set this to more than 1024 MB. For my systems, I have this set to 512m and find I don't reach that limit too often (more on monitoring memory usage later in this tip). If you have a machine with limited memory then be more conservative with these settings. If you have 2GB or more of memory then you can increase this setting to 768m or 1024m depending on what other applications you may also be running when you use Notes/Designer.
vmarg.Xms=-Xms48m - This setting represents the amount of memory (in MB) assigned when Notes/Designer first starts up. The default is 48MB, and this should be increased to at least 256 MB. This will improve the initial load time of the Notes/Designer clients as well as overall performance once they are started. Never specify a value for this setting to be more than the first setting (maximum memory that can be assigned). IBM suggests setting this to 512m if you have at least 2GB of memory.
vmarg.Xmca8k - Defines the block size by which Notes/Designer will increase memory by when either need more than the minimum. If you have more than 2GB in your system set this to 512k per the IBM technote.
Read what one person said about changing these settings!
Massive difference: to fully open the designer on a big database and load the list of design elements is now < that 3 seconds, and around 2 if designer is already loaded. I could load my browser and read a few articles in the time it took to load before ( on Chrome obviously not IE :-) ). 3 minute loads were not unheard of on a daily basis, usually at least a minute, a few times, it hit 5 or even more. Plus all the seconds lost in opening the design elements. I can support in the region of 20-30 databases a day and change 100's of design elements, it's a huge impact for me.
Procedure: Changing the Memory Settings
- Shutdown the Notes and Domino Designer clients. You may also need to restart Windows or use the nsd -kill command (via a command prompt in the Notes program directory) to be sure all the Notes threads are not active.
- Navigate to the jvm.properties file in the <Notes Program Directory>\framework\rcp\deploy directory.
- Edit the jvm.properties file with your favorite text editor like Notepad. Change the two settings highlighted in the image (they are typically the first two lines in this file). Below is a suggested initial setting for most computers with at least 2GB of memory.
- Save the jvm.properties file.
- Restart Notes and Designer.
Important Note!!! Whenever you install a Fix Pack, reinstall Domino Designer, or upgrade to a newer version the jvm.properties file will probably get over-written and your changes you made will be lost. Simply repeat these steps to re-enable these memory settings.
Monitoring the Memory Used by Notes/Designer
There is a preference that can be set to monitor the memory used by the Notes and Designer clients. The 'Show heap status' option is set in the Designer Preferences but will affect both the Notes and Designer clients. To set this option, open the Preferences dialog from Domino Designer and then navigate to the General page. Check the 'Show heap status' option as shown in the image below. Click [Apply] and then [OK] to save the changes and close the dialog.
Memory statistics are now displayed in the bottom left corner of each window as shown in the image below. The first number is the current amount of memory actually being used and the second number is the amount of memory currently allocated.
When you hover the mouse pointer over the memory statistics it displays a popup with this same information plus also shows what the maximum memory is set to. In this case, (vmarg.Xmx=-Xmx512m).
NOTE: Once you close the Notes and Designer clients, the Heap Status will not be displayed the next time the clients are started. To display the heap status you need to go back into the Designer Preferences and re-set the 'Show heap status' option (even though the option is checked, the Heap Status will not display until you uncheck and then check this option again).
Monitor these settings and if you find your memory usage is close to the maximum set (the third number when you hover over the Heap Status popup) set your maximum memory used to a higher value if possible. You may need to add more physical memory if your system is going to be memory constrained (use the Windows Task Manager to monitor your Windows memory usage). Set the initial memory setting to be around the memory usage you typically see (the first number in the Heap Status display) to reduce the need for Eclipse to request more memory from the operating system.