Table of Contents

Performance Tips

Improving Performance with Large Data Sets

Here are some tips for maximizing performance with large data sets:


Running Java in server mode

Some versions of Java can operate in a "server" mode which can improve performance, but at the expense of start up time. This is mainly designed for long running server process which start once and then run for a long time.

Tests with Instant JChem have shown that running in server mode can provide a significant performance gain, particularly for structure searches and chemical terms calculations (approximately 20% faster), but this comes at the expense of slower startup time (approx 2-3 times slower).

If you wish to try this you can edit the IJC startup script to use a version of Java that supports server mode and specify the -server flag (note: the version of Java that is installed with IJC does not support server mode):

  1. Close Instant JChem
  2. Find where Instant JChem was installed, and find the file [instant-jchem-home]/etc/instantjchem.conf
  3. Make a backup of this file!
  4. Open this file with a text editor
  5. Find the line that defines the 'default_options' property. Edit this line, adding the flag -J-server
  6. Uncomment the line with the jdkhome= definition and edit this to point to a Java1.5 JDK that supports the server mode (e.g. a standard Java1.5 JDK).
  7. Save the changes and restart Instant JChem.

Indexes and performance

In the right circumstances adding an index to your database table can provide a significant performance benefit, but if added innapropropriately this can actually slow things down. Some indexes are added automatically for you where they are necessary. Others you need to add yourself. Generally IJC performs very well without additional indexes so you should not add any unless you know you have a performance problem that can be solved by adding an index. Indexes will typically be of little benefit with small tables.

1. Situations where adding an index is strongly recommended

In these situations adding an index will always be expected to be of big benefit:

2. Situations where adding an index may be benefitial

In these situations adding an index may be of benefit (but be careful to consider the potential downside listed in the next section):

3. Situations where adding an index should be avoided

In these situations adding an index may have a detrimental effect:



Copyright © 1998-2008 ChemAxon Ltd. All rights reserved.