Runtime comparison dataview load

Hi all,
.just in case it is of interest, I did a small comparision of the different methods to load 10,000 data records into a dataview, based on a dataview example:

  1. Load 10,000 records during initialization (“data”:…): average of 32ms total time

  2. Load 10,000 records after initialization using parse: average of 38ms total time

  3. Load in a loop 10,000 records with .add(): average of 61ms

So I think it is safe to say that all options work really fast, while data: and parse() seem to be the fastest with add() a bit slower, but still in acceptable timeframe.

all the best

Frank

…interestingly, loading 100 panels into a scrollview, where each panel contains a dashboard with 9 panels takes actually 30 seconds, 30,300ms. So even this is a total of 1,000 items, this combination is about 1000 times slower. Will try some more options, this is a bit too slow and also blocks the browser-window during loading for 30sec.

Have to correct above, most of the runtime was apparently due to the content of the dashboard panels, the structure of:
1 scrollview

  • 100 portlets
    • 1 dashboards
      • 9 panels
        takes actually around 270ms :smile:

What is the response time without data parsing?
Do you preload data and then init views?

I build the data here in an internal array to only look at JS performance and use the same for… loop for all options. Data: and parse: were provided and loaded at time of init, add() afterwards.

Try to defer data loading/parsing. Either by webix.delay or native settimeout. This way visual part will not be blocked during data operations.

…yes, was thinking the same, for slow content certainly useful, thanks @intregal