> For a valid service, the core mask of the service > is checked against the current core and the corresponding > entry in the active_on_lcore array is set or reset.
> Upto 8 cores share the same cache line for their > service active_on_lcore array entries since each entry is a uint8_t. > Some number of these entries also share the cache line with > the internal_flags member of struct rte_service_spec_impl, > hence this false sharing also makes the service_valid() check > expensive. > Eliminate false sharing by moving the active_on_lcore array to > a per-core data structure. The array is now indexed by service id. > Signed-off-by: Nikhil Rao <nikhil.rao at intel.com> Acked-by: Gage Eads <gage.e...@intel.com> Thanks, Gage