Solution
It is expected that an Analysis Automation Procedure (.ANP file) will have a longer execution time in SystemLink Server than it does in DIAdem. The following factors contribute to the additional execution time.
Performing the Search Query
If the ANP has been configured with a Search Query, SystemLink must perform this search and identify the data files to execute on before the ANP analysis script can start. When testing the ANP directly in DIAdem, the data file is manually selected from a pop-up window.
Therefore, when monitoring the execution time from DIAdem, this only takes into account the duration of the analysis script and not the Search Query. Once an ANP is triggered from SystemLink, additional time is required to perform the Search Query for each execution.
Launching DIAdem Workers
DIAdem Workers are background processes launched by SystemLink to execute the ANP. Their behaviour varies depending on whether the ANP uses Visual Basic Script (VBScript) or Python.
When executing an ANP directly in DIAdem, the following considerations must be made:
- If programming using VBScript, DIAdem launches a new instance of the VBScript Engine each time a script executes.
- If programming using Python, DIAdem launches one instance of the Python Engine which persists between Python scripts and is only released once DIAdem is closed.
When running an ANP from SystemLink:
- If the ANP uses VBScript, the DIAdem Worker persists in memory between tasks.
- If the ANP uses Python, the DIAdem Worker is automatically terminated between tasks. Therefore, SystemLink requires extra time to launch a new DIAdem Worker for each task.