History log of /external/autotest/server/cros/network/netperf_runner.py
Revision Date Author Comments (<<< Hide modified files) (Show modified files >>>)
9476b04fb0a8422ef3c83f89523359d5e6f46745 19-Aug-2015 Paul Stewart <pstew@chromium.org> Netperf Runner: Restart netserver on failure

CL:292944 revealed that in some situations netserv exits while
running repeated netperf tests. This CL restarts netserv when
this condititon is detected.

BUG=chromium:490408
TEST=Run network_WiFi_Perf.ht20 test from a drone
TEST=(These failures never reproed from my desk)

Change-Id: I458ebac6406a9be0eb4efa804d7f53a0506a6d8b
Reviewed-on: https://chromium-review.googlesource.com/295139
Reviewed-by: Tien Chang <tienchang@chromium.org>
Commit-Queue: Paul Stewart <pstew@chromium.org>
Tested-by: Paul Stewart <pstew@chromium.org>
/external/autotest/server/cros/network/netperf_runner.py
693fee142f4bc4ace6c649a8fd9179d3736e46cb 19-Aug-2015 Paul Stewart <pstew@chromium.org> Netperf Runner: Test that result is None

Fix "dereference" of result in retry loop.

BUG=chromium:522595
TEST=Run this test

Change-Id: Iea5a00fd1ab4836843e0af421f20fa3282a9b932
Reviewed-on: https://chromium-review.googlesource.com/295481
Reviewed-by: Tien Chang <tienchang@chromium.org>
Commit-Queue: Paul Stewart <pstew@chromium.org>
Tested-by: Paul Stewart <pstew@chromium.org>
/external/autotest/server/cros/network/netperf_runner.py
825cbce73194a5640c230eb35ce47f8312c970b5 13-Aug-2015 Paul Stewart <pstew@chromium.org> netperf: Retry internal netperf timeout failures

Netperf sets its own internal timeout for time-limited runs. With
some small probability these can fail, especially on CPU-limited
machinery. This CL detects such failures and retries the netperf
run.

BUG=chromium:490408
TEST="killall -ALRM netperf" on the DUT during the test run

Change-Id: I7731246b6c5ea6f2df85eae95f94d1d313ff0253
Reviewed-on: https://chromium-review.googlesource.com/292944
Reviewed-by: mukesh agrawal <quiche@chromium.org>
Reviewed-by: Tien Chang <tienchang@chromium.org>
Commit-Queue: Paul Stewart <pstew@chromium.org>
Tested-by: Paul Stewart <pstew@chromium.org>
/external/autotest/server/cros/network/netperf_runner.py
630d6b4de994abf65f393b9b598defdaebd4dbb6 14-Feb-2015 Ben Chan <benchan@chromium.org> Fix more I/O redirection issues.

Various command invocations in autotest use the bash-specific I/O
redirection syntax '&>', which doesn't work when dash is used. Under
dash, `ls foo &> /dev/null` is executed as `ls foo &` and `> /dev/null`
separately. As the latter always returns 0, the actual exit status of
the whole command isn't correctly determined.

This CL fixes the issues by using '>file 2>&1' instead.

BUG=chromium:458678
TEST=Manually going through the code.

Change-Id: I7dd22a5e898a18c7ff3d2fb43714e985eaa05c99
Reviewed-on: https://chromium-review.googlesource.com/249996
Reviewed-by: Mike Frysinger <vapier@chromium.org>
Commit-Queue: Ben Chan <benchan@chromium.org>
Tested-by: Ben Chan <benchan@chromium.org>
/external/autotest/server/cros/network/netperf_runner.py
3603922a2d0718a34eb4983663555ef9ed91a02b 14-Dec-2014 Christopher Wiley <wiley@chromium.org> autotest: Move path utilities out of wifi_test_utils

Refactor the utilities to be usable from a client context.

BUG=None
TEST=network_WiFi_SimpleConnect.wifi_checkWPA_TKIP passes.

Change-Id: If820921d777b0377f529ea40cc34c3377e192150
Reviewed-on: https://chromium-review.googlesource.com/236658
Reviewed-by: Paul Stewart <pstew@chromium.org>
Commit-Queue: Christopher Wiley <wiley@chromium.org>
Tested-by: Christopher Wiley <wiley@chromium.org>
/external/autotest/server/cros/network/netperf_runner.py
99dfbac2acecb5d019e5c320808aaf075b2ff145 12-Sep-2014 Kris Rambish <krisr@chromium.org> Increase netperf timeout.

BUG=None
TEST=None

Change-Id: I2148e00466b5f8e28fcf8e113bc30a2e4482ccf8
Reviewed-on: https://chromium-review.googlesource.com/217970
Tested-by: Kris Rambish <krisr@chromium.org>
Reviewed-by: Tien Chang <tienchang@chromium.org>
Commit-Queue: Kris Rambish <krisr@chromium.org>
/external/autotest/server/cros/network/netperf_runner.py
aeef9b52c54a27098925b44d93f270a6d8f29e3b 11-Mar-2014 Christopher Wiley <wiley@chromium.org> Remove site_linux_server

This class doesn't make sense in the new world with only a router
and a DUT. We get most of the utility of what used to be the server
by creating delegate objects which understand how to use commands in
depth. For instance, netperf is run by the NetperfRunner rather than
being split between the client and the server. NetperfRunner now
uses proxy_object.wifi_ip without worrying whether the proxy object
is a DUT or a router. Netperf runner also looks up netperf commands
by itself rather than depending on the proxy object.

BUG=chromium:351555
TEST=All of wifi_matfunc passes with this change.

Change-Id: I093a488b0999cb6c418cab04ff02b3cf0f33136a
Reviewed-on: https://chromium-review.googlesource.com/189625
Tested-by: Christopher Wiley <wiley@chromium.org>
Reviewed-by: Paul Stewart <pstew@chromium.org>
Commit-Queue: Christopher Wiley <wiley@chromium.org>
/external/autotest/server/cros/network/netperf_runner.py
76d893fbf272d3bcdbdb1941ad4b15d68fa56193 24-Sep-2013 Christopher Wiley <wiley@chromium.org> autotest: Tolerate missing netperf output

If we don't get everything we expect, we should just return None rather
than failing later trying to index something which isn't there.

TEST=This happened once in an attenuated performance test.
BUG=chromium:297998

Change-Id: I8770e9db8566a332e4ec33c793ae2a047b401161
Reviewed-on: https://chromium-review.googlesource.com/170554
Tested-by: Christopher Wiley <wiley@chromium.org>
Reviewed-by: Paul Stewart <pstew@chromium.org>
Commit-Queue: Christopher Wiley <wiley@chromium.org>
/external/autotest/server/cros/network/netperf_runner.py
7fc5c4a984f6d7bc60083b9fb9bf0b0cb04e60df 09-Sep-2013 Christopher Wiley <wiley@chromium.org> autotest: Ignore netperf timeouts and return codes when requested

netperf failures at high attenuations frequently manifest as timeouts,
presumably as the command socket has trouble getting data across the
very attenuated link. Ignore these timeouts as well.

While here, turn up the timeout margin. We typically run 10 second
tests, and those tests can regularly take up to 14 seconds to complete.
The current 5 second margin added to the 10 second runtime barely covers
that.

BUG=chromium:282471
TEST=Ran RvR, observed all the runs passed.

Change-Id: Ie929fbe2d06acb9507133d7cafb3abf6bb7330d8
Reviewed-on: https://chromium-review.googlesource.com/168889
Tested-by: Christopher Wiley <wiley@chromium.org>
Reviewed-by: Paul Stewart <pstew@chromium.org>
Commit-Queue: Christopher Wiley <wiley@chromium.org>
/external/autotest/server/cros/network/netperf_runner.py
c885a8061130fca7ee5c4113d8511b91bcf9fd62 30-Aug-2013 Christopher Wiley <wiley@chromium.org> autotest: Modify netperf runner to tolerate failures

At high attenuations, we sometimes see netperf timeout. This is
presumably because some control data needed to end the test is
having trouble getting from the server to the client or vice versa.
Fix this by optionally ignoring netperf command failures. Callers
will have to adjust their code to tolerate None results from netperf
sessions.

TEST=RvR tests using netperf don't fail when netperf runs fail. As a
pleasing side effect: since we might fail a TCP or UDP test before
running other TCP/UDP tests, this used to prevent us from running later
tests. With this change, this doesn't happen.
BUG=chromium:282471

Change-Id: I927796cd5ff526900a0434479b343508d3587f9b
Reviewed-on: https://chromium-review.googlesource.com/167976
Tested-by: Christopher Wiley <wiley@chromium.org>
Reviewed-by: Paul Stewart <pstew@chromium.org>
Commit-Queue: Christopher Wiley <wiley@chromium.org>
/external/autotest/server/cros/network/netperf_runner.py
e7a9d50d091cc9e02a5ceabc89dcd972f3310128 29-Aug-2013 Christopher Wiley <wiley@chromium.org> autotest: Fix NetperfConfig tag generation

BUG=None
TEST=Code that exercises these paths no longer crashes.

Change-Id: I499f2cfec1af2e2306e7da51bddfbc1a9e9cabbd
Reviewed-on: https://chromium-review.googlesource.com/167986
Tested-by: Christopher Wiley <wiley@chromium.org>
Reviewed-by: Paul Stewart <pstew@chromium.org>
Commit-Queue: Christopher Wiley <wiley@chromium.org>
/external/autotest/server/cros/network/netperf_runner.py
8bb7986cc24d5fe90b8f7d5cfcba501c4957ce36 23-Aug-2013 Christopher Wiley <wiley@chromium.org> autotest: Add a shortened netperf test tag property

This makes it easy to record concise performance keyval pairs. We want
this for both the configuration and the result objects, so refactor
functions to generate these strings into static functions. While we're
here, reorder properties into alphabetical order.

TEST=A pending test that consumes this logic executes correctly.
BUG=chromium:279395

Change-Id: I41034cb069047b010719ac6829c7869687b8f26f
Reviewed-on: https://chromium-review.googlesource.com/66972
Reviewed-by: Christopher Wiley <wiley@chromium.org>
Tested-by: Christopher Wiley <wiley@chromium.org>
Commit-Queue: Paul Stewart <pstew@chromium.org>
/external/autotest/server/cros/network/netperf_runner.py
469ef598043f806cb92b74a022f18491beb7f4ef 12-Aug-2013 Christopher Wiley <wiley@chromium.org> autotest: Emulate downstream UDP throughput in netperf config

netperf doesn't natively support a test type of UDP_MAERTS (stream
backwards) which means it lacks a button to let us measure UDP
downstream bandwidth. We emulate this support by running the normal
STREAM test backwards (run the server on the DUT). Make this interface
a little cleaner.

TEST=Tests using this logic behave as expected.
BUG=chromium:271515

Change-Id: Idce523d101d5725e786590be4c05082ae0bba9be
Reviewed-on: https://gerrit.chromium.org/gerrit/65710
Tested-by: Christopher Wiley <wiley@chromium.org>
Reviewed-by: Paul Stewart <pstew@chromium.org>
Commit-Queue: Christopher Wiley <wiley@chromium.org>
/external/autotest/server/cros/network/netperf_runner.py
cc0357ce0cd3fd728b417e3c10495d3d2da039a2 06-Aug-2013 Christopher Wiley <wiley@chromium.org> autotest: Add logic to log netperf keyvals

We'll have to do something slightly different when we get performance
dashboard integration, but this does a nice job of generating reports in
the meantime.

TEST=netperf tests log nice results.
BUG=chromium:268643
Change-Id: Ica4cc75e4986b3fb14894e1907e7b6cab5f9722a
Reviewed-on: https://gerrit.chromium.org/gerrit/64963
Tested-by: Christopher Wiley <wiley@chromium.org>
Reviewed-by: mukesh agrawal <quiche@chromium.org>
Commit-Queue: Christopher Wiley <wiley@chromium.org>
/external/autotest/server/cros/network/netperf_runner.py
47594e84b7debdc22cfb1c9f8f109f06bed24413 31-Jul-2013 Christopher Wiley <wiley@chromium.org> autotest: Rework netperf based test to adjust for measurement variance

Add a NetperfSession object which runs netperf for a fix number of
iterations or until the variance is observed to be below a threshold.
Consider a test to have passed if the assertion falls no more than one
standard deviation below the averaged result.

TEST=Observe test output fly by.
BUG=chromium:266166

Change-Id: I1040d15965ef83bbcdd44968bb2d7a264f14d13a
Reviewed-on: https://gerrit.chromium.org/gerrit/64379
Tested-by: Christopher Wiley <wiley@chromium.org>
Reviewed-by: Paul Stewart <pstew@chromium.org>
Commit-Queue: Christopher Wiley <wiley@chromium.org>
/external/autotest/server/cros/network/netperf_runner.py
04b6b3de4020bfe5dcea43bf787cc677d83ece5e 01-Aug-2013 Christopher Wiley <wiley@chromium.org> autotest: Rework NetperfRunner for fast iterative measurements

Rework netperf runner so that we can quickly take several measurements
with the same configuration. Pass the configuration to the constructor
and manage the netserv process via a standard context manager idiom.
This lets us not wait a couple seconds per measurement.

In the near future, we'll start taking more measurements and calculating
variance. This speeds up sample collection.

TEST=Existing tests run and pass on an R24 image of Snow with updated
shill test scripts. Work is in progress to isolate the cause of recent
performance test failures.

BUG=chromium:266166

Change-Id: I32b04324b1c0c3fa0296fa6ee81a6528dbdc73cb
Reviewed-on: https://gerrit.chromium.org/gerrit/64012
Reviewed-by: Christopher Wiley <wiley@chromium.org>
Tested-by: Christopher Wiley <wiley@chromium.org>
Commit-Queue: Christopher Wiley <wiley@chromium.org>
/external/autotest/server/cros/network/netperf_runner.py
b1e3ab2b8d2202ee17dc0b704fe18a476290382c 09-Jul-2013 Christopher Wiley <wiley@chromium.org> autotest: Move netperf_runner.py to server/cros/network

TEST=Ran wifi_rxampdu successfully.
BUG=chromium:258537

Change-Id: I5abebc9abdc4f2132a6145616d90f069257b16bb
Reviewed-on: https://gerrit.chromium.org/gerrit/61308
Tested-by: Christopher Wiley <wiley@chromium.org>
Reviewed-by: Paul Stewart <pstew@chromium.org>
Commit-Queue: Christopher Wiley <wiley@chromium.org>
/external/autotest/server/cros/network/netperf_runner.py