Discussion:
[Linuxptp-devel] PPS with ixgbe
Miroslav Lichvar
2013-01-17 12:22:02 UTC
Permalink
I've tried running phc2sys with the PPS signal generated by Intel X540
(ixgbe driver) on Linux 3.8.0-rc3 and 3.6.2, but it doesn't seem to
work very well. I've noticed two problems:

- the signal has a large and variable jitter in tens of microseconds.
Is this caused by the latency in the interrupt delivery? The system
is using MSI, are there any settings which could reduce the latency?

- the PPS events slowly drift away from the start of seconds in the
PHC time, as if the pulse generator was using a different clock.
Interesting is that setting the PHC resets the offset between PPS
and PHC.

The second pair of PHC and PPS on the card behave similarly. Is anyone
else seeing this?

The only other NIC with PPS I've tried was a Solarflare, the PPS was
very good (because it's not using interrupts?), but reading of the
clock was slow, so I'm wondering if there is any card which has PPS
and PHC reading equally good.

Thanks,
--
Miroslav Lichvar
Keller, Jacob E
2013-01-17 18:48:34 UTC
Permalink
The PPS on the X540 causes some issues with performance, that may be related to this issue. You
might try changing interrupt moderation (interrupt coalescence or rate throttling). But I am not sure
that will help. I'm very curious about the drift though.. When I tested it I didn't seem to have issues.

I do wish that the design allowed for a proper PPS that didn't rely on the interrupt which is a
possibility to why these issues occur. I do know that when turned on the PPS signal causes some
interference of some kind, and haven't quite figured out what the right work around is. At any rate
that might be the reason for the time issues also.

I don't know of other cards with PPS. Some of the other Intel designs have hardware support for
generating the signal but no way to route it to software, so it has never been enabled.

- Jake
-----Original Message-----
Sent: Thursday, January 17, 2013 4:22 AM
Subject: [Linuxptp-devel] PPS with ixgbe
I've tried running phc2sys with the PPS signal generated by Intel X540
(ixgbe driver) on Linux 3.8.0-rc3 and 3.6.2, but it doesn't seem to
- the signal has a large and variable jitter in tens of microseconds.
Is this caused by the latency in the interrupt delivery? The system
is using MSI, are there any settings which could reduce the latency?
- the PPS events slowly drift away from the start of seconds in the
PHC time, as if the pulse generator was using a different clock.
Interesting is that setting the PHC resets the offset between PPS
and PHC.
The second pair of PHC and PPS on the card behave similarly. Is anyone
else seeing this?
The only other NIC with PPS I've tried was a Solarflare, the PPS was
very good (because it's not using interrupts?), but reading of the
clock was slow, so I'm wondering if there is any card which has PPS
and PHC reading equally good.
Thanks,
--
Miroslav Lichvar
------------------------------------------------------------------------------
Master Visual Studio, SharePoint, SQL, ASP.NET, C# 2012, HTML5, CSS,
MVC, Windows 8 Apps, JavaScript and much more. Keep your skills
current
with LearnDevNow - 3,200 step-by-step video tutorials by Microsoft
http://p.sf.net/sfu/learnmore_122712
_______________________________________________
Linuxptp-devel mailing list
https://lists.sourceforge.net/lists/listinfo/linuxptp-devel
Keller, Jacob E
2013-01-17 18:51:19 UTC
Permalink
Also, another reason for why the PPS might drift from PHC seconds, is because of a limitation with how the X540 clocks work. The signal is generated via the internal registers, but that isn't enough width to hold the 64 bits of nanoseconds.

Instead, it uses a cyclecounter to count overflow, but this conversion back and forth could be the cause for potential drift..
-----Original Message-----
Sent: Thursday, January 17, 2013 4:22 AM
Subject: [Linuxptp-devel] PPS with ixgbe
I've tried running phc2sys with the PPS signal generated by Intel X540
(ixgbe driver) on Linux 3.8.0-rc3 and 3.6.2, but it doesn't seem to
- the signal has a large and variable jitter in tens of microseconds.
Is this caused by the latency in the interrupt delivery? The system
is using MSI, are there any settings which could reduce the latency?
- the PPS events slowly drift away from the start of seconds in the
PHC time, as if the pulse generator was using a different clock.
Interesting is that setting the PHC resets the offset between PPS
and PHC.
The second pair of PHC and PPS on the card behave similarly. Is anyone
else seeing this?
The only other NIC with PPS I've tried was a Solarflare, the PPS was
very good (because it's not using interrupts?), but reading of the
clock was slow, so I'm wondering if there is any card which has PPS
and PHC reading equally good.
Thanks,
--
Miroslav Lichvar
------------------------------------------------------------------------------
Master Visual Studio, SharePoint, SQL, ASP.NET, C# 2012, HTML5, CSS,
MVC, Windows 8 Apps, JavaScript and much more. Keep your skills
current
with LearnDevNow - 3,200 step-by-step video tutorials by Microsoft
http://p.sf.net/sfu/learnmore_122712
_______________________________________________
Linuxptp-devel mailing list
https://lists.sourceforge.net/lists/listinfo/linuxptp-devel
Richard Cochran
2013-01-18 05:27:38 UTC
Permalink
Post by Miroslav Lichvar
The only other NIC with PPS I've tried was a Solarflare, the PPS was
very good (because it's not using interrupts?), but reading of the
clock was slow, so I'm wondering if there is any card which has PPS
and PHC reading equally good.
The gianfar (found on the p2020 and other FS PowerPCs, also in one of
the i.mx5 variants) has an interrupt for internal PPS, and it worked
well on the p2020.

HTH,
Richard

Loading...