Page MenuHomePhabricator

Make loading library maps much cheaper
ClosedPublic

Authored by epriestley on Jun 17 2015, 2:13 AM.
Tags
None
Referenced Files
Unknown Object (File)
Wed, Apr 17, 4:20 PM
Unknown Object (File)
Fri, Apr 5, 9:05 AM
Unknown Object (File)
Mar 10 2024, 6:44 AM
Unknown Object (File)
Feb 14 2024, 8:34 PM
Unknown Object (File)
Feb 5 2024, 2:12 AM
Unknown Object (File)
Jan 29 2024, 3:22 AM
Unknown Object (File)
Jan 23 2024, 8:15 AM
Unknown Object (File)
Jan 20 2024, 4:48 PM
Subscribers

Details

Summary

Ref T8575. Currently, if there are any extensions to a library, we do a small amount of extra work every time we go to load a symbol. However, we do this often enough that it mounts up. This work also requires that PHP copy the library map, which is often large.

We can just cache the result of this work and be able to pull the map more cheaply.

Test Plan

Saw homepage cost drop 29% (273ms -> 195ms). This effect is much larger than I'd expect to see in production, since installs should only benefit if they have extensions.

Diff Detail

Repository
rPHU libphutil
Branch
perf3
Lint
Lint Passed
Unit
Tests Passed
Build Status
Buildable 6822
Build 6844: [Placeholder Plan] Wait for 30 Seconds

Event Timeline

epriestley retitled this revision from to Make loading library maps much cheaper.
epriestley updated this object.
epriestley edited the test plan for this revision. (Show Details)
epriestley added a reviewer: btrahan.
btrahan edited edge metadata.
This revision is now accepted and ready to land.Jun 17 2015, 5:30 PM
This revision was automatically updated to reflect the committed changes.