> -----Original Message----- > From: Felix Fietkau <nbd@xxxxxxxx> > Sent: Thursday, December 23, 2021 2:29 PM > To: Karthikeyan Periyasamy (QUIC) <quic_periyasa@xxxxxxxxxxx>; > ath11k@xxxxxxxxxxxxxxxxxxx > Cc: linux-wireless@xxxxxxxxxxxxxxx > Subject: Re: [PATCH] ath11k: Add peer rhash table support > > WARNING: This email originated from outside of Qualcomm. Please be wary > of any links or attachments, and do not enable macros. > > On 2021-12-23 09:27, Karthikeyan Periyasamy wrote: > > When more clients (128) are connected, the UL data traffic KPI > > measurement is low compared to single client. This issue is due to > > more CPU cycles spent on the peer lookup operation with more clients. > > So reduce the peer lookup operation by modifying the linear based > > lookup operation into the rhash based lookup operation. This improve > > the peak throughput measurement. Since this is a software algorithm > > change, it is applicable for all the platforms. > > > > TCP UL 128 Clients test case Observation (64bit system): > > Previous: ~550 Mbps > > Now : ~860 Mbps > > > > Tested-on: QCN9074 hw1.0 PCI > > WLAN.HK.2.5.0.1-01067-QCAHKSWPL_SILICONZ-1 > > > > Signed-off-by: Karthikeyan Periyasamy <quic_periyasa@xxxxxxxxxxx> > Why does ath11k keep a separate peer list instead of just using the sta > entry? That seems ugly and inefficient... Atheros driver keep the peer list to track the peer entries that firmware is aware of peer_id across the SOC not per radio. STA entry is per radio/hw not per SOC. It can't fulfill the requirement to map the SOC level peer_id to the peer list. Also firmware map the AST index / peer id to the peer entries. So driver keeps the peer list, which help to drive the firmware. In this patch, we efficiently reduce the peer lookup operation. Thanks, Karthikeyan P