Open Bug 705342 Opened 13 years ago Updated 6 years ago

Disable GC/CC while test is running

Categories

(Testing Graveyard :: Peptest, defect)

defect
Not set
normal

Tracking

(Not tracked)

People

(Reporter: ahal, Unassigned)

References

Details

GC/CC is known to cause unresponsiveness. There is ongoing work on incremental GC to mitigate this, but there is not a whole lot we can do about it. This means GC/CC unresponsiveness should be ignored. The easiest way to do this is probably to disable GC/CC entirely while the tests are running (we can re-enable and do a GC run in-between tests if we need to). It looks like https://developer.mozilla.org/en/SpiderMonkey/JSAPI_Reference/JS_SetGCCallback might be the best way to go, though I'm not sure if there's an easier way to do this via javascript.
I should note that as of bug 625302 CC can be run whenever (doesn't need to be preceded by GC) so the above method of disabling GC won't stop all CC runs. I'm not sure how important this case is for practical purposes.
Blocks: 674606
It would be interesting to see the measurements with GC/CC enabled vs disabled
So we need to get a JSContext for the above function which I believe Jetpack is doing here: http://mxr.mozilla.org/mozilla-central/source/js/jetpack/JetpackParent.cpp#83 I'll write an xpcom component to try it out.
Assignee: nobody → ahalberstadt
Status: NEW → ASSIGNED
Assignee: ahalberstadt → nobody
Product: Testing → Testing Graveyard
No assignee, updating the status.
Status: ASSIGNED → NEW
No assignee, updating the status.
No assignee, updating the status.
No assignee, updating the status.
No assignee, updating the status.
You need to log in before you can comment on or make changes to this bug.