Closed Bug 975403 Opened 10 years ago Closed 10 years ago

Support chunking in jit-test harness

Categories

(Core :: JavaScript Engine, defect)

ARM
Windows XP
defect
Not set
normal

Tracking

()

RESOLVED FIXED
mozilla30

People

(Reporter: dminor, Assigned: dminor)

References

Details

Attachments

(1 file)

The jit-tests run slow on the linux test machines (bug 973946). I think the short term solution to this is to add chunking support to the harness.

What we've done for other harnesses is to add two additional options:
--this-chunk and --total-chunks. There harness will then split the list of all tests based upon the total number of chunks and only run the chunk specified by --this-chunk.

We'll eventually need this for the jit-tests on Android. Last I checked, we're now taking 158 minutes to run the tests there, and we're not going to magically get faster Android test machines.
Assignee: nobody → dminor
Status: NEW → ASSIGNED
Attachment #8379748 - Flags: review?(terrence)
Comment on attachment 8379748 [details] [diff] [review]
Add chunking support.

Review of attachment 8379748 [details] [diff] [review]:
-----------------------------------------------------------------

Neat! r=me

::: js/src/jit-test/jit_test.py
@@ +169,5 @@
> +    if options.total_chunks > 1:
> +        total_tests = len(test_list)
> +        tests_per_chunk = math.ceil(total_tests/float(options.total_chunks))
> +        start = int(round((options.this_chunk - 1)*tests_per_chunk))
> +        end = int(round(options.this_chunk*tests_per_chunk))

Add spaces around all of the * and / operators too.

@@ +171,5 @@
> +        tests_per_chunk = math.ceil(total_tests/float(options.total_chunks))
> +        start = int(round((options.this_chunk - 1)*tests_per_chunk))
> +        end = int(round(options.this_chunk*tests_per_chunk))
> +        if end > total_tests:
> +            end = total_tests

Python slices are explicitly smart enough to handle this case automatically.

>>> [0, 1, 2][1:100000]
[1, 2]

I think it's clear enough from context (e.g. the code in question will be actively used in production) that having the manual bounds adjustment is probably not necessary.
Attachment #8379748 - Flags: review?(terrence) → review+
https://hg.mozilla.org/mozilla-central/rev/ca9e7deea2fa
Status: ASSIGNED → RESOLVED
Closed: 10 years ago
Resolution: --- → FIXED
Target Milestone: --- → mozilla30
You need to log in before you can comment on or make changes to this bug.

Attachment

General

Created:
Updated:
Size: