WebKit Bugzilla
New
Browse
Log In
×
Sign in with GitHub
or
Remember my login
Create Account
·
Forgot Password
Forgotten password account recovery
NEW
186731
RuleFeatureSet wastes 185KB of HashTable capacity on cnn.com
https://bugs.webkit.org/show_bug.cgi?id=186731
Summary
RuleFeatureSet wastes 185KB of HashTable capacity on cnn.com
Simon Fraser (smfr)
Reported
2018-06-16 12:26:28 PDT
Using tooling from
bug 186698
, loading can and running "notifyutil -p com.apple.WebKit.dumpHashTableCapacity" shows: Wasted capacity: 185536 bytes (used 91968 of 277504 bytes, utilization: 33.14%) - 145 allocations 1 0x1074e1d45 WTF::HashTable<WTF::AtomicString, WTF::KeyValuePair<WTF::AtomicString, std::__1::unique_ptr<WTF::Vector<WebCore::RuleFeature, 0ul, WTF::CrashOnOverflow, 16ul>, std::__1::default_delete<WTF::Vector<WebCore::RuleFeature, 0ul, WTF::CrashOnOverflow, 16ul> > > >, WTF::KeyValuePairKeyExtractor<WTF::KeyValuePair<WTF::AtomicString, std::__1::unique_ptr<WTF::Vector<WebCore::RuleFeature, 0ul, WTF::CrashOnOverflow, 16ul>, std::__1::default_delete<WTF::Vector<WebCore::RuleFeature, 0ul, WTF::CrashOnOverflow, 16ul> > > > >, WTF::AtomicStringHash, WTF::HashMap<WTF::AtomicString, std::__1::unique_ptr<WTF::Vector<WebCore::RuleFeature, 0ul, WTF::CrashOnOverflow, 16ul>, std::__1::default_delete<WTF::Vector<WebCore::RuleFeature, 0ul, WTF::CrashOnOverflow, 16ul> > >, WTF::AtomicStringHash, WTF::HashTraits<WTF::AtomicString>, WTF::HashTraits<std::__1::unique_ptr<WTF::Vector<WebCore::RuleFeature, 0ul, WTF::CrashOnOverflow, 16ul>, std::__1::default_delete<WTF::Vector<WebCore::RuleFeature, 0ul, WTF::CrashOnOverflow, 16ul> > > > >::KeyValuePairTraits, WTF::HashTraits<WTF::AtomicString> >::HashTable() 2 0x1074e1d25 WTF::HashMap<WTF::AtomicString, std::__1::unique_ptr<WTF::Vector<WebCore::RuleFeature, 0ul, WTF::CrashOnOverflow, 16ul>, std::__1::default_delete<WTF::Vector<WebCore::RuleFeature, 0ul, WTF::CrashOnOverflow, 16ul> > >, WTF::AtomicStringHash, WTF::HashTraits<WTF::AtomicString>, WTF::HashTraits<std::__1::unique_ptr<WTF::Vector<WebCore::RuleFeature, 0ul, WTF::CrashOnOverflow, 16ul>, std::__1::default_delete<WTF::Vector<WebCore::RuleFeature, 0ul, WTF::CrashOnOverflow, 16ul> > > > >::HashMap() 3 0x1074e1c95 WTF::HashMap<WTF::AtomicString, std::__1::unique_ptr<WTF::Vector<WebCore::RuleFeature, 0ul, WTF::CrashOnOverflow, 16ul>, std::__1::default_delete<WTF::Vector<WebCore::RuleFeature, 0ul, WTF::CrashOnOverflow, 16ul> > >, WTF::AtomicStringHash, WTF::HashTraits<WTF::AtomicString>, WTF::HashTraits<std::__1::unique_ptr<WTF::Vector<WebCore::RuleFeature, 0ul, WTF::CrashOnOverflow, 16ul>, std::__1::default_delete<WTF::Vector<WebCore::RuleFeature, 0ul, WTF::CrashOnOverflow, 16ul> > > > >::HashMap() 4 0x1074e1c13 WebCore::RuleFeatureSet::RuleFeatureSet() 5 0x1074ddaa5 WebCore::RuleFeatureSet::RuleFeatureSet() 6 0x1074dd54d WebCore::DocumentRuleSets::DocumentRuleSets(WebCore::StyleResolver&) 7 0x1074ddb0d WebCore::DocumentRuleSets::DocumentRuleSets(WebCore::StyleResolver&) 8 0x10754e60f WebCore::StyleResolver::StyleResolver(WebCore::Document&)
Attachments
Add attachment
proposed patch, testcase, etc.
Radar WebKit Bug Importer
Comment 1
2018-06-16 12:26:50 PDT
<
rdar://problem/41189113
>
Simon Fraser (smfr)
Comment 2
2018-06-16 12:33:06 PDT
Also this code path: Wasted capacity: 97504 bytes (used 34848 of 132352 bytes, utilization: 26.33%) - 145 allocations 1 0x1074e1d45 WTF::HashTable<WTF::AtomicString, WTF::KeyValuePair<WTF::AtomicString, std::__1::unique_ptr<WTF::Vector<WebCore::RuleFeature, 0ul, WTF::CrashOnOverflow, 16ul>, std::__1::default_delete<WTF::Vector<WebCore::RuleFeature, 0ul, WTF::CrashOnOverflow, 16ul> > > >, WTF::KeyValuePairKeyExtractor<WTF::KeyValuePair<WTF::AtomicString, std::__1::unique_ptr<WTF::Vector<WebCore::RuleFeature, 0ul, WTF::CrashOnOverflow, 16ul>, std::__1::default_delete<WTF::Vector<WebCore::RuleFeature, 0ul, WTF::CrashOnOverflow, 16ul> > > > >, WTF::AtomicStringHash, WTF::HashMap<WTF::AtomicString, std::__1::unique_ptr<WTF::Vector<WebCore::RuleFeature, 0ul, WTF::CrashOnOverflow, 16ul>, std::__1::default_delete<WTF::Vector<WebCore::RuleFeature, 0ul, WTF::CrashOnOverflow, 16ul> > >, WTF::AtomicStringHash, WTF::HashTraits<WTF::AtomicString>, WTF::HashTraits<std::__1::unique_ptr<WTF::Vector<WebCore::RuleFeature, 0ul, WTF::CrashOnOverflow, 16ul>, std::__1::default_delete<WTF::Vector<WebCore::RuleFeature, 0ul, WTF::CrashOnOverflow, 16ul> > > > >::KeyValuePairTraits, WTF::HashTraits<WTF::AtomicString> >::HashTable() 2 0x1074e1d25 WTF::HashMap<WTF::AtomicString, std::__1::unique_ptr<WTF::Vector<WebCore::RuleFeature, 0ul, WTF::CrashOnOverflow, 16ul>, std::__1::default_delete<WTF::Vector<WebCore::RuleFeature, 0ul, WTF::CrashOnOverflow, 16ul> > >, WTF::AtomicStringHash, WTF::HashTraits<WTF::AtomicString>, WTF::HashTraits<std::__1::unique_ptr<WTF::Vector<WebCore::RuleFeature, 0ul, WTF::CrashOnOverflow, 16ul>, std::__1::default_delete<WTF::Vector<WebCore::RuleFeature, 0ul, WTF::CrashOnOverflow, 16ul> > > > >::HashMap() 3 0x1074e1c95 WTF::HashMap<WTF::AtomicString, std::__1::unique_ptr<WTF::Vector<WebCore::RuleFeature, 0ul, WTF::CrashOnOverflow, 16ul>, std::__1::default_delete<WTF::Vector<WebCore::RuleFeature, 0ul, WTF::CrashOnOverflow, 16ul> > >, WTF::AtomicStringHash, WTF::HashTraits<WTF::AtomicString>, WTF::HashTraits<std::__1::unique_ptr<WTF::Vector<WebCore::RuleFeature, 0ul, WTF::CrashOnOverflow, 16ul>, std::__1::default_delete<WTF::Vector<WebCore::RuleFeature, 0ul, WTF::CrashOnOverflow, 16ul> > > > >::HashMap() 4 0x1074e1c13 WebCore::RuleFeatureSet::RuleFeatureSet() 5 0x1074ddaa5 WebCore::RuleFeatureSet::RuleFeatureSet() 6 0x10752a80b WebCore::RuleSet::RuleSet() 7 0x10752a855 WebCore::RuleSet::RuleSet() 8 0x1074deeb2 WebCore::DocumentRuleSets::resetAuthorStyle()
Note
You need to
log in
before you can comment on or make changes to this bug.
Top of Page
Format For Printing
XML
Clone This Bug