O anúncio de systemd-timesyncd no arquivo systemd NEWS explica bem as diferenças dessa ferramenta em comparação com o Chrony e outras ferramentas semelhantes. (ênfase minha):
Um novo daemon "systemd-timesyncd" foi adicionado para sincronizar o relógio do sistema pela rede. Ele implementa um cliente SNTP . Ao contrário das implementações NTP, como o chrony ou o servidor de referência NTP, isso apenas implementa o lado do cliente e não se preocupa com toda a complexidade do NTP, concentrando-se apenas na consulta do tempo de um servidor remoto e na sincronização do relógio local . A menos que você pretenda servir o NTP a clientes em rede ou desejar conectar-se a relógios de hardware locais, esse cliente NTP simples deve ser mais do que apropriado para a maioria das instalações. [...]
Essa configuração é um caso de uso comum para a maioria dos hosts em uma frota de servidores. Eles geralmente serão sincronizados a partir de servidores NTP locais, que são sincronizados por várias fontes, possivelmente incluindo hardware. O systemd-timesyncd tenta fornecer uma solução fácil de usar para esse caso de uso comum.
Tentando resolver suas perguntas específicas:
Quais são as diferenças do mundo real entre os dois em termos de precisão?
Acredito que você pode obter maior precisão obtendo dados de sincronização de várias fontes, o que não é especificamente um caso de uso suportado pelo systemd-timesyncd. Mas quando você o usa para obter dados de sincronização de servidores NTP centrais conectados à sua rede interna confiável, o uso de várias fontes não é realmente tão relevante e você obtém boa precisão de uma única fonte.
Se você estiver sincronizando seu servidor em um servidor confiável em uma rede local e no mesmo datacenter , a diferença de precisão entre NTP e SNTP será praticamente inexistente. O NTP pode levar em consideração o RTT e economizar tempo, mas isso não é tão benéfico quando o seu RTT é realmente pequeno, como é o caso de uma rede local rápida e de uma máquina próxima. Você também não precisa de várias fontes se puder confiar na que está usando.
Quais são as diferenças de eficiência?
Obter a sincronização de uma única fonte é muito mais simples do que obtê-la de várias fontes, pois você não precisa tomar decisões sobre quais fontes são melhores que outras e possivelmente combinar informações de várias fontes. Os algoritmos são muito mais simples e exigirão menos carga da CPU para o caso simples.
Quais são as necessidades de sincronização de tempo "não simples", também conhecidas como casos de uso do chrony como cliente NTP?
Isso é tratado na citação acima, mas, em qualquer caso, são casos de uso do Chrony que não são cobertos pelo systemd-timesyncd:
- executando o servidor NTP (para que outros hosts possam usar esse host como fonte de sincronização);
- obter informações de sincronização NTP de várias fontes (o que é importante para os hosts obterem essas informações de servidores públicos na Internet); e
- obter informações de sincronização do relógio local, que geralmente envolve hardware especializado, como dispositivos GPS, que podem obter informações precisas de hora dos satélites.
Esses casos de uso requerem Chrony ou ntpd ou similar.