We use cookies to give you the best experience on our website. If you continue to browse, then you agree to our privacy policy and cookie policy. Image for the cookie policy date

Performance (particularly on first display)

We have successfully deployed the Syncfusion editor as a replacement to our old and dated Active-X control, with the same level (or slightly greater) of functionality. However, we have been unable to get the performance to a widely acceptable level.

We are using the VBScript language definition with some additional syntax elements, a number of global functions and number of global objects each with their own functions and properties. The performance hit appears to be centered around the initial display of the control after defining the language.

Early attempts at defining our language syntax and intellisense hierarchy led to an unacceptable display time of ~25 seconds on a top-end system (specs below). Defining the language only on first start-up, rather than every time, lead to this large overhead being experienced only on first display.
A major refactor changed the mechanism for intellisense. Rather than using the Syncfusion language definition, this is now handled in code, and the start up time is down to nearly 6 seconds. This is still an unacceptable performance burden for our users, who are used to an immeasurably short start-up time (<0.5 seconds).

Attempts to use such techniques as parallel processing have failed - the language definition appears to be bound to the script control's thread, and pre-defining it on background threads simply resulted in an exception when displaying the script control.

What we really need is some advice on our usage of the control, and possibly some internal optimizations of the code to meet our customers' expectations of performance whilst maintaining the high level of functionality required.

Reference system:
Dual Xeon X5482 CPUs providing 8 effective CPUs clocked at 3.2GHz
RAM 8Gb
Operating System Windows Server 2008 x64

Internal logging illustrating performance by activity:

First display:
19:56:42.501 # 9 Info: Constructing control
19:56:44.402 # 9 Info: Initialised control
19:56:44.411 # 9 Info: SyncFusion.ScriptEditor Data took 00:00:00.0050005
19:56:44.413 # 9 Info: Control ready to display
19:56:44.502 # 9 Info: SyncFusion.ScriptEditor SetLanguage took 00:00:00.0610061
19:56:44.505 # 9 Info: SyncFusion.ScriptEditor SetLanguage - defining language VBScript
------------
19:56:45.208 # 9 Info: Loaded user syntax customisations from .\Syntax.xml
19:56:45.209 # 9 Info: SyncFusion.ScriptEditor DefineLanguage took 00:00:00.7030703
19:56:48.019 # 9 Info: SyncFusion.ScriptEditor Data took 00:00:00.0060006
19:56:48.022 # 9 Info: SyncFusion.ScriptEditor Parsing text took 00:00:00.0020002
19:56:48.121 # 9 Info: SyncFusion.ScriptEditor OnLoad clearCache took 00:00:00.0910091
19:56:48.139 # 9 Info: Starting first paint 00:00:05.6385638 after control created

Subsequent calls:
19:58:16.431 # 9 Info: Constructing control
19:58:17.203 # 9 Info: Initialised control
19:58:17.207 # 9 Info: SyncFusion.ScriptEditor Data took 00:00:00.0020002
19:58:17.207 # 9 Info: Control ready to display
19:58:17.277 # 9 Info: SyncFusion.ScriptEditor SetLanguage took 00:00:00.0630063
19:58:17.278 # 9 Info: SyncFusion.ScriptEditor SetLanguage - language VBScript already defined
19:58:17.282 # 9 Info: SyncFusion.ScriptEditor Data took 00:00:00.0030003
19:58:17.282 # 9 Info: SyncFusion.ScriptEditor Parsing text took 00:00:00
19:58:17.294 # 9 Info: Starting first paint 00:00:00.8630863 after control created

From this, it appears that the initialization of the control after defining the language is the key time overhead.

For reference, the language syntax defines 11 top level classes containing in total ~600 methods and properties, and 192 global functions. Details of the language elements available on request.

1 Reply

KN Karikalan Natarajan Syncfusion Team May 11, 2010 08:49 AM UTC

Hi,

Thanks for your interest in Syncfusion Products.

I am afraid that i was not able to reproduce the performance issue with default XML file which is available in the source of the edit control.

On our further analysis, the performance of the Edit control while load the VB script file is as follows.

Painting at First Time:00:00:00.1220750
Painting at Second Time:00:00:00.0117192

Could you send your xml file for define the configure the language so that we could sort out the cause of the performance issue and try to resolve it at the earliest?

Please let me know if you need further information on this.

Thanks,
Karikalan N

Loader.
Live Chat Icon For mobile
Up arrow icon