From: Dennis Dalessandro <dennis.dalessandro@cornelisnetworks.com>
To: jgg@ziepe.ca, dledford@redhat.com
Cc: linux-rdma@vger.kernel.org
Subject: [PATCH for-next 0/6] Perf and debug fixes for hfi
Date: Mon, 13 Sep 2021 09:28:20 -0400 [thread overview]
Message-ID: <20210913132317.131370.54825.stgit@awfm-01.cornelisnetworks.com> (raw)
Here is a series of perf improvements and debug/trace fixes from Mike,
who has this to say about the patches...
The AIP SDMA interrupt handling is inefficient:
- A slab entry is allocated for each sent packet
This is despite the fact that there is a ring for each possible send slot
that could be occupied by a tx descriptor
- The interrupt handling/NAPI is lock happy has a mixed up notion of
producer and consumer
The ring should be a ring of tx descriptors vs. a ring of pointers
The consumer of descriptors should be the xmit side of the TX
The producer of the descriptors is the SDMA interrupt handling and NAPI
tx completion
There is certainly no locking required in the interrupt/TX napi tx queue
There is no locking required in the xmit side since that is held off by NAPI
code
Note that these patches are also staged publicly on our GitHub site for easy
browsing in context.
https://github.com/cornelisnetworks/linux
---
Mike Marciniszyn (6):
IB/hfi1: Remove cache and embed txreq in ring
IB/hfi1: Get rid of hot path divide
IB/hfi1: Get rid of tx priv backpointer
IB/hfi1: Tune netdev xmit cachelines
IB/hfi1: Remove atomic completion count
IB/hfi1: Add ring consumer and producers traces
drivers/infiniband/hw/hfi1/ipoib.h | 76 +++++---
drivers/infiniband/hw/hfi1/ipoib_tx.c | 314 ++++++++++++++-------------------
drivers/infiniband/hw/hfi1/trace_tx.h | 71 +++++++
3 files changed, 246 insertions(+), 215 deletions(-)
--
-Denny
next reply other threads:[~2021-09-13 13:35 UTC|newest]
Thread overview: 8+ messages / expand[flat|nested] mbox.gz Atom feed top
2021-09-13 13:28 Dennis Dalessandro [this message]
2021-09-13 13:28 ` [PATCH for-next 1/6] IB/hfi1: Remove cache and embed txreq in ring Dennis Dalessandro
2021-09-13 13:28 ` [PATCH for-next 2/6] IB/hfi1: Get rid of hot path divide Dennis Dalessandro
2021-09-13 13:28 ` [PATCH for-next 3/6] IB/hfi1: Get rid of tx priv backpointer Dennis Dalessandro
2021-09-13 13:28 ` [PATCH for-next 4/6] IB/hfi1: Tune netdev xmit cachelines Dennis Dalessandro
2021-09-13 13:28 ` [PATCH for-next 5/6] IB/hfi1: Remove atomic completion count Dennis Dalessandro
2021-09-13 13:28 ` [PATCH for-next 6/6] IB/hfi1: Add ring consumer and producers traces Dennis Dalessandro
2021-09-27 23:15 ` [PATCH for-next 0/6] Perf and debug fixes for hfi Jason Gunthorpe
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=20210913132317.131370.54825.stgit@awfm-01.cornelisnetworks.com \
--to=dennis.dalessandro@cornelisnetworks.com \
--cc=dledford@redhat.com \
--cc=jgg@ziepe.ca \
--cc=linux-rdma@vger.kernel.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.