Support multiple devices and queues in crucible
Edit: 2019-01-28 to match discussion consensus here, and !30 (merged).
When crucible logs test results, it will output this suffix. For example:
crucible: crucible: pass : func.abc.q0
crucible ls-tests
would continue to dump out test names without the suffix.
crucible run
would run all tests on all queue-families. The output would add the suffix to all test results.
crucible run func.abc
would run the given test on all queue-families.
crucible run func.abc.q0
would run the given test on queue-family 0.
crucible run *.q1
would attempt to run all tests on queue-family 1.
crucible run *.q*
will attempt to match tests containing ".q", but not recognize it as an attempt to select a queue-family.
crucible run func.*.q1
would attempt to run all tests that match the wildcard on queue-family 1.
crucible run func.*.q1 xyz.*.q1
would attempt to run all tests that match the wildcards on queue-family 1.
crucible run func.*.q1 xyz.*
would attempt to run all tests that match func.* on queue-family 1, and tests that match xyz.* on all detected queue-familes.
Cc: @airlied, @chadversary, @craftyguy, @jekstrand, @majanes