In developing my Plugin I have discovered the performance difference between the iup.list and iup.tree controls is remarkable.
iup.list provides a basic drop-down list similar to a menubar item.
On my Windows 7 PC these lists are populated at roughly 1,000 items per second.
If the list has a tool tip defined, then it is about 4 times slower.
With large lists this becomes intolerably slow.
The autoredraw option Set to NO to add many items to the list makes no difference.
iup.tree provides a hierarchical tree similar to a Windows Explorer navigation pane.
Even though the tree structure is more complex, these are populated at roughly 50,000 items per second.
Whether it has a tool tip or not makes no difference.
Also autoredraw has little effect.
Is there anywhere this can be reported to get an improvement or an explanation?
ID:5850
* IUP List Versus Tree Performance
- tatewise
- Megastar
- Posts: 27087
- Joined: 25 May 2010 11:00
- Family Historian: V7
- Location: Torbay, Devon, UK
- Contact:
IUP List Versus Tree Performance
Mike Tate ~ researching the Tate and Scott family history ~ tatewise ancestry
- Jane
- Site Admin
- Posts: 8442
- Joined: 01 Nov 2002 15:00
- Family Historian: V7
- Location: Somerset, England
- Contact:
IUP List Versus Tree Performance
The 'IUP discussion list' is your best bet, Antonio is pretty good at checking in to these things.
http://sourceforge.net/projects/iup/
http://sourceforge.net/projects/iup/
Jane
My Family History : My Photography "Knowledge is knowing that a tomato is a fruit. Wisdom is not putting it in a fruit salad."
My Family History : My Photography "Knowledge is knowing that a tomato is a fruit. Wisdom is not putting it in a fruit salad."
- tatewise
- Megastar
- Posts: 27087
- Joined: 25 May 2010 11:00
- Family Historian: V7
- Location: Torbay, Devon, UK
- Contact:
IUP List Versus Tree Performance
This is Antonio's reply to my E-mail:
Is there anything that can be done regarding his new iup DLL ?
e.g.
Can I simply preserve the existing C:Program Files (x86)Family Historian 5.0 BetaProgramiup.dll and replace it with his new iup.dll, then after testing it, restore the original?
I have a workaround for the TIP attribute.Hi Mike,
Thanks for reporting this.
IupList is not used very often for large lists. But looking carefully at the code I found a possible source for your problem.
I uploaded a new iup DLL at:
http://www.tecgraf.puc-rio.br/~scuri/tmp/
Please let me know if this helps. I suggest using appenditem.
Regarding to the TIPS attribute I have no idea why it makes it slower. The tips management is completely independent from the IupList.
Best Regards,
Antonio Scuri
Is there anything that can be done regarding his new iup DLL ?
e.g.
Can I simply preserve the existing C:Program Files (x86)Family Historian 5.0 BetaProgramiup.dll and replace it with his new iup.dll, then after testing it, restore the original?
Mike Tate ~ researching the Tate and Scott family history ~ tatewise ancestry
- Jane
- Site Admin
- Posts: 8442
- Joined: 01 Nov 2002 15:00
- Family Historian: V7
- Location: Somerset, England
- Contact:
IUP List Versus Tree Performance
Yes that should work fine (unless he has a newer version off IUP all round, but I would do a reboot when you swap them, I know the DLLs should be cleared when FH ends, but just to be safe.
Jane
My Family History : My Photography "Knowledge is knowing that a tomato is a fruit. Wisdom is not putting it in a fruit salad."
My Family History : My Photography "Knowledge is knowing that a tomato is a fruit. Wisdom is not putting it in a fruit salad."
- tatewise
- Megastar
- Posts: 27087
- Joined: 25 May 2010 11:00
- Family Historian: V7
- Location: Torbay, Devon, UK
- Contact:
IUP List Versus Tree Performance
Unfortunately, simply substituting the iup.dll did not work.
As soon as a Plugin is run then FH stops working.
I note that the FH iup.dll is 486 KB whereas Antonio's iup.dll is only 436 KB.
It is no longer urgent because the tree list is a better option than the dropdown list for my Map Life Facts Plugin.
As soon as a Plugin is run then FH stops working.
I note that the FH iup.dll is 486 KB whereas Antonio's iup.dll is only 436 KB.
It is no longer urgent because the tree list is a better option than the dropdown list for my Map Life Facts Plugin.
Mike Tate ~ researching the Tate and Scott family history ~ tatewise ancestry