有人尝试过在 Windows 服务器上使用显卡作为精密时钟吗?

有人尝试过在 Windows 服务器上使用显卡作为精密时钟吗?

我一直在思考如何让我的服务器比现在同步得更好。我运行一些便宜的应用程序,它可以将我与 colo 上的一些 2 层服务器同步,漂移大约是每 10 秒 1-2 毫秒(当机器不太忙时)。我想要更好的精度,我想要自己的时钟。但无论你从“老式”公司购买什么,价格都比我负担得起的要高。

然而,我刚刚有了一个想法 - 是否可以连接到应该使用一些内部精密时钟的高科技图形或声卡?

有什么想法、意见或建议吗?

编辑:colo 不让我使用 GPS。他们用 30 美元的 DIY 套件构建了 GPS nntp 服务器,将其插入 Linux 机器并以每月 2000 美元的价格出售。是的。

编辑编辑。伙计们,我非常感谢你们的所有建议。但我正在寻找一款不需要 GPS 的内部卡,它有稳定的时钟,每 60 秒的漂移不会超过 1ns。我不想买原子钟,也不能使用 Stratum/NTP 解决方案(因为我已经在使用它了,我想要更好但更便宜的)。

编辑 编辑 编辑。显然有些时钟可以产生 5ns/秒的漂移,分辨率为 100ns,这比互联网上的 Stratum 2 要好得多。我也惊讶于没有人提到 IEEE 1588。

答案1

据我所知,GPU 中的计时来自系统;它们没有自己的内部高稳定性时钟。有些产品(我上次检查时价格实惠)可以从几个来源获取高质量时间。有些产品直接从 GPS 获取,尽管它确实需要能够

  1. 获取可以接收 GPS 信号的地方的天线。
  2. 将电缆从天线位置连接到您的网络。

它们充当第 1 层 NTP 源。

使用现成零件的 DIY 方法:http://time.qnan.org/

这些往往是最具成本效益的解决方案,因为它们不需要维持高度稳定的振荡器。

其次是具有高度稳定振荡器的设备,但它们往往要昂贵得多。

答案2

专用计时机器,即使性能低下,也能保持非常非常准确的时间。您只需将 NTP 软件锁定在内存中并赋予其最高优先级即可。它需要一两天的时间才能稳定下来,包括温度、同步和测量自己的速率。但在第 3 层中获得毫秒级的精度并不困难。

诀窍如下:

1) 该机器应专用于计时。没有来自其他来源的负载突发。(您还可以将其用于影响很小的服务,例如作为备份名称服务器。)

2)NTP进程应以较高的优先级运行并锁定在内存中。

3) 配置几个 2 级服务器,最好是 4 个。这样的公共服务器有很多。找到 NTP 响应时间最快的服务器。(您可以使用“ntpdate -q”进行测试,延迟越低越好。)

4)需要一天左右的时间才能完全稳定下来。

5) 使用内核与 NTP 计时功能良好集成的操作系统。Linux 和 FreeBSD 都很好。

6) 您可以使用非常便宜的低端计算机,甚至是可以运行 Linux 的 60 美元的无线路由器。

答案3

如果你需要更高的精确度,那么就买一个合适的时钟。摆弄像你那里的聪明想法可能会很有趣,但如果时间绝对必须准确,那么我认为这不是一个好主意。如果你尝试了这样的事情,你认为你的显卡会同步到什么?你是肯定主板时钟速度的任何变化都不会影响 GPU 吗?

我们对时间同步有相当严格的要求,所以我们最终从 galleon 购买了自己的机架式时间服务器,它配备了自己的 GPS 天线,我们对结果非常满意,而且我知道他们也有可以插入现有服务器背面的系统,我敢肯定,他们的任何竞争对手也都有这样的系统。

答案4

漂移也可能是由于您 PC 上的时钟造成的 - 它们仍然不是那么准确。尝试下载 Windows 版本ntpd,对其进行配置,使用 ntpdate 设置时钟,然后告诉 ntpd 运行。随着时间的推移,它将计算出系统时钟的漂移率,并随着时间的推移为程序提供准确的系统时间。如果您要同步一组计算机,则它们都应该同步到同一个时间源,或者最好是同步到 Stratum 2 服务器的本地主服务器。

相关内容