В моем собственном кодировании я использую Unix.gettimeofday ()
, который возвращает значение с плавающей запятой с разрешением, значительно меньшим одной секунды. Это описано в документации для модуля OCaml Unix . Несмотря на название модуля, эта функция также работает в Windows (и, вероятно, почти во всех средах, с которыми вы можете столкнуться).
Если я переписываю ответ планшета, я получаю следующий код:
let time f x =
let start = Unix.gettimeofday ()
in let res = f x
in let stop = Unix.gettimeofday ()
in let () = Printf.printf "Execution time: %fs\n%!" (stop -. start)
in
res