| 116 | |
| 117 | === Performance and Memory Usage === |
| 118 | |
| 119 | Large TTCN-3 test suites tend to take quite a while to process (both for parsing and for analysis). Therefore, it is generally a good idea to set larger memory limits (as far as the system allows) in order to improve processing time and avoid possible memory problems. The default setting is to set the '''upper''' memory limit to 512MB, which by today's standards is rather conservative, however, it should be sufficient for smaller to medium-sized TTCN-3 test suites. The optimal memory limits are not easy to determine, and ways to automatically calculate and set these depending on the available system resources, the size of the input TTCN-3 test suite, and the configuration in use are currently being investigated. In the meantime, should processing take too long or memory errors occur, it is advisable to set a higher upper memory limit, depending on the available system resources. This can be done by manually editing the parameters in the start scripts ({{{t3q.bat}}} and {{{t3q}}} for Windows and Unix respectively). These files should be edited very carefully, as mistakes may prevent T3Q from starting. Under Windows, in {{{t3q.bat}}}, set the {{{-Xmx}}} parameter in following line: |
| 120 | {{{ |
| 121 | set JAVA_CMD=%JAVA% -Xmx512m -cp "%CLASSPATH%" org.etsi.t3q.T3Q |
| 122 | }}} |
| 123 | to the desired upper limit (e.g. to {{{-Xmx1024m}}} for a 1GB upper memory limit). |
| 124 | |
| 125 | Under Unix, the {{{t3q}}} file can be changed in a similar fashion by setting the {{{-Xmx}}} parameter in the |
| 126 | {{{ |
| 127 | JAVA_CMD="$JAVA -Xmx512m -Xss128m -cp $CLASSPATH org.etsi.t3q.T3Q" |
| 128 | }}} |
| 129 | line to the desired upper limit. |
| 130 | |
| 131 | In general, the optimal setting depends on the size of the TTCN-3 test suite and to a degree on the selected quality checks. |
| 132 | |
| 133 | This is a temporary solution for an emerging problem, until either a way to automatically configure the memory settings is implemented or a more convenient way to manually change the memory settings is implemented. |