Open Bug 1621651 Opened 4 years ago Updated 3 years ago

DAMP Perf regression in total-after-gc (15%)

Categories

(DevTools :: General, defect, P3)

defect

Tracking

(Not tracked)

People

(Reporter: jdescottes, Unassigned)

References

(Blocks 1 open bug, Regression)

Details

(Keywords: regression)

total-after-gc regressed by 15% after landing Bug 1579042.
You can run this test locally using

./mach test devtools/client/framework/test/allocations/browser_allocations_target.js

This should reproduce locally without too much trouble.
The tab descriptor introduces more objects on the client side since it involves a new Front, but the 15% increase was surprising initially.

However considering that the test is only creating a target and attaching to it, it might make sense to see such an increase.

Looking at the "new" allocations with the patch

DIFF FOR Call = 19
DIFF FOR Promise = 14
DIFF FOR PromiseDebugInfo = 14
DIFF FOR AsyncFunctionGenerator = 6
DIFF FOR LexicalEnvironment = 9
DIFF FOR Function = 36
DIFF FOR Object = 42
DIFF FOR Array = 21
DIFF FOR Map = 5
DIFF FOR Array Iterator = 9
DIFF FOR Iterator = 2
DIFF FOR PromiseReactionRecord = 11
DIFF FOR Arguments = 4
DIFF FOR Set Iterator = 3
DIFF FOR SavedFrame = 8

Total: 203

Doing it 5 more times

Without patch: 18896
With path: 20917
Difference: 11%

Percentage is getting a bit smaller (from 14-15% with only one run)

Try to only return the descriptor

total-after-gc becomes negative: -630

Impact of attaching

With the patch: attaching makes the # of allocations go from 1500 to 2200
Without the patch: attaching makes the # of allocations go from 1150 to 1950
So 700/800 in both cases.

Bugbug thinks this bug is a defect, but please change it back in case of error.

Type: task → defect

Because this bug's Severity has not been changed from the default since it was filed, and it's Priority is P3 (Backlog,) indicating it has been triaged, the bug's Severity is being updated to S3 (normal.)

Severity: normal → S3
Has Regression Range: --- → yes
You need to log in before you can comment on or make changes to this bug.