Relógio Monotônico no OSX

CLOCK_MONOTONIC não parece disponível, então clock_gettime está fora.

Eu li em alguns lugares que mach_absolute_time () pode ser o caminho certo a seguir, mas depois de ler que era um 'valor dependente de cpu', instantaneamente me fez pensar se ele está usando o rtdsc por baixo. Assim, o valor pode variar com o tempo, mesmo que seja monótono. Além disso, problemas com afinidade de encadeamento podem resultar em resultados significativamente diferentes de chamar a função (tornando-a não monótona em todos os núcleos).

Claro, isso é apenas especulação. Alguém sabe como mach_absolute_time realmente funciona? Na verdade, estou procurando uma substituição para clock_gettime (CLOCK_MONOTONIC ... ou algo parecido para o OSX. Não importa qual seja a origem do relógio, espero precisão de pelo menos milissegundos e precisão de milissegundos.

Eu gostaria apenas de entender quais relógios estão disponíveis, quais relógios são monótonos, se alguns clocks derivam, têm problemas de afinidade de thread, não são suportados em todos os hardwares Mac, ou levam um número 'super alto' de ciclos de cpu para executar.

Aqui estão os links que eu consegui encontrar sobre esse tópico (alguns já são links mortos e não são encontráveis ​​no archive.org):

https://developer.apple.com/library/mac/#qa/qa1398/_index.html http://www.wand.net.nz/~smr26/wordpress/2009/01/19/monotonic-time-in-mac-os-x/http://www.meandmark.com/timing.pdf

Obrigado! Brett

questionAnswers(3)

yourAnswerToTheQuestion