Граф коммитов

41 Коммитов

Автор SHA1 Сообщение Дата
Nick Banks 2e2b9c18ad
Onboard Tests for OpenSSL 3 (#3388) 2023-02-02 13:43:49 -05:00
Nick Banks 2a5a536a1b
Enable Stream Stats on Perf (#3154) 2022-10-17 09:21:55 -04:00
Nick Banks 5b921c9e18
App Controlled Execution Config (#3034) 2022-09-30 17:00:02 -04:00
Anthony Rossi 52ec31407b
Convert throughput tests from data transferred to timed. (#3008) 2022-08-22 18:41:27 -04:00
Thad House 3b5d5cca49
Allow TCP perf to fail to complete without failing pipeline (#2756)
* Allow TCP perf to fail to complete without failing pipeline

* Connect failure instead of timeout

* Use a matcher

* Reset forced failure
2022-05-27 14:11:00 -04:00
Nick Banks 49d1a8df7b
Onboard 1 Connection, 1000 Streams Perf Test (#2611) 2022-04-07 09:03:02 -04:00
Nick Banks dc188b3f75
Run Latency RPS for Longer (#2601) 2022-04-01 15:09:17 -04:00
Nick Banks 1b198cd947
One Connection/Stream Perf Test for Latency Data (#2595) 2022-03-31 11:51:48 -04:00
Nick Banks f8a656a62c
Increase Throughput Perf Threshold to 10% (#1580) 2021-05-12 15:28:11 -07:00
Thad House 8834935fd9
Increase linux regression thresholds (#1539)
Linux has a lot of performance fluctuation, and we don't currently have the time or knowledge to work on this. Its a future goal, but for now just increase the thresholds
2021-05-03 10:20:14 -07:00
Thad House 23361ac5d2
Special case targets in HPS tests (#1532)
* Parallelize HPS Client

* Use parallel values in test

* Use hex values, use valid kernel code for printing string
2021-04-29 14:30:14 -07:00
Thad House 2018103673
Add stats logging option to perf, log debug output to file (#1471)
* Add stats logging option to perf, log debug output to file

Logging connection stats can be an easy way to debug certain issues with the performance tool. Add an option to make this work.

By default, the pwsh script only prints logs in debug mode. Instead, write all output to a file as well, so this can be later reviewed as well. Otherwise all data from step 1 would just be lost.

* Fix builds

* Spacing nit

* Removing extra comma

* Fix incorrect log file

* Extra backtick

* 1 more parameter check

* Actually log local results

* Add build version to machine name

* Fix log name

* Hopefully 1 last fix

* Don't overwrite release logs with debug logs

* Toggle kernel as well

Co-authored-by: Nick Banks <nibanks@microsoft.com>
2021-04-13 09:08:01 -07:00
Thad House 6c0aa76b0e
Default to send buffering off in secnetpert (#1449)
* Default to send buffering off in secnetpert

We usually want to be testing with no send buffering, however thats not the default. That makes manual testing more difficult, as thats something we have to explicitly set. Make the default no send buffering, and require it to be enabled explcitly

* Adjust tcp throughput thresholds
2021-04-08 07:50:09 -07:00
Thad House cd39ac185e
Add support for TCP run during performance testing (#1445)
* Add support for TCP run during performance testing

* Fixup script
2021-04-06 14:39:42 -07:00
Thad House b1940ba5ec
Remove stub TLS (#1411)
* Remove stub TLS

We were only using stub TLS to be compatible with ASAN. Now that OpenSSL and Asan work together, we can remove stub TLS and reduce our TLS scope.
2021-03-30 14:22:39 -07:00
Nick Banks dd4f4ede0f
Remove miTLS (#1398) 2021-03-29 17:21:54 -07:00
Thad House 40751ee0b0
Rename quicperf to netsecperf (#1368)
* Rename quicperf to netsecperf

Since TCP is now included, its now a network security perf test tool, not just quic perf

* Fix file names

* Fix clog

* 1 more name fix
2021-03-23 14:05:41 -07:00
Thad House 163fd78647
Add Linux performance testing (#1214)
* Start work on linux perf

* Add linux rps and hps tests

* Remove test functions

* Add linux perf

* Add low latency rps

* Use new machines for loopback too

* Fix windows tests
2021-02-08 14:51:51 -08:00
Nick Banks a1fc73ce1a
RPS Latency Test Case (#1211) 2021-02-03 14:18:35 -08:00
Nick Banks 0ef8feb637
TCP/TLS Performance Interface (#1160) 2021-01-22 11:56:31 -08:00
Thad House bfa71b1db6
Cleanup perf scripts (#1135)
* Cleanup perf scripts

This removes a lot of what was generic about the remotes, and instead moves remote to a common root context.

This makes new tests much easier to add, especially once we get the full matrix RPS

* Fix progress preference
2021-01-06 09:39:44 -08:00
Thad House 1270e186f3
Increase HPS threshold to 40% (#1051)
OpenSSL has some nasty variations in it
2020-11-20 11:44:19 -08:00
Thad House 662e8a6052
Mark perf failures as failing on Azure (#1008) 2020-11-10 15:57:35 -08:00
Thad House 2caea326bb
Fail build if throughput up test has a 5% or more performance drop (#990)
* Fail build if throughput up test has a 5% or more performance drop

* Allow tests to finish, write failures at end

* Move thesholds to json files

* Fail loopback on regressions to, but use larger threshold

* Fix arguments

* Actual print failures at end

* Fix all negative regressions not counting

* Print more

* Slightly different output

* Fix not triggering

Co-authored-by: Nick Banks <nibanks@microsoft.com>
2020-11-10 11:05:05 -08:00
Nick Banks 673fc597b8
Use Separate Thread for RPS Tests (#955) 2020-11-02 13:10:35 -08:00
Thad House bce6dc58e5
Add RPS Latency metrics to performance testing (#931)
RPS latency numbers are recorded for every RPS run, as there is no noticeable impact on performance for doing so. 

These latency numbers are currently not uploaded to the Database, they will be added at a later date. They are printed though.

Histograms of latency percentiles are also generated. Currently only the numbers from the last run of a set are uploaded to artifacts. 

A 60 connection test was added to reduce utilization to a constant level.
2020-10-30 11:46:02 -07:00
Thad House a4943e5b0c
Properly set thread affinity for throughput tests (#920)
* Properly set thread affinity for throughput tests
2020-10-16 16:11:48 -07:00
Nick Banks 1506e3f434
5 Iterations for All Perf Tests (#898) 2020-10-09 12:15:59 -07:00
Nick Banks 1627dcf13f
Download Perf Support (#897) 2020-10-09 11:44:40 -07:00
Thad House 27e6789f63
Always use self signed certificates for remote performance tests. (#846) 2020-09-17 14:21:54 -07:00
Thad House e133a7a0be
Configure Performance Tests to run OpenSSL Remote Performance (#831)
* Configure Performance to run OpenSSL Remote Performance

* Try remote openssl perf

* Update so skipping properly works

* Fix RPS and HPS

* Add Mitls remote

* Mitls remote
2020-09-17 11:58:44 -07:00
Nick Banks 584cf2cd2c
Handshakes Per Second Perf Test (#830) 2020-09-14 10:51:49 -07:00
Thad House 00503513ab
Support OpenSSL on Windows (#778) 2020-09-01 16:37:11 -07:00
Nick Banks b7894676ba
Fixed Nonbuffered IO (#795) 2020-09-01 08:30:55 -07:00
Nick Banks 1f4bfd765b
Perf Protocol Refactor (#785) 2020-08-28 12:43:34 -07:00
Thad House 51b96dcbfd
Add RPS into perf test suite (#703)
With the sidechannel exit, remote tests should work again
2020-08-10 15:34:47 -07:00
Thad House eaf58f0832
Recreate perf database to allow running perf tests with changing arguments (#692)
Each test now has its own database group.

Also runs a matrix of arguments.
2020-08-07 13:18:58 -07:00
Nick Banks 937e84cd61
Refactored Perf Code (#691) 2020-08-06 13:20:13 -07:00
Thad House 091633d726
Create new Performance Execution Driver (#626)
New performance driver is custom built specifically for performance, rather then using quicping.

Also will be compatible with server mode, and baseline support is part of this commit.
2020-07-29 16:31:27 -07:00
Nick Banks ea4e033357
Support Disable 1-RTT Encryption Extension (#560) 2020-07-24 20:24:13 -07:00
Thad House 6e1c47a47a
Add multi system test platform infrastructure (#573)
Perf Tests can now run either locally or cross systems. A setup has been created to make this work automatically on AZP.

Additionally, machine name is now published, along with other smaller code changes.
2020-07-09 10:30:02 -07:00