You are viewing a plain text version of this content. The canonical link for it is here.
Posted to c-dev@xerces.apache.org by "Boris Kolpackov (JIRA)" <xe...@xml.apache.org> on 2009/11/03 08:12:00 UTC
[jira] Updated: (XERCESC-1452) DOMNamedNodeMapImpl::item() 10x
preformance improvement
[ https://issues.apache.org/jira/browse/XERCESC-1452?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]
Boris Kolpackov updated XERCESC-1452:
-------------------------------------
Affects Version/s: (was: 2.6.0)
3.0.1
Fix Version/s: 3.1.0
Assignee: Boris Kolpackov
MAP_SIZE is the number of buckets in the hash table used to store things like entities, etc., as well as attributes. I also tend to think that 193 for attribute map is a bit too much since in most cases we don't have more than a few attributes. This implementation also doesn't not support rehashing so I wonder why don't we use one of the HashMap templates. I will check into this.
> DOMNamedNodeMapImpl::item() 10x preformance improvement
> -------------------------------------------------------
>
> Key: XERCESC-1452
> URL: https://issues.apache.org/jira/browse/XERCESC-1452
> Project: Xerces-C++
> Issue Type: Improvement
> Components: DOM
> Affects Versions: 3.0.1
> Environment: All environments
> Reporter: Jeff Keasler
> Assignee: Boris Kolpackov
> Fix For: 3.1.0
>
>
> 10 second bug fix -- change MAP_SIZE constant in DOMNamedNodeMapImpl.hpp from 193 to 17.
> I use literally millions of DomNodes each having 2-10 attributes and DOMNamedNodeMapImpl::item() is horribly implemented. It makes sense to fix the problem by changing the definition of MAP_SIZE to 17. Even people with 50 attributes will get decent performance if you make this change, wheras the vast majority of people who only use 5-10 will see up to a 10x performance improvement.
> Thank you.
--
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.
---------------------------------------------------------------------
To unsubscribe, e-mail: c-dev-unsubscribe@xerces.apache.org
For additional commands, e-mail: c-dev-help@xerces.apache.org