[BUG?] Performance problem with TreeViewers under Windows XP [message #490899] |
Mon, 12 October 2009 10:22 |
Simon Chemouil Messages: 24 Registered: July 2009 |
Junior Member |
|
|
Hello,
I believe I discovered a performance bug in JFace TreeViewers when a
given node has many children (> 1000), and this bug happens only on
Windows (tested with Windows XP, no WPF backend). I am developing under
GNU/Linux and the GTK backend the treeviewers behave perfectly fine there.
I have tested the performance with both lazy and non-lazy Tree content
providers (ILazyTreeContentProvider & ITreeContentProvider) and the
lazy+virtual style is completely unusable under Windows XP in this
usecase (with as little as 1000 children, which seem reasonable) because
the scrollbar/keyboard scrolling is sluggish.
When using a non-lazy content provider, the Windows scrollbar behaves
perfectly fine, but the selection of items remains very sluggish, as
well as keyboard navigation using arrows.
None of these problems happen under SWT over GTK, so it might be a SWT
problem, but I experience them from the JFace level (I don't have much
experience with virtual style directly in SWT).
As I am unable to provide a patch/fix for the bug, I have isolated the
problem in a demonstration bundle that displays a simple model ; it
defines two views with treeviewers displaying the same model, one with
the lazy content provider, and the other without.
I have commited it to github where you can checkout the tree or simply
download as a zip file:
http://github.com/simon-chemouil/org.eclipse.jface.viewers.t ests.performance
More details are in the README file.
I would be grateful if a JFace/lazy expert could have a look and check
if I'm doing things right (which I believe I am, I'm following the API
carefully, checked all the relevant bugs on Bugzilla), and confirm
whether it is or not a bug.
I'm posting here instead of Bugzilla because I think this is the nominal
use case to have 10k elements under Windows XP and I would be really
surprised if there was no workaround.
Thanks for the help!
--
Simon Chemouil
|
|
|
Re: [BUG?] Performance problem with TreeViewers under Windows XP [message #490900 is a reply to message #490899] |
Mon, 12 October 2009 10:40 |
Thomas Schindl Messages: 6651 Registered: July 2009 |
Senior Member |
|
|
Hi,
If something works appropriate under GTK but fails on Windows it's very
likely a SWT problem. I know that Windows has problems with Big
Tables/Trees but the people over at the swt newsgroup might have more input.
Tom
Simon Chemouil schrieb:
> Hello,
>
> I believe I discovered a performance bug in JFace TreeViewers when a
> given node has many children (> 1000), and this bug happens only on
> Windows (tested with Windows XP, no WPF backend). I am developing under
> GNU/Linux and the GTK backend the treeviewers behave perfectly fine there.
>
> I have tested the performance with both lazy and non-lazy Tree content
> providers (ILazyTreeContentProvider & ITreeContentProvider) and the
> lazy+virtual style is completely unusable under Windows XP in this
> usecase (with as little as 1000 children, which seem reasonable) because
> the scrollbar/keyboard scrolling is sluggish.
>
>
> When using a non-lazy content provider, the Windows scrollbar behaves
> perfectly fine, but the selection of items remains very sluggish, as
> well as keyboard navigation using arrows.
>
>
> None of these problems happen under SWT over GTK, so it might be a SWT
> problem, but I experience them from the JFace level (I don't have much
> experience with virtual style directly in SWT).
>
> As I am unable to provide a patch/fix for the bug, I have isolated the
> problem in a demonstration bundle that displays a simple model ; it
> defines two views with treeviewers displaying the same model, one with
> the lazy content provider, and the other without.
>
> I have commited it to github where you can checkout the tree or simply
> download as a zip file:
> http://github.com/simon-chemouil/org.eclipse.jface.viewers.t ests.performance
>
>
> More details are in the README file.
>
> I would be grateful if a JFace/lazy expert could have a look and check
> if I'm doing things right (which I believe I am, I'm following the API
> carefully, checked all the relevant bugs on Bugzilla), and confirm
> whether it is or not a bug.
>
> I'm posting here instead of Bugzilla because I think this is the nominal
> use case to have 10k elements under Windows XP and I would be really
> surprised if there was no workaround.
>
> Thanks for the help!
>
|
|
|
Powered by
FUDForum. Page generated in 0.03429 seconds