Performance and User Experience

We've done the testing and now we've written the whitepapers: the performance of the Silverlight xamGrid™ and the ASP.NET AJAX WebDataGrid™ is the fastest on the market. We show you the architecture, and share with you the complete test results in our Silverlight performance whitepaper and ASP.NET AJAX performance whitepaper.

Everyone talks about user experience today – it is a key differentiator in the new economy. When most people talk about the user experience of their application, the conversation is generally focused on the aesthetic design of their application, which while important is merely one aspect of the overall user experience. Often people neglect to think about an area of user experience that can have just as strong of an impact on the overall experience of their application as the applications aesthetics – application performance!

At Infragistics, we take the user experience of your application very seriously, which means we not only focus on helping you provide a world class visual experience, but also we look at the performance experience of our controls in your application. Learn how we approach the architecture and testing of our Silverlight data grids and ASP.NET AJAX data grids so we can deliver to you the fastest data grids on the market.

Why does performance matter so much in the overall user experience?

  • Higher Customer Satisfaction
  • Improved End User Productivity
  • Resource Efficiency in Hardware and Bandwidth

For the whole story on our testing methodology, how we approach performance, and for a complete list of the performance results, download the performance whitepapers for Silverlight and ASP.NET AJAX today!!

 

Fastest Silverlight Data Grid on the Market

Infragistics xamGrid is the fastest Silverlight data grid control available, with the blazing speed you need for data-intensive line of business applications. Here is a brief excerpt of our performance testing.

Data Binding

To test the performance of basic data binding we created tests that measure the amount of time needed to bind the xamGrid to different ItemSources and render up to the LayoutUpdated event (or similar event). We believe this most accurately represents what an end user experiences when waiting for data to load.

Table 1: Binding to IList - 10 columns and 1,000,000 rows of data.

  Infragistics xamGrid Competitor I Competitor II
Time duration in ms 1,881 2,964 57% Slower 5,541 194% Slower
Memory Usage Before in KB 91,958 91,809 0.1% Less 92,279 0.3% More
Memory Usage After in KB 99,100 222,233 124% More 109,552 10% More

 

Table 2: Binding to ObservableCollection - 10 columns and 1,000,000 rows of data.

  Infragistics xamGrid Competitor I Competitor II
Time duration in ms 1,949 2,878 47% Slower 5,463 180% Slower
Memory Usage Before in KB 91,756 90,183 1% Less 89,891 2% Less
Memory Usage After in KB 95,726 232,346 142% More 109,603 14% More

Vertical Scrolling

xamGrid offers two options when it comes to scrolling with the scrollbar thumb – Deferred or Real Time (Immediate). When you have hundreds of thousands of rows, deferred scrolling lets your users preview the record's value as they scroll (for example, in a tool tip) without having to populate all of the cells until the user has reached the point in the data grid where they want to go.

We created tests to measure the performance of both options.

Deferred Scrolling

We could only test one competing grid with deferred scrolling, as it was the only one that offered this feature.

Table 3: Deferred scrolling with 91 columns and 600 rows of data.

  Infragistics xamGrid Competitor I
Time duration in ms 874 14,160 1,519% Slower
Memory Usage Before in KB 16,431 45,265 175% More
Memory Usage After in KB 16,615 80,926 387% More

Real-time Scrolling

As you will see in the performance results in table 4, real time (or immediate) scrolling is a big problem in Silverlight. Most vendor samples you see will load limited amounts of data because the scrolling performance of the control is very poor.

Table 4: Real-time scrolling with 91 columns and 600 rows of data.

  Infragistics xamGrid Competitor I Competitor II
Time duration in ms 1,267 29,845 2,256% Slower 4615 264% Slower
Memory Usage Before in KB 21,601 52,242 141% More 122,090 465% More
Memory Usage After in KB 22,781 106,722 368% More 125,268 449% More

 

To get the rest of the results, download the Performance in the Infragistics Silverlight xamGrid whitepaper today!!

 

Fastest ASP.NET AJAX Data Grid Available

Likewise, we performed performance testing and load testing on our ASP.NET AJAX data grid, WebDataGrid. Built on the Aikido Framework and taking advantage of lightweight ASP.NET AJAX messaging between the client and server, it excels past the competition. Here are some of our test results.


Single-user Browser Operations

These scenarios tested the full cycle – browser rendering (using Internet Explorer 7) and server response time of our ASP.NET AJAX WebDataGrid versus several competitors' data grids. These tests more closely represent the customer experience when using the tested data grids in Web applications found used by banks, call centers, insurance companies, etc.

Table 1: Time (duration in ms) - 10 columns and 300,000 rows of data.

  Infragistics WebDataGrid Competitor I Competitor II
Paging 174 210 21% Slower 447 157% Slower
Numeric Sorting 535 561 4% Slower 800 49% Slower
String Sorting 549 576 4% Slower 828 50% Slower
Numeric Filtering 172 193 12% Slower 491 185% Slower
String Filtering 191 223 16% Slower 515 169% Slower

Payload Size

How do we achieve such amazing performance in WebDataGrid? The simple answer is – a rock solid architecture in the Aikido Framework on which the WebDataGrid is based, and a payload size that is smaller than our competitors. To demonstrate this, we used Fiddler 2 to monitor the data exchanged between server and client. In the table below, we show a summary of the bytes sent and received per operation.

Table 2: Payload Size (in bytes) – 10 columns and 300,000 rows of data.

  Infragistics WebDataGrid Competitor I Competitor II
Initial Request 208,242 286,168 309,064
Numeric Filtering 30,062 43,135 22,554
Unset Numeric Filtering 30,238 43,100 21,943
Paging 30,491 43,435 26,904
Numeric Sorting 32,208 43,381 23,914
Total 331,241 459,219 39% More 404,379 22% More

Load Testing

When we saw how big our advantage is with single-user, we decided to see what happens when we load our and competitors' grids with lots of concurrent users. We repeated the following scenario using a commercial Web loading tool on the client PC to simulate the load for 1 hour, with a think time between all operations of 2 seconds, and a ramp up to 50 users total (adding 2 users every 15 seconds).

The load test scenario was:

  • Initial request
  • Numeric filtering ("Less than")
  • Clear Numeric filtering
  • Paging ("Next")
  • Paging ("Previous")
  • Numeric sorting

Table 3: Load Testing 50 Concurrent Users for 1 Hour – 10 columns and 300,000 rows of data.

  Infragistics WebDataGrid Competitor I
Average Throughput* (bytes/second) 584,873 884,022 51% More
Average Hits/second** 55.34 49.01 15% Less

* - Amount of throughput (in bytes) on the Web server during the load test. Throughput represents the amount of data that the users received from the server at any given second.
** - The number of hits made on the Web server by users during each second of the load test.


The data grid control of Competitor II could not handle 50 users in this environment. IIS crashes each time with an out of memory error.

As you can see on the first row, our Average Throughput (bytes/second) is 51% better than "Competitor I." This comes directly from our excellent payload size.

On the second row you see that using our WebDataGrid, users have around 15% better productivity per unit time.

Finally, you should not forget that these results are achieved in environments where both PCs are on one network switch. In real life, the client and server may be separated by great distances and the network bandwidth will be limited, so this percentage will increase because of the amazing payload size of WebDataGrid. These benefits could result in tens of thousands of dollars a week, and potentially millions of dollars per year in savings.

To get the complete results, download the Performance in the Infragistics ASP.NET AJAX Data Grid whitepaper today!!