RFR(S) 8242504: Enhance the system clock to nanosecond precision

Roger Riggs Roger.Riggs at oracle.com
Tue May 26 14:28:23 UTC 2020


Looks good.

Thanks to Mark and you for the improvement and testing.



On 5/26/20 12:59 AM, David Holmes wrote:
> bug: https://bugs.openjdk.java.net/browse/JDK-8242504
> webrev: http://cr.openjdk.java.net/~dholmes/8242504/webrev/
>
> This work was contributed by Mark Kralj-Taylor:
>
> https://mail.openjdk.java.net/pipermail/hotspot-runtime-dev/2020-April/038975.html 
>
>
> On the hotspot side we change the Linux implementations of 
> javaTimeMillis() and javaTimeSystemUTC() so that they use 
> clock_gettime(CLOCK_REALTIME) instead of gettimeofday(). In keeping 
> with our conditional use of this API I added a new guard
>
> os::Posix::supports_clock_gettime()
>
> and refined the existing supports_monotonic_clock() so that we can 
> still use CLOCK_REALTIME if CLOCK_MONOTONIC does not exist. In the 
> future (hopefully very near future) we will simply assume these APIs 
> always exist.
>
> On the core-libs side the existing test:
>
> test/jdk/java/time/test/java/time/TestClock_System.java
>
> is adjusted to track the precision in more detail.
>
> Finally Mark has added instantNowAsEpochNanos() to the benchmark 
> previously known as
>
> test/micro/org/openjdk/bench/java/lang/Systems.java
>
> which I've renamed to SystemTime.java as Mark suggested. I agree 
> having these three functions measured together makes sense.
>
> Testing:
>   - test/jdk/java/time/test/java/time/TestClock_System.java
>   - test/micro/org/openjdk/bench/java/lang/SystemTime.java
>   - Tiers 1-3
>
> Thanks,
> David



More information about the core-libs-dev mailing list