From: Kit Chow <kchow@gigaio.com>
To: linux-ntb <linux-ntb@googlegroups.com>, linux-pci@vger.kernel.org
Cc: Logan Gunthorpe <logang@deltatee.com>,
"Eric Pilmore (GigaIO)" <epilmore@gigaio.com>
Subject: Re: AMD Epyc iperf perfomance issues over NTB
Date: Fri, 6 Sep 2019 16:48:32 -0700 [thread overview]
Message-ID: <d719f986-f9ce-a0c3-f9a1-1fe06a3cc0cc@gigaio.com> (raw)
In-Reply-To: <bce9a1d6-1c37-b9f8-a613-2ba68211fee1@deltatee.com>
This is a follow-up of the initial problems encountered trying to get
the AMD Epyc 7401server to do host to host communication through NTB.
(please see thread for background info).
The IO_PAGE_FAULT flags=0x0070 seen on write ops was in fact related to
proxy ID setup as Logan had suggested. The AMD iommu code only processed
the 'last' proxy ID/dma alias; the last proxy ID was associated with
Reads and this allowed Read ops to succeed and Write ops to fail. Adding
support to process all of the proxy IDs in the AMD iommu code (plus
adding dma_map_resource support), the AMD Epyc server can now be
configured in a 4 host NTB setup and communicate over NTB (tcp/ip over
ntb_netdev) to the other 3 hosts.
The problem that we are now experiencing, for which I can use some help,
with the AMD Epyc 7401 server is very poor iperf performance over
NTB/ntb_netdev.
The iperf numbers over NTB start off initially at around 800 Mbits/s and
quickly degrades down to the 20 Mbits/s range. Running 'top' during
iperf, I see many instances (up to 25+) of ksoftirqd running which
suggests that interrupts are overwhelming the interrupt processing.
/proc/interrupts show lots of 'ccp-5' dma interrupt activity as well as
ntb_netdev interrupt activity. After eliminating netdev interrupts by
configuring netdev to 'use_poll' and leaving ccp, the poor iperf
performance persists.
As a comparison, I can replace the ccp dma with the plx dma (found on
the host adapter card) on the AMD server and get a steady 9.4 Gbits/s
with iperf over NTB.
I've optmimized for numa via numactl in all test runs.
So it appears that the iperf NTB performance issues on the AMD Epyc
server are related to the ccp dma and its interrupt processing.
Does anyone have any experience with the ccp dma that might be able to help?
Any help or suggestions on how to proceed would be very much appreciated.
Thanks
Kit
kchow@gigaio.com
next prev parent reply other threads:[~2019-09-06 23:48 UTC|newest]
Thread overview: 8+ messages / expand[flat|nested] mbox.gz Atom feed top
2019-04-20 9:06 AMD IO_PAGE_FAULT w/NTB on Write ops? Eric Pilmore
2019-04-22 17:14 ` Logan Gunthorpe
2019-04-22 17:31 ` Logan Gunthorpe
2019-09-06 23:48 ` Kit Chow [this message]
[not found] ` <CAADLhr49ke_3s25gW11qZ+H-Jjje-E00WMHiMDbKU=mcCQtb3g@mail.gmail.com>
2019-04-23 11:00 ` Fwd: " Sanjay R Mehta
2019-04-24 22:04 ` Eric Pilmore
2019-05-09 20:03 ` Gary R Hook
2019-06-04 21:15 ` Eric Pilmore
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=d719f986-f9ce-a0c3-f9a1-1fe06a3cc0cc@gigaio.com \
--to=kchow@gigaio.com \
--cc=epilmore@gigaio.com \
--cc=linux-ntb@googlegroups.com \
--cc=linux-pci@vger.kernel.org \
--cc=logang@deltatee.com \
/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 a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).