Add linux throughput testing support
authorMichelle McDaniel <adiaaida@gmail.com>
Wed, 8 Mar 2017 22:58:03 +0000 (22:58 +0000)
committerMichelle McDaniel <adiaaida@gmail.com>
Fri, 10 Mar 2017 00:27:46 +0000 (16:27 -0800)
commit9191ff3c8a3740402096a10654342144b2a140e9
tree02b40772f4712b9e0f43c6a865efe798ad9df67b
parentcf7d6d924842e8975ede592fbab096bad9f780c8
Add linux throughput testing support

This change modifies perf-prep.sh, run-throughput-perf.py and perf.groovy
to add support for linux throughput testing. The following changes have
been made:

1. Update run-throughput-perf to specify the jit differently on linux and
windows. Create a new set of dlls to crossgen on linux. The following are
removed: CodeAnalysis, CodeAnalysis.VisualBasic, CodeAnalysis.Csharp
(these do not exist in the corefx runtime dir that we will be using on
linux), System, System.Core, System.XML (these are significantly smaller
on Linux than windows). Make the list of architectures a dictionary so we
can specify different arches for different oses. Change the path to
crossgen/the jit to the Product directory. Change the timer to
timeit.default_timer, which will pick the most accurate timer for each
platform.

2. Modify perf-prep for throughput purposes. In throughput testing, we
need to enlist in corefx and build it. We pick a specific commit to enlist
in so that testing will be consistent. The rest of the work that perf-prep
can be skipped for throughput testing, as we are not running tests.

3. Update perf.groovy with throughput jobs on Linux.
perf.groovy
tests/scripts/perf-prep.sh
tests/scripts/run-throughput-perf.py