Age | Commit message (Collapse) | Author | Files | Lines |
|
Signed-off-by: pmikus <pmikus@cisco.com>
Change-Id: Ieac8cd32009bebbd1a3324a81becfbf3abb814ab
|
|
Change-Id: I8679c819b7c6ecd9e680bdc6edeafd2124def0b5
Signed-off-by: Viliam Luc <vluc@cisco.com>
|
|
Change-Id: I911e121475221fbf5449ed49dc6236caf13742b0
Signed-off-by: Viliam Luc <vluc@cisco.com>
|
|
Change-Id: I9d028294deb1e31b6d185deb1c7523e0226a0ada
Signed-off-by: Viliam Luc <vluc@cisco.com>
|
|
Signed-off-by: pmikus <pmikus@cisco.com>
Change-Id: I81958fbf6ef240d53a0fb8708ca882baf02f606c
|
|
Signed-off-by: pmikus <pmikus@cisco.com>
Change-Id: I909942dbb920df7f0fe15c0c92cda92c3cd8d8ad
|
|
1. Suite steup add download nginx
2. Add nginx-1.14.2/1.15.0 ldp test suite
3. Add NginxUtils,NginxConfigGenerator method
4. Taskset the PID of nginx to the unused cores in VPP and these cores are under NIC's NUMA ID
5. cleanup add Kill Processes - nohup
Signed-off-by: xizhanx <xix.zhang@intel.com>
Change-Id: Idbf0e4ec3bf63e88281a8e3e34f52e00a6801c85
Signed-off-by: Dave Wallace <dwallacelf@gmail.com>
|
|
This patch is to add test suites for vpp plugin crypto_sw_scheduler,
IPsec sync mode is to do crypto and packet forward work in same worker cores,
crypto_sw_scheduler can schedule crypto work to other async crypto cores to
improve whole crypto processing capability.
This test suites configure fixed 1 rx queues per port, then measure IPsec
performance with 1, 2, 3 crypto cores.
This patchset include 1, 2, 4, 8 ipsec tunnels test cases.
+Vratko help to change to count total physical cores instead of previous only
count crypto cores in test cases.
Change-Id: I0e67182e3d13273890a23703d838101900e25126
Signed-off-by: Yulong Pei <yulong.pei@intel.com>
Signed-off-by: Vratko Polak <vrpolak@cisco.com>
Signed-off-by: pmikus <pmikus@cisco.com>
|
|
Signed-off-by: pmikus <pmikus@cisco.com>
Change-Id: Idcee623abbc5568fc6ca49113bc2ff8add179046
|
|
+ With ramp-up, without reset, with session verification.
+ Uses the same profile as pps tests.
+ Ramp up duration is not specified, as duration is computed.
+ Timeout tracking with automated ramp-up.
+ Correct computation of next duration.
+ Checking both early and late sessions.
+ No loss measurement also acts as a ramp-up.
+ Return ReceiveRateMeasurement from send_traffic_on_tg_internal,
as that is needed for detecting whether trial is ok as ramp up.
- Udp needs quite low ramp-up rate after recent regression.
- Max scale has higher rate (so failing) to avoid session timeouts.
+ Bump copyright year.
Change-Id: I50c928659cd5b985b490a2e5fb69c5cd790600b0
Signed-off-by: Vratko Polak <vrpolak@cisco.com>
|
|
Signed-off-by: pmikus <pmikus@cisco.com>
Change-Id: Ibafaaca4438587284d1e255c764f0701002941e8
|
|
Ticket: CSIT-1771 VPP-1207 VPP-1675
Change-Id: I8ba2d62054361e72b833943327434ea071e7e568
Signed-off-by: Vratko Polak <vrpolak@cisco.com>
|
|
+ Add UDP_CPS, TCP_CPS, UDP_PPS and TCP_PPS suites.
+ Update existing cps traffic profiles.
+ Add missing traffic profiles.
+ UDP:
+ Single burst of 32 packets was confirmed as safe enough for TRex.
+ Maybe 64 could work, but not enough testing for that.
+ Multiple bursts have lead to reduced TRex performance,
as overlaping bursts (from different client instances)
tend to fill up the buffers.
+ TCP:
+ Data size set to 11111 bytes, completely arbitrarily.
+ Results look reasonable, so I have kept that.
- MSS not set at all
- No tested support for frame size other than 64B.
- Frame size does not even factor into TCP profiles.
+ So other frame sizes are skipped in autogen.
+ Update tags in related suites.
- HOSTS_{n} and SRC_USER_{n} should be unified.
- Questionable clarification on difference between IP4BASE and SCALE.
+ Add NAT state resetters to tests that need them.
+ Resetter is called (if set) before each measurement.
+ If ramp-up is detected, resetter is not set.
+ Rename "mult" argument to "multiplier".
+ Abstracted from packets to transactions.
+ Transaction corresponds to profile.
+ TRex multiplier argument sets target rate in transactions per second.
+ The familiar STL traffic:
+ Bidirectional is considered to be 2 packets per transaction.
+ Unidirectional is considered to be 1 packet per transaction.
+ The newer ASTF traffic:
+ 4 subtypes, each has different number of packets per transaction.
+ For max rate computation:
+ Packets in the more numerous direction are considered.
+ Rely on TRex reported traffic duration for ASTF:
+ Use the server side value.
- Client side value is higher by an overhead.
- TRex is not sending traffic during that time.
+ Remove delays from traffic profiles.
- Those delays would increase the reprted traffic time.
+ Support for scale lmited trials.
+ Only for ASTF profiles, each ASTF profile has limited scale.
+ Scale defined in suite variables.
+ For TRex to send all transactions provided duration value is ignored.
+ The appropriate value is computed in TrafficGenerator.
+ An ad-hoc time constant is added to match the TRex client side time overhead.
+ The profile driver receives the computed duration.
+ Measurement for PLRsearch add a sleep if the computed duration is smaller.
+ Alternative argument for search algos if scale is limited.
+ Both need higher timeout to accomodate big scales.
+ MLRsearch can afford fewer phases.
+ Added a parameter to optionally shorten the duration.
+ Use short duration for runtime stats trial and failure stats trial.
+ Use very large keepalive values in udp profiles to avoid ka packets.
+ No polling in ASTF profile driver.
- Polling could eliminate the time overhead value.
+ But polling proved to introduce some loss, affecting the results.
+ Handle duration stretching in ASTF by stopping traffic.
+ The stop has several steps so that:
+ The traffic is really stopped entirely.
+ Late packets do not count (maybe as errors).
+ Stats are preserved to read for results (and cleared afterwards).
+ Several quantities added to ReceiveRateMeasurement:
+ Original target duration is preserved (algos need that).
+ Input estimate (tps) for early search iterations.
+ Output estimate (maybe pps) for MRR output.
+ Strict result (unsent counts as loss) for NDR.
+ Use L2 counters (opackets, ipackets) where possible.
- TRex has trouble processing packets for the L7 ones at high loads.
+ Remove warmup from profile drivers and keywords.
+ Suites should call "Send ramp-up traffic" explicitly if needed.
+ Added parsing for few more counters.
+ Both to use in formulas or just for debug purposes.
- Only 64B cases in autogen, framesize support to be added later.
+ Latency streams during search can be enabled via PERF_USE_LATENCY env var.
+ MLRsearch improvments:
+ Rename argument names to min_rate and max_rate.
+ Use relative receive rate in initial phase.
+ PLRsearch improvements:
+ Careful computation when output (pps) does not match input (tps).
+ Use geometric distribution (instead of Poisson).
+ Helps agains math errors.
+ This should improve estimate stability.
- But in practice big losses still lead to significant jumps.
+ Traffic generator improvements:
+ send_traffic_on_tg now calls the full set_rate_provider_defaults.
+ _send_traffic_on_tg_internal for the logic without provider defaults.
+ As the internal function is re-used by measure() without affecting defaults.
+ Move _parse_traffic_results just before get_measurement_result.
+ As the latter uses fields set bu the former, it is now easier to read.
+ Multiple sources for approximate duration.
+ Tried from more precise to more available.
+ Includes logic for _pps tests (added in later change).
+ Move explicit type conversions to earlier occurences.
+ Profile driver output field uses semicolons to simplify parsing.
+ Performance Robot lib file split to several smaller ones.
+ performance_actions.robot:
+ Hosts Additional Statistics Action For * keywords.
+ performance_display.robot:
+ Hosts keyword for displaying and verifying results.
+ Change test message to use the correct unit (pps or cps).
+ performance_limits.robot renamed to performance_vars.robot
+ Added many keywords, mostly for accessing test variables.
+ Moved variables for Policer into a new keyword there.
+ Some keywords need sophisticated logic.
- Other are basically Get Variable Value.
+ But in future more logic can be added, without editing callers.
+ Documentation for the new keywords acts as a documentation for test variables.
+ performance_utils.robot has the rest.
+ Eliminated arguments if the value is in test variable.
+ Small improvements to documentation.
- Still not enough cleanup with respect to arguments and test variables.
+ Keywords are sorted alphabetically now in each one.
+ Suites:
+ Unified variables table:
+ No colons in comments.
+ ${n_hosts}, ${n_ports} and use them instead hardcoded numbers.
+ Add -cps to existing cps suite names.
+ Remove "trial data overwrite".
+ Compute max rate as in STL suites.
+ Each NAT suite has ip4base suite to compare results to.
- Those act as indirect TRex calibration.
- VPP does not lose packets in those.
+ Latency in ASTF suites is disabled hard.
- As we do not support latency in ASTF profiles yet.
+ Unidirectional tests governed by suite variable, not an argument.
+ Write long argument lists vertically.
+ Prefer to use argument names.
+ In Python, also the last argument is followed by comma.
+ It makes renaming and reordering easier.
+ Similarly applies to prints with long lists of values.
+ A TODO to update api crc file comments.
Change-Id: I84729355edbec051298a9de1162107f88ff5737d
Signed-off-by: Vratko Polak <vrpolak@cisco.com>
|
|
Change-Id: If61783fb717757c6189f06924412bd079e15a08f
Signed-off-by: Tibor Frank <tifrank@cisco.com>
|
|
The test names are unique without it and the information doesn't add
anything extra.
Change-Id: Idc7d6d1d21c8c05691e1757227a0a3787406d370
Signed-off-by: Juraj Linkeš <juraj.linkes@pantheon.tech>
|
|
+ Rework BASH scripts (more code to python).
+ Move BASH into libraries.
+ Allows RDMA usage.
+ Fix 9000B tests.
+ Rename confusing l2fwd -> testpmd.
+ Fix suite setup.
+ Fix PCI whitelist to not accidentally pickup wrong interface.
+ Fix deprecated DPDK cli arguments.
- MLX5 jumbo are disabled on NIC (i will increase separately).
https://jenkins.fd.io/job/csit-dpdk-perf-verify-master-2n-clx/6/console (l3fwd still broken)
- MLX5 IMIX seems to be some TRex issue with IMIX for mlx5 (i will handle separately)
Signed-off-by: Peter Mikus <pmikus@cisco.com>
Change-Id: I31d1b67305fa247cb5e1f57e739d3ef30dc1a04b
|
|
+ Merge single/double link
+ Introduce _pf{n}[0] variables so we can access physical function
same way as virtual function
+ Cleanup code by moving complex logic to python
+ Prepare code for multiple vf functions
Signed-off-by: Peter Mikus <pmikus@cisco.com>
Change-Id: Ic2e74a38bfa146441357de8f0916aeb638941c49
|
|
- TCP packet size is 1460B not 9000B
- QUIC packet size is 1280B not 9000B
Change-Id: I6604a74fa533db4ac782782c85ea54038688627a
Signed-off-by: Dave Wallace <dwallacelf@gmail.com>
|
|
Change-Id: I91458b897003f5d8f7f7ac9214aa824c113cecea
Signed-off-by: Tibor Frank <tifrank@cisco.com>
|
|
- Update test names with clients/streams
- Convert test results to JSON output
* iperf3 results include bits_per_second
* vpp_echo results include both client
and server output which includes time in seconds
and rx_data/tx_data in bytes which can be used
to calculate the average bits per second.
Tx and Rx data will always be the same:
BPS = (client tx_data * 8) / ((client time + server time) / 2)
- Fix WRK test results data formatting errors
Change-Id: Ie2aeb665e3cc0739b16f97ba2628eebe6e041d22
Signed-off-by: Dave Wallace <dwallacelf@gmail.com>
|
|
With the typo, only the first type+nic combination is generated.
With fix, all combinations are generated.
Change-Id: Ieb2db31cebed4940b063505b70f4d12a30da489c
Signed-off-by: Vratko Polak <vrpolak@cisco.com>
|
|
Change-Id: Ia7a876b1aa240676e1f2d23618c1d4e09ead14f0
Signed-off-by: Dave Wallace <dwallacelf@gmail.com>
|
|
Change-Id: I73f4be7ea315c7a5dcce46e1bd3034bcb0a97ee2
Signed-off-by: Dave Wallace <dwallacelf@gmail.com>
|
|
Change-Id: I53425f57fe9ecef9cff2c94642cc7cb24537a961
Signed-off-by: Dave Wallace <dwallacelf@gmail.com>
|
|
Change-Id: Icff49fb31cce342a2a4ae799e844ec91f9e5e366
Signed-off-by: Dave Wallace <dwallacelf@gmail.com>
|
|
+ Include a script to add suite tags to many suites at once.
+ Add suite tags also to device tests (not covered by autogen).
Change-Id: I514ee6178e22999b43460028fe2696738b012f04
Signed-off-by: Vratko Polak <vrpolak@cisco.com>
|
|
+ Disallowed -avf- (or -rdma-) as "template" suites.
+ GBP suite switched to DPDK driver in repo.
+ Each NIC has its own list of supported drivers, in Constants.
+ Updated tag expressions for daily jobs:
+ Feature, ipsec, memif, scale, srv6, tunnels, vhost and vts
are tested only with vfio-pci.
+ Other (base, dot1q, dot1ad) tested with all drivers.
+ Setup actions currently depend on driver, generated.
- The performance_rdma action is trivial for now.
- Several tests fail, to be fixed later, e.g. by performance_rdma.
+ Reconf tests are also supported.
+ Added DRV_VFIO_PCI tags missing, mainly in density tests.
- Vhost suites (density, reconf) are failing, but suites look good.
- TCP suites do not support NIC drivers yet.
- DPDK obviously not supported.
+ Use Python 3 in regenerate scripts.
+ Fix typos binded => bound.
+ File open modes set either u"rt" or u"wt" everywhere.
+ Remove a trailing space in an environment variable name.
Change-Id: I290470675dc5c9e88b2eaa5ab6285ecd9ed7827a
Signed-off-by: Vratko Polak <vrpolak@cisco.com>
|
|
Change-Id: I1392c06b1d64f62b141d24c0d42a8e36913b15e2
Signed-off-by: Jan Gelety <jgelety@cisco.com>
|
|
Ticket: VPP-1207
Change-Id: I506b4a24dfa6b10578407b261926f37215a714f4
Signed-off-by: Vratko Polak <vrpolak@cisco.com>
|
|
- Added new traffic profiles.
Signed-off-by: Ludovit Mikula <ludovit.mikula@pantheon.tech>
Change-Id: Ie06b7a1cf4d9df403d098b7a495219fd95e5869e
|
|
Ticket: CSIT-1551
+ Config copied from other suites.
+ Layer keywords prepared for additional chains.
+ Renamed "create" argument to "vlan_per_chain".
+ TrafficGenerator result extraction improvements.
+ Also unified TG type and subtype checking.
+ Throughput estimated as PDR for zero PLR.
+ Actual Qemu start is skipped.
+ Parse xstats instead of stats in trex stop scipt.
- Because stats are unconditionally cleared on each script connect.
+ Remember start values to get better ReceiveMeasurementResult at stop.
+ Expose loss count and time as appropriate test message.
+ Autogen support.
+ Multiple chain amounts and core densities.
- Only 1 additional chain.
+ Proper TAGs. Documented.
+ Clarified min framesize tags are for TG-DUT.
+ Added a TODO concerning overhead values.
+ Added 118B tag.
+ Robot performance keywords improvements.
+ Added missing return value documentation.
+ Frame size as required test variable, not an explicit argument.
+ MLRsearch keyword to store result (not into test message).
- TODO: De-duplicate: main keyword to measure, minor to set test message.
- But implementation uses the fact default arguments are different.
+ Keywords for starting and stopping background traffic.
- No checks whether start-stop pair is complete.
+ Multiple minor indentation and logging improvements.
- Missing / TODOs:
- Support also vlan_per_chain=True?
- Support dot1q without vxlan?
- Support also deletion?
- How to package config steps so -reconf can be generated from -ndrpdr?
Change-Id: If0270697f9ffa837c34ef802917220a53f156703
Signed-off-by: Vratko Polak <vrpolak@cisco.com>
|
|
+ Put Regenerator internal functions ourside class.
+ Duplicate into _default_ and _tcp_ functions.
+ Rework Testcase to be a single class with two factories.
+ Improve suite and testcase naming.
Change-Id: I1f835b576c476c1a40c8c52469b1876695f9ae73
Signed-off-by: Vratko Polak <vrpolak@cisco.com>
|
|
+ NF_density compatible
+ Baseline VM tests compatible
+ Scalability NxM
- 3n variant is missing in VXLAN and DOT1Q due to requests to have it
asymmetrical - TODO
Change-Id: Ia817d7be00622b594b451bc07756240d1a379e04
Signed-off-by: Peter Mikus <pmikus@cisco.com>
|
|
See https://gerrit.fd.io/r/20148
Change-Id: I22856b14e3608348f2ccecb1d99d87209db2d776
Signed-off-by: Vratko Polak <vrpolak@cisco.com>
|
|
Change-Id: I7b8e30903a8bc012a3bb43bfb33755e08b56dc1d
Signed-off-by: Jan Gelety <jgelety@cisco.com>
|
|
Change-Id: Ib2f3f3f8dc3e202dc1db53c739d9309be2ed8a60
Signed-off-by: Peter Mikus <pmikus@cisco.com>
|
|
Change-Id: Icff556142280ad0b6261e0a2bfb71672ee6b3807
Signed-off-by: Peter Mikus <pmikus@cisco.com>
|
|
+ All perf suites updated, as autogen change is backward incompatible.
+ Only x710 -ndrpdr suites remain in git repository.
+ Removed retry feature of run_tests.
+ Renamed topology_type and traffic_type to traffic_profile.
+ Renamed framesize to frame_size; nic_model to nic_name.
+ Reordered Variables table to start with nic_name and overhead.
+ Fixed wrong overhead value in some cbc-sha1 suites.
+ Fixed some suite tags.
++ Introduced tags to distinguish suites, such as IPSECINT.
+ Bound crypto hardware to NIC name.
+ Implemented NIC limit hiding.
+ Also search and teardown related arguments are now hidden.
+ Main measurement keywords updated to new arg handling.
+ Max rate related keywords moved to performance_limits.robot
+ Teardowns unified.
+ Generated tests are archived.
++ Generated directory is .gitignore-d.
+ Regenerator raises an exception on seeing non-compatible suite.
++ Relatively helpful message should be seen in exception.
+ Suite and template Documentation has generated parts.
+- With short NIC names only.
+ Autogen checker also upgraded.
+ Tag expressions replaced with long files to ensure analogous tests.
Change-Id: I60e9a999187e7da1f60d0eb4fb02afa14682aa46
Signed-off-by: Vratko Polak <vrpolak@cisco.com>
|
|
The plan is to change csit-validate-pylint-master job
to fail if (and only if) tox fails.
This will allow us to easily add checks,
with or without the voting power.
Each check produces log (ignored in .gitignore)
the voting job can archive.
+ Made autogen quiet by default, to avoid spam in autogen checker.
+ Unified the way direct csit subdirectories are git-ignored.
Change-Id: I6477b1ef7da6d3e30f68c5850d04900cc52f431e
Signed-off-by: Vratko Polak <vrpolak@cisco.com>
|
|
+ Make the skipping logic in autogen more flexible.
+ Do not emit 4c cases when there is too much VMs/containers.
+ Peter says the second -eth- should be renamed away from suites.
+ Regenerate suites so test case names match (new) suite names.
Change-Id: I95ecc47ca07b8bae6693d5d4330811ff55672fc4
Signed-off-by: Vratko Polak <vrpolak@cisco.com>
|
|
Missing bits:
- Add up-to-date .rst document (in child Change).
- Prepare for releasing to PyPI.org (in child Change):
-- Either copy dependencies from MLRsearch, or list in requirements.
-- Perhaps move common dependencies to separate package
for both search to depend on.
-- All the other metadata stuff.
Jira: CSIT-1276
Change-Id: I277efdb63dbb90b30e11f4e30a82e2130ac8efc3
Signed-off-by: Vratko Polak <vrpolak@cisco.com>
|
|
+ "elif" instead of "else if".
+ Some suites had test cases reordered.
+ Some suites contained 9000B cases for avf.
Change-Id: I3bf8241c317f20dbf66b497a2c8be35ef71307f5
Signed-off-by: Vratko Polak <vrpolak@cisco.com>
|
|
Change-Id: Ia74a87346fe2c0a170b881b510f1b0558a538f3c
Signed-off-by: Peter Mikus <pmikus@cisco.com>
|
|
- Decrease pylint errors. Part: easy
Change-Id: I452e5b5a11e9b78c03cd173a3848babe21b93c73
Signed-off-by: Peter Mikus <pmikus@cisco.com>
|
|
Change-Id: I738d1794f795e1225bc9709ea2ed2cf9b06d1cf4
Signed-off-by: Vratko Polak <vrpolak@cisco.com>
|
|
Change-Id: Iaac913bb4b15d743a2e9d565e25d31c089cee3e8
Signed-off-by: Vratko Polak <vrpolak@cisco.com>
|
|
Change-Id: I912017c6d1eab5530eecb2326887ffd057916ee8
Signed-off-by: Vratko Polak <vrpolak@cisco.com>
|
|
Delete the corresponding ndrpdrdisc suites.
MRR suites are also edited,
to make them less different from NDRPDR suites.
Now, there is a script to re-generate testcases of selected suites.
For that, resources/libraries/python/autogen is created,
with Regenerator holding the most of script logic.
The script looks at files matching a glob expression,
reuses a "prolog", but overwites test cases with the default template
and hardcoded set of testcase arguments.
Also, handling of overhead size has been simplified,
using new keyword Get Max Rate And Jumbo And Handle Multi Seg.
Default value for search timeout is increased to 12 minutes
to make timeout failures less frequent.
Change-Id: I394ad61f262b3078e5ca719034b15ada48987ee0
Signed-off-by: Vratko Polak <vrpolak@cisco.com>
|