[dts] [PATCH V1 1/1] framework/pktgen_base: fix rfc2544 dichotomy warm up and

Tu, Lijuan lijuan.tu at intel.com
Fri Jan 3 04:04:27 CET 2020


applied

> -----Original Message-----
> From: Mo, YufengX
> Sent: Thursday, January 2, 2020 4:21 PM
> To: dts at dpdk.org; Wang, Yinan <yinan.wang at intel.com>; Ma, LihongX
> <lihongx.ma at intel.com>; Tu, Lijuan <lijuan.tu at intel.com>
> Cc: Mo, YufengX <yufengx.mo at intel.com>
> Subject: [dts][PATCH V1 1/1] framework/pktgen_base: fix rfc2544 dichotomy
> warm up and
> 
>  return value
> 
> fix rfc2544 dichotomy warm up and return value.
> 
> Signed-off-by: yufengmx <yufengx.mo at intel.com>
> ---
>  framework/pktgen_base.py | 12 ++++++++----
>  1 file changed, 8 insertions(+), 4 deletions(-)
> 
> diff --git a/framework/pktgen_base.py b/framework/pktgen_base.py index
> 75c3036..5e51b1a 100644
> --- a/framework/pktgen_base.py
> +++ b/framework/pktgen_base.py
> @@ -167,7 +167,6 @@ class PacketGenerator(object):
>          self._start_transmission(stream_ids, options)
>          time.sleep(delay)
>          self._stop_transmission(stream_ids)
> -        self._clear_streams()
> 
>      def __get_single_throughput_statistic(self, stream_ids):
>          bps_rx = []
> @@ -495,7 +494,10 @@ class PacketGenerator(object):
>          # start warm up traffic
>          delay = options.get('delay')
>          _options = {'duration': duration}
> -        self.__warm_up_pktgen(stream_ids, _options, delay)
> +        if delay:
> +            self._prepare_transmission(stream_ids=stream_ids)
> +            self.__warm_up_pktgen(stream_ids, _options, delay)
> +            self._clear_streams()
>          # traffic parameters for dichotomy algorithm
>          loss_rate_table = []
>          hit_result = None
> @@ -527,16 +529,18 @@ class PacketGenerator(object):
>              self._set_stream_rate_percent(rate)
> 
>          if not hit_result:
> -            msg = ('expected permit loss rate <{0}>'
> +            msg = ('expected permit loss rate <{0}> '
>                     'not between rate {1} and rate {2}').format(
>                          permit_loss_rate, max_rate, min_rate)
>              self.logger.error(msg)
>              self.logger.info(pformat(loss_rate_table))
> +            ret_value = 0, result[0][1], result[0][2]
>          else:
>              self.logger.debug(pformat(loss_rate_table))
> +            ret_value = rate, hit_result[0][1], hit_result[0][2]
>          self.logger.info("zero loss rate is %f" % rate)
> 
> -        return hit_result
> +        return ret_value
> 
>      def measure(self, stream_ids, traffic_opt):
>          '''
> --
> 2.21.0



More information about the dts mailing list