Performance testing on scrollableDataTable in 3.3.0 beta1
rulinsun Nov 28, 2008 2:38 PM
I did some sanity tests on scrollableDataTable of the 3.3.0 beta1 and got following performance data for the different number of columns of the scrollableDataTable. I used in memory calculation to get same set of data, the time to retrieve data is ignorable.
138 columns
error[13:12:10,471]: Total time of data loading of 20 rows is: 8598 miliseconds.
warn[13:12:10,486]: ...Server load time: 3963
warn[13:12:10,486]: ...DOM updated time: 3012
warn[13:12:10,486]: ...Grid invalidation time: 733
warn[13:12:10,502]: ...Selection mng time: 890
70 columns
error[13:15:57,774]: Total time of data loading of 20 rows is: 3608 miliseconds.
warn[13:15:57,774]: ...Server load time: 1500
warn[13:15:57,774]: ...DOM updated time: 1436
warn[13:15:57,774]: ...Grid invalidation time: 391
warn[13:15:57,790]: ...Selection mng time: 281
36 columns
error[13:25:42,017]: Total time of data loading of 4 rows is: 1218 miliseconds.
warn[13:25:42,017]: ...Server load time: 609
warn[13:25:42,017]: ...DOM updated time: 234
warn[13:25:42,017]: ...Grid invalidation time: 250
warn[13:25:42,033]: ...Selection mng time: 125
20 columns
error[13:24:07,794]: Total time of data loading of 20 rows is: 969 miliseconds.
warn[13:24:07,794]: ...Server load time: 375
warn[13:24:07,794]: ...DOM updated time: 422
warn[13:24:07,794]: ...Grid invalidation time: 125
warn[13:24:07,794]: ...Selection mng time: 47
10 columns
error[13:31:30,570]: Total time of data loading of 20 rows is: 687 miliseconds.
warn[13:31:30,570]: ...Server load time: 312
warn[13:31:30,570]: ...DOM updated time: 297
warn[13:31:30,570]: ...Grid invalidation time: 47
warn[13:31:30,570]: ...Selection mng time: 31
5 Columns
error[13:35:04,900]: Total time of data loading of 20 rows is: 594 miliseconds.
warn[13:35:04,900]: ...Server load time: 250
warn[13:35:04,900]: ...DOM updated time: 187
warn[13:35:04,900]: ...Grid invalidation time: 32
warn[13:35:04,900]: ...Selection mng time: 125
I didn't actually select any row, but there was still significant time for selection manager to restore the selection.
My general feeling is that the scrollableDataTable is getting better but still not stable enough. User has to scoll gently, otherwise, you will see:
1) Gap of rows (looks like loading stopped, user has to scroll again to restore the table)
2) If there are multiple rows selected, sometime, the highlighted rows on screen were not those user selected, but if user acts on them, they actually are right selected rows.
3) At the end of scrolling, rows are shaked up down a little (seem like the program re-adjust the scrollbar position due to rounding of the calculcated positon).
Thanks!
Rulin