[dpdk-dev] [RFC PATCH v5 1/5] sched: add PIE based congestion management
Liguzinski, WojciechX
wojciechx.liguzinski at intel.com
Thu Oct 14 17:13:41 CEST 2021
Hi Stephen,
I have applied as much your comments as it could be changed.
Unfortunately, not all calculations could be change to improve performance.
Thanks,
Wojtek
-----Original Message-----
From: Stephen Hemminger <stephen at networkplumber.org>
Sent: Tuesday, September 7, 2021 9:15 PM
To: Liguzinski, WojciechX <wojciechx.liguzinski at intel.com>
Cc: dev at dpdk.org; Singh, Jasvinder <jasvinder.singh at intel.com>; Dumitrescu, Cristian <cristian.dumitrescu at intel.com>; Ajmera, Megha <megha.ajmera at intel.com>
Subject: Re: [dpdk-dev] [RFC PATCH v5 1/5] sched: add PIE based congestion management
On Tue, 7 Sep 2021 07:33:24 +0000
"Liguzinski, WojciechX" <wojciechx.liguzinski at intel.com> wrote:
> +/**
> + * @brief make a decision to drop or enqueue a packet based on probability
> + * criteria
> + *
> + * @param pie_cfg [in] config pointer to a PIE configuration
> +parameter structure
> + * @param pie [in, out] data pointer to PIE runtime data
> + * @param time [in] current time (measured in cpu cycles) */ static
> +inline void __rte_experimental _calc_drop_probability(const struct
> +rte_pie_config *pie_cfg,
> + struct rte_pie *pie, uint64_t time)
This code adds a lot of inline functions in the name of performance.
But every inline like this means the internal ABI for the implmentation has to be exposed.
You would probably get a bigger performance bump from not using floating point in the internal math, than the minor performance optimization from having so many inlines.
More information about the dev
mailing list