Re: [ntp:questions] Ntpq.exe memory issue with windows 2019

2020-10-21 Thread David Woolley

On 21/10/2020 15:44, Sadique Urf Arbaz Sayyed wrote:

  The process will hold the 24Kb but actually the process is not visible in 
Task manager or anywhere but in RamMap we see that the executed process still 
occupied the Page table memory.


Did you mean 24KB, or is that really 3KB?

Any memory leakage that persists after the process is no longer visible 
in the process table is down to the OS.


As already pointed out page table allocations are unlikely to be what 
that memory is.


I'm not familiar with the details of Window NT family memory use 
reporting, but the only legitimate carry over would be for cached pages. 
 Such pages are optimisations and don't deny memory to other processes.


Both Linux and Windows try and allocate nearly all their memory to 
something.  In the case of the Linux "free" command, it computes an 
available figure which is much larger than the free figure, by including 
memory that can safely be discarded.  If there isn't an OS bug, I wonder 
if you are seeing that effect.


One wild thought: is ntpq or one of its DLLs not position independent 
code?  I could speculate as to why Windows might keep relocated pages 
around in case the code is reloaded at the same address before the page 
gets reused for other reasons.  However, I don't actually know if 
Windows does something like that.


___
questions mailing list
questions@lists.ntp.org
http://lists.ntp.org/listinfo/questions


Re: [ntp:questions] How is the BIG guys (Google. FB etc) DNS and NTP architecture

2020-10-21 Thread William Unruh
On 2020-10-21, Miroslav Lichvar  wrote:
> On 2020-10-21, William Unruh  wrote:
>> On 2020-10-21, CRasch Net  wrote:
>>> Facebook is now using Chrony, you can read about their implementation:
>>>
>>> Building a more accurate time service at Facebook scale
>>> https://engineering.fb.com/production-engineering/ntp-service/
>>
>> Interesting. While I agree that chrony is more precise, I think that
>> their results for ntpd are worse than they should  be. ntpd can
>> certainly do better than 1ms scatter/accuracy (and chrony can do better
>> than 100us.There is something weird about their network paths.) About 10
>> years I ran a number of tests of chrony vs ntpd. and got about a fctor
>> of 3-10 better, not 100. Interrupt latency/clock reading for chrony gave
>> about 1us fluctuations.
>
> It's not clear how ntpd and chrony were configured in their tests. The
> ntpq/chronyc outputs show a poll of 6, which is too long for a highly
> stable synchronization in a local network. If they were using the
> default minpoll 6 and maxpoll 10, a factor of 100 would not surprise me.
> ntpd doesn't adjusts its polling very well when it has stable
> measurements, so it would be effectively comparing ntpd polling at 10 vs
> chrony polling at 6.
>
>> I find this whole thing about leap second smoothing to be a real farce.
>> Just let the step occur instead of delivering the wrong time for hours.
>> Or if you want, run your clocks on TIA not UTC and make the leapsecond
>> conversion in the interpretation as is done for timezones. Would anyone
>> advise leap day smoothing every 4 years so that we do not have trouble
>> with our calenders?
>
> Well, yes. The trouble is that there are applications that break on
> backward step, they need synchronized clocks, and not all NTP clients
> can be configured to make a consistent slew on the leap second. So, the
> easiest way to fix this is to make a slew on the server and hide the
> leap second from the clients. When you internally do this everywhere and
> you want to provide a public NTP service, it's easier to just serve your
> internal leap-smeared time.

Easier. It is probably even easier to forget about ntp and just free run
your server. "Easy" is not the purpose of serving ntp time. 
>

___
questions mailing list
questions@lists.ntp.org
http://lists.ntp.org/listinfo/questions


Re: [ntp:questions] Ntpq.exe memory issue with windows 2019

2020-10-21 Thread Jakob Bohm

On 2020-10-21 15:16, Sadique Urf Arbaz Sayyed wrote:

On Wednesday, October 21, 2020 at 6:19:21 PM UTC+5:30, Jakob Bohm wrote:

On 2020-10-21 12:45, Sadique Urf Arbaz Sayyed wrote:

On Wednesday, October 21, 2020 at 4:14:05 PM UTC+5:30, Sadique Urf Arbaz Sayyed 
wrote:

We started with a brand new windows server 2019 datacenter edition and installed 
an infrastructure monitoring agent on it and strictly no other program. The 
machine had 8 GB of memory. As part of monitoring NTP offset from sync'd host we 
scheduled a ntpqexe. The problem started after 4-5 days, the memory utilisation 
had increased to significant level >80%. On analysis we found it was a gradual 
increase and using RAMMAP we saw every time the ntpq.exe will run it will leave 
behind 24k of memory in PAGE Table with 0 B in Private. Moreover this issue is 
specific to windows server 2019 we tried following same steps on windows server 
2012 machine and it worked perfectly fine with no memory creeping issues.

Any help or pointer are appreciated


Full problem is mentioned here 
https://social.technet.microsoft.com/Forums/en-US/d45ba91a-cc43-4010-9a2c-d65b1a4cc33a/windows-2019-server-ntp-increases-memory-utilisation-by-acquiring-page-table?forum=ws2019


 From what you have posted above (I have not checked the MS forum) it
sounds like the leak is of "PAGE"-d memory consumption, not page tables
(also known in the NT world as hyperspace).

Question is what is actually registered as owning that page-able memory.
Maybe you have found a memory leak in the NTP server itself, maybe
something in NT 10.??.2019?? (server 2019) leaks memory every time ntpq
makes an UDP socket connection to the NTP service to query it.

There are some advanced tools for checking what owns outstanding global
(kernel) memory allocations on NT systems. However first you should
check the "commit charge" of the NTP service process, as that is a
direct measure of how much pageable virtual memory is allocated in the
user mode part of that process.


Enjoy

Jakob
--
Jakob Bohm, CIO, Partner, WiseMo A/S. https://www.wisemo.com
Transformervej 29, 2860 Søborg, Denmark. Direct +45 31 13 16 10
This public discussion message is non-binding and may contain errors.
WiseMo - Remote Service Management for PCs, Phones and Embedded


Ok so this NT server is used by our customers but in house I do not have any 
server. I'm simply running ntpq.exe -nc peers 127.0.0.1, here I am not 
expecting the output but why is it hogging onto memory. As you pointed out ntpq 
uses the UDP port 123 which is by default used by Windows Time service. And 
this issue does not occur if I have the windows time service disabled. So my 
question here is why does the process hogs onto memory if I have the Windows 
time service running (In windows 2019 it's running by default).



ntpq.exe is designed to talk to ntpd.exe from the same source
code bundle.   Microsoft's NTP service (win32time) probably
completely lacks the ability to correctly handle that query.


Enjoy

Jakob
--
Jakob Bohm, CIO, Partner, WiseMo A/S.  https://www.wisemo.com
Transformervej 29, 2860 Søborg, Denmark.  Direct +45 31 13 16 10
This public discussion message is non-binding and may contain errors.
WiseMo - Remote Service Management for PCs, Phones and Embedded

___
questions mailing list
questions@lists.ntp.org
http://lists.ntp.org/listinfo/questions


Re: [ntp:questions] Ntpq.exe memory issue with windows 2019

2020-10-21 Thread Jakob Bohm

On 2020-10-21 12:45, Sadique Urf Arbaz Sayyed wrote:

On Wednesday, October 21, 2020 at 4:14:05 PM UTC+5:30, Sadique Urf Arbaz Sayyed 
wrote:

We started with a brand new windows server 2019 datacenter edition and installed 
an infrastructure monitoring agent on it and strictly no other program. The 
machine had 8 GB of memory. As part of monitoring NTP offset from sync'd host we 
scheduled a ntpqexe. The problem started after 4-5 days, the memory utilisation 
had increased to significant level >80%. On analysis we found it was a gradual 
increase and using RAMMAP we saw every time the ntpq.exe will run it will leave 
behind 24k of memory in PAGE Table with 0 B in Private. Moreover this issue is 
specific to windows server 2019 we tried following same steps on windows server 
2012 machine and it worked perfectly fine with no memory creeping issues.

Any help or pointer are appreciated


Full problem is mentioned here 
https://social.technet.microsoft.com/Forums/en-US/d45ba91a-cc43-4010-9a2c-d65b1a4cc33a/windows-2019-server-ntp-increases-memory-utilisation-by-acquiring-page-table?forum=ws2019



From what you have posted above (I have not checked the MS forum) it
sounds like the leak is of "PAGE"-d memory consumption, not page tables
(also known in the NT world as hyperspace).

Question is what is actually registered as owning that page-able memory.
Maybe you have found a memory leak in the NTP server itself, maybe
something in NT 10.??.2019?? (server 2019) leaks memory every time ntpq
makes an UDP socket connection to the NTP service to query it.

There are some advanced tools for checking what owns outstanding global
(kernel) memory allocations on NT systems.  However first you should
check the "commit charge" of the NTP service process, as that is a
direct measure of how much pageable virtual memory is allocated in the
user mode part of that process.


Enjoy

Jakob
--
Jakob Bohm, CIO, Partner, WiseMo A/S.  https://www.wisemo.com
Transformervej 29, 2860 Søborg, Denmark.  Direct +45 31 13 16 10
This public discussion message is non-binding and may contain errors.
WiseMo - Remote Service Management for PCs, Phones and Embedded

___
questions mailing list
questions@lists.ntp.org
http://lists.ntp.org/listinfo/questions


Re: [ntp:questions] How is the BIG guys (Google. FB etc) DNS and NTP architecture

2020-10-21 Thread Jakob Bohm

On 2020-10-21 05:47, William Unruh wrote:

On 2020-10-21, CRasch Net  wrote:

Facebook is now using Chrony, you can read about their implementation:

Building a more accurate time service at Facebook scale
https://engineering.fb.com/production-engineering/ntp-service/


Interesting. While I agree that chrony is more precise, I think that
their results for ntpd are worse than they should  be. ntpd can
certainly do better than 1ms scatter/accuracy (and chrony can do better
than 100us.There is something weird about their network paths.) About 10
years I ran a number of tests of chrony vs ntpd. and got about a fctor
of 3-10 better, not 100. Interrupt latency/clock reading for chrony gave
about 1us fluctuations.

I find this whole thing about leap second smoothing to be a real farce.
Just let the step occur instead of delivering the wrong time for hours.
Or if you want, run your clocks on TIA not UTC and make the leapsecond
conversion in the interpretation as is done for timezones. Would anyone
advise leap day smoothing every 4 years so that we do not have trouble
with our calenders?



Originally, that is what they did, they smeared the leap day over 2 
solar days.


For a smeared timescale, perhaps something could be created that
distributes UT instead of UTC, it would need an input file with the
same data used to transmit UT-UTC in the standard radio protocol
(see the ITU-R standard for UTC).  Plus some kind of NTP protocol
change to let clients know that the data incorporates the astronomical
wobble and may need polling at the right time to pick up the wobble.




Enjoy

Jakob
--
Jakob Bohm, CIO, Partner, WiseMo A/S.  https://www.wisemo.com
Transformervej 29, 2860 Søborg, Denmark.  Direct +45 31 13 16 10
This public discussion message is non-binding and may contain errors.
WiseMo - Remote Service Management for PCs, Phones and Embedded

___
questions mailing list
questions@lists.ntp.org
http://lists.ntp.org/listinfo/questions


Re: [ntp:questions] How is the BIG guys (Google. FB etc) DNS and NTP architecture

2020-10-21 Thread Miroslav Lichvar
On 2020-10-21, William Unruh  wrote:
> On 2020-10-21, CRasch Net  wrote:
>> Facebook is now using Chrony, you can read about their implementation:
>>
>> Building a more accurate time service at Facebook scale
>> https://engineering.fb.com/production-engineering/ntp-service/
>
> Interesting. While I agree that chrony is more precise, I think that
> their results for ntpd are worse than they should  be. ntpd can
> certainly do better than 1ms scatter/accuracy (and chrony can do better
> than 100us.There is something weird about their network paths.) About 10
> years I ran a number of tests of chrony vs ntpd. and got about a fctor
> of 3-10 better, not 100. Interrupt latency/clock reading for chrony gave
> about 1us fluctuations.

It's not clear how ntpd and chrony were configured in their tests. The
ntpq/chronyc outputs show a poll of 6, which is too long for a highly
stable synchronization in a local network. If they were using the
default minpoll 6 and maxpoll 10, a factor of 100 would not surprise me.
ntpd doesn't adjusts its polling very well when it has stable
measurements, so it would be effectively comparing ntpd polling at 10 vs
chrony polling at 6.

> I find this whole thing about leap second smoothing to be a real farce.
> Just let the step occur instead of delivering the wrong time for hours.
> Or if you want, run your clocks on TIA not UTC and make the leapsecond
> conversion in the interpretation as is done for timezones. Would anyone
> advise leap day smoothing every 4 years so that we do not have trouble
> with our calenders?

Well, yes. The trouble is that there are applications that break on
backward step, they need synchronized clocks, and not all NTP clients
can be configured to make a consistent slew on the leap second. So, the
easiest way to fix this is to make a slew on the server and hide the
leap second from the clients. When you internally do this everywhere and
you want to provide a public NTP service, it's easier to just serve your
internal leap-smeared time.

-- 
Miroslav Lichvar

___
questions mailing list
questions@lists.ntp.org
http://lists.ntp.org/listinfo/questions