Last week, I shared details of our upcoming WPF Dashboard Viewer (CTP). In this post, I’ll describe one of the performance enhancements we’ve incorporated into DevExpress Dashboard v17.2.
Performance is Priority #1
By utilizing a new way to prep data for analysis, we’ve improved data processing and calculation speed across numerous usage scenarios. DevExpress Dashboard now splits underlying data into separate parts which are processed in different CPU threads. As you might expect, this means that you can expect improved performance proportional to the number of cores in your CPU.
Faster is Better
Rather than waste time with hyperbole, we thought it best to illustrate how much faster DevExpress Dashboard v17.2 is when compared to its predecessor. We created the following test to determine data processing speed on a machine with the Intel Core i7 processor (4-cores): Microsoft's Contoso Dataset with the following SQL request (12M records returned)
select "FactOnlineSales".*, "DimProduct".*, "DimProductSubcategory".*,"DimProductCategory".* from ((("dbo"."FactOnlineSales" "FactOnlineSales" inner join "dbo"."DimProduct" "DimProduct" on ("DimProduct"."ProductKey" = "FactOnlineSales"."ProductKey")) inner join "dbo"."DimProductSubcategory" "DimProductSubcategory" on ("DimProductSubcategory"."ProductSubcategoryKey" = "DimProduct"."ProductSubcategoryKey")) inner join "dbo"."DimProductCategory" "DimProductCategory" on ("DimProductCategory"."ProductCategoryKey" = "DimProductSubcategory"."ProductCategoryKey"))
First Test Case
In our first test, we measured data calculation speed for the Grid Dashboard item using the following dimension and measure columns:
- Dimensions: ProductCategoryName, ProductSubcategoryName, DateKey (with the Quarter-Year group interval)
- Measures: ProductName (Count summary type), TotalCost (Sum), SalesQuantity (Sum)
Data calculation performance for our first test case was as follows:
Second Test Case
For the second test, the following dimension and measures were used:
- Dimensions: ProductCategoryName, ProductSubcategory, BrandName
- Measures: TotalCost, SalesQuantity (all with the Sum summary types).
Data calculation performance for our second test case was as follows:
Needless to say, DevExpress Dashboard v17.2 is significantly faster than its predecessor (3x faster for the first test case and 5x faster for the second).
Should you have any questions about the performance related enhancements to DevExpress Dashboard for .NET or want to share your thoughts with us, feel free to email us support@devexpress.com or submit a comment below.