From: Richard Weinberger <richard@nod.at>
To: wei fang <wei.fang@nxp.com>
Cc: Andrew Lunn <andrew@lunn.ch>,
David Laight <David.Laight@aculab.com>,
netdev <netdev@vger.kernel.org>,
shenwei wang <shenwei.wang@nxp.com>,
xiaoning wang <xiaoning.wang@nxp.com>,
linux-imx <linux-imx@nxp.com>
Subject: Re: high latency with imx8mm compared to imx6q
Date: Sat, 18 Feb 2023 14:20:53 +0100 (CET) [thread overview]
Message-ID: <2015643728.147543.1676726453615.JavaMail.zimbra@nod.at> (raw)
In-Reply-To: <DB9PR04MB81068EF8919ED7488EE1E3D788A69@DB9PR04MB8106.eurprd04.prod.outlook.com>
----- Ursprüngliche Mail -----
> Von: "wei fang" <wei.fang@nxp.com>
> If you use the ethtool cmd, the minimum can only be set to 1.
> But you can set the coalescing registers directly on your console,
> ENET_RXICn[ICEN] (addr: base + F0h offset + (4d × n) where n=0,1,2) and
> ENET_TXICn[ICEN] (addr: base + 100h offset + (4d × n), where n=0d to 2d)
> set the ICEN bit (bit 31) to 0:
> 0 disable Interrupt coalescing.
> 1 disable Interrupt coalescing.
> or modify you fec driver, but remember, the interrupt coalescing feature
> can only be disable by setting the ICEN bit to 0, do not set the tx/rx
> usecs/frames
> to 0.
Disabling interrupt coalescing seems to make things much better. :-)
>> >>
>> >> But I noticed something interesting this morning. When I set
>> >> rx-usecs, tx-usecs, rx-frames and tx-frames to 1, *sometimes* the RTT is
>> good.
>> >>
>> >> PING 192.168.0.52 (192.168.0.52) 56(84) bytes of data.
>> >> 64 bytes from 192.168.0.52: icmp_seq=1 ttl=64 time=0.730 ms
>> >> 64 bytes from 192.168.0.52: icmp_seq=2 ttl=64 time=0.356 ms
>> >> 64 bytes from 192.168.0.52: icmp_seq=3 ttl=64 time=0.303 ms
>> >> 64 bytes from 192.168.0.52: icmp_seq=4 ttl=64 time=2.22 ms
>> >> 64 bytes from 192.168.0.52: icmp_seq=5 ttl=64 time=2.54 ms
>> >> 64 bytes from 192.168.0.52: icmp_seq=6 ttl=64 time=0.354 ms
>> >> 64 bytes from 192.168.0.52: icmp_seq=7 ttl=64 time=2.22 ms
>> >> 64 bytes from 192.168.0.52: icmp_seq=8 ttl=64 time=2.54 ms
>> >> 64 bytes from 192.168.0.52: icmp_seq=9 ttl=64 time=2.53 ms
>> >>
>> >> So coalescing plays a role but it looks like the ethernet controller
>> >> does not always obey my settings.
>> >> I didn't look into the configured registers so far, maybe ethtool
>> >> does not set them correctly.
>> >>
>> > It look a bit weird. I did the same setting with my i.MX8ULP and
>> > didn't have this issue. I'm not sure whether you network is stable or
>> > network node devices also enable interrupt coalescing and the relevant
>> > parameters are set to a bit high.
>>
>> I'm pretty sure my network is good, I've tested also different locations.
>> And as I said, with the imx6q on the very same network everything works as
>> expected.
>>
>> So, with rx-usecs/rx-frames/tx-usecs/tx-frames set to 1, you see a RTT smaller
>> than 1ms?
>>
> Yes, but my platform is i.MX8ULP not i.MX8MM, I'll check i.MX8MM next Monday.
Now I don't see the outlines anymore. Maybe the test from before was really wonky. :-S
Next week I'll do a bigger test on the testbed with interrupt coalescing
disabled at driver level.
Thanks a lot for all the great input so far!
//richard
next prev parent reply other threads:[~2023-02-18 13:21 UTC|newest]
Thread overview: 11+ messages / expand[flat|nested] mbox.gz Atom feed top
2023-02-17 16:52 fec: high latency with imx8mm compared to imx6q Richard Weinberger
2023-02-17 20:49 ` David Laight
2023-02-18 1:04 ` Andrew Lunn
2023-02-18 1:27 ` Wei Fang
2023-02-18 9:42 ` Richard Weinberger
2023-02-18 11:52 ` Wei Fang
2023-02-18 12:03 ` Richard Weinberger
2023-02-18 12:28 ` Wei Fang
2023-02-18 12:29 ` Wei Fang
2023-02-18 13:20 ` Richard Weinberger [this message]
2023-02-20 0:11 ` Andrew Lunn
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=2015643728.147543.1676726453615.JavaMail.zimbra@nod.at \
--to=richard@nod.at \
--cc=David.Laight@aculab.com \
--cc=andrew@lunn.ch \
--cc=linux-imx@nxp.com \
--cc=netdev@vger.kernel.org \
--cc=shenwei.wang@nxp.com \
--cc=wei.fang@nxp.com \
--cc=xiaoning.wang@nxp.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 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.