Bug 185119 - WordLock doesn't need per-thread data
Summary: WordLock doesn't need per-thread data
Status: RESOLVED FIXED
Alias: None
Product: WebKit
Classification: Unclassified
Component: New Bugs (show other bugs)
Version: WebKit Nightly Build
Hardware: Unspecified Unspecified
: P2 Normal
Assignee: Geoffrey Garen
URL:
Keywords: InRadar
Depends on:
Blocks:
 
Reported: 2018-04-29 08:33 PDT by Geoffrey Garen
Modified: 2018-04-29 16:06 PDT (History)
10 users (show)

See Also:


Attachments
Patch (4.40 KB, patch)
2018-04-29 08:41 PDT, Geoffrey Garen
no flags Details | Formatted Diff | Diff

Note You need to log in before you can comment on or make changes to this bug.
Description Geoffrey Garen 2018-04-29 08:33:23 PDT
WordLock doesn't need per-thread data
Comment 1 Geoffrey Garen 2018-04-29 08:41:46 PDT
Created attachment 339092 [details]
Patch
Comment 2 Geoffrey Garen 2018-04-29 08:44:21 PDT
Benchmark results look neutral to me:

~/OpenSource> ./LockSpeedTest-baseline wordlock 1 4 1 0 40 2
WTFWordLock: 40014.319 KHz
WTFWordLock = {40014.319};
=====
~/OpenSource> ./LockSpeedTest wordlock 1 4 1 0 40 2
WTFWordLock: 41667.624 KHz
WTFWordLock = {41667.624};
=====
~/OpenSource> ./LockSpeedTest-baseline wordlock 1 4 10 20 40 2
WTFWordLock: 15257.590 KHz
WTFWordLock = {15257.590};
=====
~/OpenSource> ./LockSpeedTest wordlock 1 4 10 20 40 2
WTFWordLock: 15336.106 KHz
WTFWordLock = {15336.106};
=====
~/OpenSource> ./LockSpeedTest-baseline wordlock 1 4 128 1024 40 2
WTFWordLock: 1505.244 KHz
WTFWordLock = {1505.244};
=====
~/OpenSource> ./LockSpeedTest wordlock 1 4 128 1024 40 2
WTFWordLock: 1506.206 KHz
WTFWordLock = {1506.206};
Comment 3 Yusuke Suzuki 2018-04-29 10:02:17 PDT
Comment on attachment 339092 [details]
Patch

r=me if it does not cause perf regression. I think it should be perf-neutral since basically constructing ThreadData is cheap.
I think we can use this approach in ParkingLot to remove ThreadSpecific.
Comment 4 WebKit Commit Bot 2018-04-29 10:29:18 PDT
Comment on attachment 339092 [details]
Patch

Clearing flags on attachment: 339092

Committed r231151: <https://trac.webkit.org/changeset/231151>
Comment 5 WebKit Commit Bot 2018-04-29 10:29:20 PDT
All reviewed patches have been landed.  Closing bug.
Comment 6 Radar WebKit Bug Importer 2018-04-29 10:30:56 PDT
<rdar://problem/39825097>
Comment 7 Geoffrey Garen 2018-04-29 16:06:20 PDT
> I think we can use this approach in ParkingLot to remove ThreadSpecific.

That would be cool!