Summary: | Safari hangs during test262 run in CodeCache::pruneSlowCase | ||||||||
---|---|---|---|---|---|---|---|---|---|
Product: | WebKit | Reporter: | Mark Hahnenberg <mhahnenberg> | ||||||
Component: | JavaScriptCore | Assignee: | Mark Hahnenberg <mhahnenberg> | ||||||
Status: | RESOLVED FIXED | ||||||||
Severity: | Normal | CC: | ggaren | ||||||
Priority: | P2 | ||||||||
Version: | 528+ (Nightly build) | ||||||||
Hardware: | Unspecified | ||||||||
OS: | Unspecified | ||||||||
Attachments: |
|
Description
Mark Hahnenberg
2013-03-27 19:59:05 PDT
Created attachment 195613 [details]
Patch
Comment on attachment 195613 [details]
Patch
Hmm, this patch is an improvement, but the resulting behavior is still a regression in performance over shipping Safari. I think we're hitting the prune case a lot (add 1 element, remove 1 element). Maybe it makes more sense to coalesce a lot of calls to m_map.remove() into a single call to pruneSlowCase?
Comment on attachment 195613 [details] Patch View in context: https://bugs.webkit.org/attachment.cgi?id=195613&action=review > Source/JavaScriptCore/runtime/CodeCache.cpp:50 > + while (m_size > m_capacity && numberOfEntries() >= workingSetMaxEntries) { This is wrong. Created attachment 195622 [details]
Patch
Comment on attachment 195622 [details]
Patch
r=me
> the resulting behavior is still a regression in performance over shipping Safari
Is this still the case in your latest patch? Regression on what?
(In reply to comment #6) > > the resulting behavior is still a regression in performance over shipping Safari > > Is this still the case in your latest patch? Regression on what? Nope, it behaves the same now. (In reply to comment #7) > (In reply to comment #6) > > > the resulting behavior is still a regression in performance over shipping Safari > > > > Is this still the case in your latest patch? Regression on what? > > Nope, it behaves the same now. Sorry, the regression was in performance. The first patch was better in performance than on ToT, but it would still hang a little. The latest patch's performance matches that of shipping Safari. Committed r147150: <http://trac.webkit.org/changeset/147150> |