From b6fbffad32515ccf94404680cb5280c2cb561af5 Mon Sep 17 00:00:00 2001 From: Vratko Polak Date: Mon, 22 Mar 2021 17:11:21 +0100 Subject: MLRsearch: Support other than just two ratios + Change some method names and argument types: + Do not mention NDR and PDR, except as examples. + Return list of ReceiveRateInterval instead of NdrPdrResult. + The resulting intervals can be degenerate when hitting min/max rate. + Rename quantity name parts from "fraction" to "ratio". + Intervals are no longer tracked for each target ratio. + They are found dynamically from known results. + Add effective_loss_ratio field to avoid loss inversion effects. + Move some functions to separate files. + Bound search logic moved to MeasurementDatabase.py + ProgressState moved to its file. + WidthArithmetics.py holds small computation functions. + Use parameter expansion_coefficient instead of "doublings". + Do uneven bisect to save time when width is not power of two times goal. + Timeout now correctly tracked for the whole search, not just the current phase. + Make logging (debug) function pluggable. + Added debug log messages for initial phase. + Do not mark as subclass if contructor signature differs. + Avoid re-measure on scale-limited (ASTF) profiles. + Remove outdated comments. + Bump copyright years. Change-Id: I93f693b4f186f59030ee5ac21b78acc890109813 Signed-off-by: Vratko Polak --- resources/libraries/python/PLRsearch/PLRsearch.py | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) (limited to 'resources/libraries/python/PLRsearch/PLRsearch.py') diff --git a/resources/libraries/python/PLRsearch/PLRsearch.py b/resources/libraries/python/PLRsearch/PLRsearch.py index 226b482d76..cdfd308149 100644 --- a/resources/libraries/python/PLRsearch/PLRsearch.py +++ b/resources/libraries/python/PLRsearch/PLRsearch.py @@ -1,4 +1,4 @@ -# Copyright (c) 2020 Cisco and/or its affiliates. +# Copyright (c) 2021 Cisco and/or its affiliates. # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. # You may obtain a copy of the License at: @@ -193,7 +193,7 @@ class PLRsearch: zeros += 1 # TODO: Ratio of fill rate to drain rate seems to have # exponential impact. Make it configurable, or is 4:3 good enough? - if measurement.loss_fraction >= self.packet_loss_ratio_target: + if measurement.loss_ratio >= self.packet_loss_ratio_target: for _ in range(4 * zeros): lossy_loads.append(measurement.target_tr) if measurement.loss_count > 0: -- cgit 1.2.3-korg