2

I need to load a huge amount of data in DXGrid(WPF) , I know that i have to use XPInstantFeedbackSource or XPServerCollectionSource to achieve the requirements, but dont know which one to use , any idea on cons and pros?

enter image description here

Ehsan Zargar Ershadi
  • 24,115
  • 17
  • 65
  • 95

1 Answers1

3

Both the XPInstantFeedbackSource and the XPServerCollectionSource are server mode data sources. In this mode a data-aware control sends requests to a bound data source to retrieve appropriate portions of data when required. There are two distinct server modes that differ in the way controls interact with bound data sources:

Important note: all the Instant Feedback Sources are a read-only data sources. To enable data editing in server mode, use the Server Mode Sources with the AllowEdit property set to true.

PS. As in regular data-binding modes, in server modes, bound controls allow data to be edited, sorted, grouped and filtered. To learn about the limitations of server modes, see Server Mode Limitations.

P.P.S. Please also take a look at the following article: Binding to Data

UPDATE: Real CPU usage of InstantFeedBack UI(tm) (Notebook, Intel Core i5, 2.67 GHc, 8gb RAM, NVIDIA GeeForce GT 425M, Win7x64): InstantFeedBack UI Performance

The total CPU Usage strongly depends only of WPF rendering subsystem performance (wpfgfx_v0400.dll).

DmitryG
  • 17,677
  • 1
  • 30
  • 53
  • Thanks Dmitry, I have made a test in WPFwith DXGrid with following issues: 10000 records loaded by XPCollection and XPInstantFeedbackSource. XPCollection works good bu takes a lot of time and consumed a lot of memory, XPInstantFeedbackSource is good bu seems to have a bug!! after loading data it still consumes a log of CPU usage (7 to 40)% (tested on Windows XP, 7 32bit and 7 64bit), any idea ? – Ehsan Zargar Ershadi Jan 31 '12 at 05:17
  • The grid powered by XPInstantFeedbackSource takes CPU only on asynchronous data loading caused by data-aware operations or scrolling and on updating visible cells after these operations/scrolling completed. Thus the CPU usage is caused in general by your data server. The completed operations/scrolling does not use CPU at all. I have tried 1.000.000 records on local MSSQLServer - fast scrolling/sorting/groupping takes up to 25% CPU and then falls down to default 1-2% (notebook, Core i5, 8gb RAM, Win7 x64) – DmitryG Jan 31 '12 at 11:47
  • Thanks Dmitry, Your answer is right but i do not agree with you on the my case, the comment you made is what i do expect, but unfortunately it is not working on any machine that i tried. I did not make up my own code , i rather used the exact GridDemo.exe file ported by Devexpress 11.2.5 in WPF. I have updated the question and added the screen shot. – Ehsan Zargar Ershadi Jan 31 '12 at 13:26
  • I have updated my answer with the real CPU usage illustrations (I'm using the latest [DX online demo](http://demos.devexpress.com/DemoCenter/#WPF/)). As far as I can see - all right with performance. If you see the performance downfalls on your system, firstly check graphics system capabilities(starts from [rendering tier][19]), available for your application. – DmitryG Feb 01 '12 at 09:15
  • DmitryG don't give up, I know this discussion is getting log , but I'm getting to a point, yet i need you to make me clear what do you mean by [rendering tier][19] ? I told my customer to change it's graphic card and make a new test. are there any settings in WPF to force it to use GPU instead of CPU ? – Ehsan Zargar Ershadi Feb 01 '12 at 10:30
  • Sorry for [rendering tier][19] it's my markdown-formatting error). I mean the [following article](http://msdn.microsoft.com/en-us/library/ms742196.aspx). – DmitryG Feb 01 '12 at 12:09