[lldb-dev] [PATCH] make dosep.ty test driver multi-threadable
Ed Maste
emaste at freebsd.org
Mon Mar 17 10:34:33 PDT 2014
>> Maybe "@serializeTest"?
>
> That's worth a try.
I have a slight worry that this approach could mask real concurrency
issues in LLDB itself; if we know that the issues are only in the test
code it seems more reasonable. Even in that case though tests could
run concurrently on the same machine, e.g. a buildbot host that builds
and tests multiple configurations.
> In the event that your idea works out to eliminate those failures, there is another element we can consider. We can have Python give us the # cores available (if there's something portable to do that), and when not otherwise specified, pick a reasonable default # threads to get decent test run performance without needing the environment variable specified. This would give anybody running the tests a decent test run speedup without having to read docs on configuring the environment variable. (I think this was Steve Pucci's idea but definitely something we discussed.)
I was going to make that suggestion too. Python does have a portable
way to get the core count:
>>> import multiprocessing
>>> multiprocessing.cpu_count()
8
Anyhow, explicitly serializing the tests that intermittently fail
would be no worse than today, and worth it to improve the cycle time.
More information about the lldb-dev
mailing list