Implement serial jsc stress tests
Created attachment 402277 [details] Patch
See also https://bugs.webkit.org/show_bug.cgi?id=210790
Should this be applying only when $memoryLimited is true? Can your current option be used in that way? e.g. //@ serial! if $memoryLimited
Also, I think stress/check-is-constant-non-cell-should-not-array-profile-during-osr-exit.js could benefit from this treatment, unless it can be rewritten to take less memory (at least on an rpi3, it seems that it can run in serial). See Bug 213209.
Created attachment 402423 [details] Patch
(In reply to Guillaume Emont from comment #3) > Should this be applying only when $memoryLimited is true? Can your current > option be used in that way? e.g. > > //@ serial! if $memoryLimited Ugh, yah, of course. That was the intention, thanks for catching this.
(In reply to Guillaume Emont from comment #4) > Also, I think > stress/check-is-constant-non-cell-should-not-array-profile-during-osr-exit. > js could benefit from this treatment, unless it can be rewritten to take > less memory (at least on an rpi3, it seems that it can run in serial). See > Bug 213209. Right. Including check-is-constant-non-cell-should-not-array-profile-during-osr-exit.js and marking both tests with //@ serial! if $memoryLimited in the new patch.
This is a really useful patch, thanks @angelos. I am retrying builds on ews to see if all is good.
Comment on attachment 402423 [details] Patch View in context: https://bugs.webkit.org/attachment.cgi?id=402423&action=review > JSTests/stress/check-is-constant-non-cell-should-not-array-profile-during-osr-exit.js:1 > +//@ serial! if $memoryLimited I think we would like to only serialize this test on ARMv7 or MIPS. Right now it is still crashing on ARMv7, according EWS
Comment on attachment 402423 [details] Patch View in context: https://bugs.webkit.org/attachment.cgi?id=402423&action=review >> JSTests/stress/check-is-constant-non-cell-should-not-array-profile-during-osr-exit.js:1 >> +//@ serial! if $memoryLimited > > I think we would like to only serialize this test on ARMv7 or MIPS. Right now it is still crashing on ARMv7, according EWS The issue with ARMv7 is that this test is being killed by memory monitor. I think we can handle this issue when we properly configure `JSCTEST_memoryLimit` into our bots.
Created attachment 403946 [details] Patch
Created attachment 403952 [details] Patch
Created attachment 403963 [details] Patch
Created attachment 404091 [details] Patch
Comment on attachment 404091 [details] Patch The idea is awesome!! Can you create ChangeLog by uploading the patch via `webkit-patch upload --update-changelogs`? And can you describe what this patch does by how in ChangeLog?
(In reply to Yusuke Suzuki from comment #15) > Comment on attachment 404091 [details] > Patch > > The idea is awesome!! > Can you create ChangeLog by uploading the patch via `webkit-patch upload > --update-changelogs`? And can you describe what this patch does by how in > ChangeLog? Sure, I can do that :-) I'll try to test the patch locally first though. One consideration is that serial! will be completely ignored by the new --gnu-parallel-runner; but perhaps this can go in regardless and updating --gnu-parallel-runner to honor serial! can be a separate patch. Also, since we're setting --retries for the parallel runner, a memory-hungry test is likely to pass eventually anyway, since the chances are it will get rescheduled until it's eventually the only "large" test running on the memory-limited device.
Created attachment 416241 [details] Patch
Updated the patch to also work with --gnu-parallel-runner and to not introduce serial! for any tests yet. Would rather do that for individual tests along with bumping the current default limit in buildbots where the remote boards have this much RAM, otherwise serial tests will still run into the default JSCTEST_memoryLimit of 600MB.
Comment on attachment 416241 [details] Patch r=me, can you file a bug doing the same thing for `jsc-stress-test-writer-ruby.rb`?
Committed r271179: <https://trac.webkit.org/changeset/271179> All reviewed patches have been landed. Closing bug and clearing flags on attachment 416241 [details].
<rdar://problem/72831399>