The Syncfusion WPF GridDataControl uses a LINQ-based engine for strongly typed object collections. It uses plain LINQ expression trees to formulate any query execution internally. PLINQ provides a parallel implementation of the LINQ pattern for executing operations in separate batch threads (for more details on the PLINQ documentation, refer to the MSDN link http://msdn.microsoft.com/en-us/library/dd997425.aspx). We have leveraged this ability to wrap up existing LINQ expressions on top of PLINQ with the AsParallel() extension, which can be enabled in the grid by setting the property as UsePLINQ=true. The grid supports PLINQ for sorting, grouping, and summaries.
We tested the results with a random Northwind Orders generator that constructed one million records.
Observable Collection Demo
Below are a few screenshots taken with dual-core and quad-core machines (running on Windows 7) when the grid is sorted by the ShipCountry column.
Dual Core (Windows 7 OS)
Quad Core (Windows 7 OS)
The above results clearly show that a quad-core machine keeps the CPU usage at 50% less than the dual-core machine for the same process.