Age | Commit message (Collapse) | Author | Files | Lines |
|
Change-Id: I38f4054cddf01557e8482adcdc804760ef7a9c4b
Signed-off-by: Tibor Frank <tifrank@cisco.com>
|
|
Change-Id: Ifec550ae69c6454d0adbc08d3e49435c3cca380f
Signed-off-by: Tibor Frank <tifrank@cisco.com>
|
|
Ticket: CSIT-1771 VPP-1207 VPP-1675
Change-Id: I8ba2d62054361e72b833943327434ea071e7e568
Signed-off-by: Vratko Polak <vrpolak@cisco.com>
|
|
+ The old command is tried if the new one fails.
Change-Id: I0afdcd7ac699595347b42f3a7d34e1281bb0dc0e
Signed-off-by: Vratko Polak <vrpolak@cisco.com>
|
|
Change-Id: If42cacf6c643d35aaa7f65d8e2f87972d23d251b
Signed-off-by: Tibor Frank <tifrank@cisco.com>
|
|
- packet throughput
- speed-up
Change-Id: I5d49ae2da54170e48c51db47e035d2121471be0d
Signed-off-by: Tibor Frank <tifrank@cisco.com>
|
|
Signed-off-by: pmikus <pmikus@cisco.com>
Change-Id: I56987d744d9143a95954d85f2557cda07220c681
|
|
Change-Id: I1708ebd24a6a26db53a14192b23fe51569543333
Signed-off-by: Tibor Frank <tifrank@cisco.com>
|
|
Even with IPv6 nd disabled in VMs, there are IPv6 packets coming from
DuT:
--dut_if2_mac ba:dc:0f:fe:02:05
...
dst = 33:33:00:00:00:01
src = ba:dc:0f:fe:02:05
Docker disables IPv6 by default on interfaces it manages, which doesn't
include VF interfaces. Disabling IPv6 in containers using sysctl may fix
this.
Change-Id: Idba506653442a3da2cd82e69cedddb3294d92788
Signed-off-by: Juraj Linkeš <juraj.linkes@pantheon.tech>
|
|
Signed-off-by: pmikus <pmikus@cisco.com>
Change-Id: I46750f8571d86dc13df95252e8894c4b988efd5c
|
|
- 2n-zn2 iter
Change-Id: I7412963c918b53e44294f4cf213a806c8435e3b5
Signed-off-by: Tibor Frank <tifrank@cisco.com>
|
|
Fix "Not enough availablehuge pages: 1483!".
Also update 3n-tsh docs.
Change-Id: I1d37a66af1e2363f77fdbd87d238e8ff5535b011
Signed-off-by: Juraj Linkeš <juraj.linkes@pantheon.tech>
|
|
Update after switching one 1n-tx2 and the idle ThunderX2 servers between
racks. Update the idle ThunderX2 specs to a new perf testbed, 2n-tx2.
Add Server-Type-B12 which is a modified Server-Type-B2 with one extra
NIC (needed for 2n-tx2).
Change-Id: I51af358f1feb476652eddfe82b5af1d0d70ac259
Signed-off-by: Juraj Linkeš <juraj.linkes@pantheon.tech>
|
|
Change-Id: Id4738b823a77e59d5efd913f770326726b8a81e2
Signed-off-by: Tibor Frank <tifrank@cisco.com>
|
|
Change-Id: I4e4d156dcb9d93bf0c537a870e6fab6c500f5810
Signed-off-by: Tibor Frank <tifrank@cisco.com>
|
|
Change-Id: Ib7c4bc51bea43dafa2bd788c709c800caeb75988
Signed-off-by: Tibor Frank <tifrank@cisco.com>
|
|
Change-Id: Ifaba0d689a279ae650ae30531b21533cc6927262
Signed-off-by: Tibor Frank <tifrank@cisco.com>
|
|
Change-Id: I49e2c50829af8f538155b6262ec2872a68560858
Signed-off-by: Tibor Frank <tifrank@cisco.com>
|
|
Change-Id: I65cf505edd346fc5da240be08310064b3755e458
Signed-off-by: Tibor Frank <tifrank@cisco.com>
|
|
Change-Id: I7efb7a339e248972604b1c8027d21ea32e9f4070
Signed-off-by: Tibor Frank <tifrank@cisco.com>
|
|
Change-Id: I2601a786f58b1d89cc9a90cb16ff20e6331abbfe
Signed-off-by: Tibor Frank <tifrank@cisco.com>
|
|
Signed-off-by: pmikus <pmikus@cisco.com>
Change-Id: Ie48a96d83d37d7292d261875371e09d4b9152c7b
|
|
Signed-off-by: pmikus <pmikus@cisco.com>
Change-Id: Id56b87ab868f2897a6563914b0beca2acc25e706
|
|
Change-Id: I73a735b3e82aaa01f56c21bf91e5073f144c584f
Signed-off-by: Tibor Frank <tifrank@cisco.com>
|
|
Signed-off-by: pmikus <pmikus@cisco.com>
Change-Id: I145a4b5511141f1e2b4e387daa358e32dd2c8015
|
|
Change-Id: I3aaf06de4ae5fb2dbeef5920987bc427bf0bb529
Signed-off-by: Tibor Frank <tifrank@cisco.com>
|
|
Change-Id: I2027c8e0be76c119d88c966f700f9639ed4c1784
Signed-off-by: Tibor Frank <tifrank@cisco.com>
|
|
To be merged after this completes:
https://wiki.fd.io/view/TSC/Relicensing_Procedure
Change-Id: I003e53a620a5f82ba2bcc65b12f9c84ae92264ef
Signed-off-by: Vratko Polak <vrpolak@cisco.com>
|
|
Change-Id: Ic2d8c66ec44b89354e4dbf4f9605c8e53bf21481
Signed-off-by: Tibor Frank <tifrank@cisco.com>
|
|
- reorder NAT44 graphs
Change-Id: Ied762a85fb1ee69c7d12971e3e15822571a18451
Signed-off-by: Tibor Frank <tifrank@cisco.com>
|
|
Signed-off-by: pmikus <pmikus@cisco.com>
Change-Id: Id14c3f2f4f8689256172dc2b3ebc4fbaed5de8d3
|
|
The previous code counted full TCP connections,
which need one more packet, leading to worse results.
Change-Id: Ifcf78356b6ed54819ea0bf5aa069d7d9cb951183
Signed-off-by: Vratko Polak <vrpolak@cisco.com>
|
|
16 times faster setting at cost of 50% larger archive.
Before:
$ time ( cat tests.tar | xz -9e > tests.9e.tar.xz )
real 0m41.640s
user 0m41.009s
sys 0m0.602s
$ wc -c tests.9e.tar.xz
913432 tests.9e.tar.xz
After:
$ time ( cat tests.tar | xz -3 > tests.3.tar.xz )
real 0m2.422s
user 0m2.294s
sys 0m0.161s
$ wc -c tests.3.tar.xz
1556080 tests.3.tar.xz
Change-Id: Ia5c86183d4e19db3cbf95dd84cf86ee720ef4051
Signed-off-by: Vratko Polak <vrpolak@cisco.com>
|
|
Change-Id: Id59947b8c502e4bf7b7ce66ad326f481346c98d6
Signed-off-by: Tibor Frank <tifrank@cisco.com>
|
|
Change-Id: Ic9342f0f3deea3d7d175c437993289c86464bb99
Signed-off-by: Tibor Frank <tifrank@cisco.com>
|
|
Change-Id: I2c247c5362396bcb4c8b42b1b46a2601091ca968
Signed-off-by: Tibor Frank <tifrank@cisco.com>
|
|
Change-Id: I81c3b43407921ed7912b530bb93c725515d3d583
Signed-off-by: Tibor Frank <tifrank@cisco.com>
|
|
Change-Id: I7886285de8edbf66e03e1b22d85c2e7a4c4d7224
Signed-off-by: Tibor Frank <tifrank@cisco.com>
|
|
Change-Id: I6de094fc0cb2acdfb6eeb22e6d85a65d2e9f1478
Signed-off-by: Tibor Frank <tifrank@cisco.com>
|
|
Change-Id: I800273d04c3f956e58be727cbf5befa61377fa2b
Signed-off-by: Tibor Frank <tifrank@cisco.com>
|
|
Change-Id: I99836894960f74f9dc283b812e1106ac512db3ae
Signed-off-by: Tibor Frank <tifrank@cisco.com>
|
|
Change-Id: I1cf61c523d781db3dbeccf89077c50992cb03205
Signed-off-by: Tibor Frank <tifrank@cisco.com>
|
|
Change-Id: I463bf61d41484738ba5c614b473bcb5457e6abe1
Signed-off-by: Tibor Frank <tifrank@cisco.com>
|
|
Change-Id: I3920f881286565029f35bcfa700f36c6701db457
Signed-off-by: Tibor Frank <tifrank@cisco.com>
|
|
Change-Id: Iaa85aaa5179136281ab05325efcf0e91c234a774
Signed-off-by: Tibor Frank <tifrank@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: I409b060f64ae7c6787448ae519fd76d8384e9ffb
Signed-off-by: Martin Balaz <martin.balaz@pantheon.tech>
|
|
Change-Id: I9b6c2185e43ed0b33dbeafb3d2757656f9e49bc3
Signed-off-by: Tibor Frank <tifrank@cisco.com>
|
|
Change-Id: I7b15c69c923d47e83c2dc586cdc03ed4ebaeec74
Signed-off-by: Tibor Frank <tifrank@cisco.com>
|
|
Change-Id: I8918f09411254b64abb65a165a0e284f735b306e
Signed-off-by: Tibor Frank <tifrank@cisco.com>
|