Python | time.monotonic_ns() method

11 Oct, 2021
Time module in Python provides various time-related functions. This module comes under Python’s standard utility modules.
time.monotonic_ns() method of time module in Python is used to get the value of a monotonic clock in nanoseconds. This method is similar to time.monotonic() method which returns the monotonic clock value in fractional seconds. A monotonic clock is a clock that can not go backwards.
Syntax: time.monotonic_ns()
Parameter: No parameter is required.
Return type: This method returns an integer value which represents the value of a monotonic clock in nanoseconds.
Code #1: Use of time.monotonic_ns() method to get value of a monotonic clock in nanoseconds
# Python program to explain time.monotonic_ns() method  # importing time moduleimport time  # Get the value of# the monotonic clock in # fractional seconds using# time.monotonic() methodvalue1 = time.monotonic()  # Get the value of# the monotonic clock in # nanoseconds using# time.monotonic_ns() methodvalue2 = time.monotonic_ns()  # print the value of # the monotonic clock (in fractional seconds)print("Value of the monotonic clock (in fractional seconds):", value1)  # print the value of # the monotonic clock (in nanoseconds)print("Value of the monotonic clock (in nanoseconds):", value2)
Value of the monotonic clock (in fractional seconds): 13486.679399824
Value of the monotonic clock (in nanoseconds): 13486679402777

Code #2: Use of time.monotonic_ns() method to measure elapsed time in long running process.
# Python program to explain time.monotonic_ns() method  # importing time moduleimport time    # Function to calculate factorial # of the given numberdef factorial(n):    f = 1    for i in range(n, 1, -1):        f = f * i          return f     # Get the value of the# monotonic clock in nanoseconds at the # beginning of the process# using time.monotonic_ns() methodstart = time.monotonic_ns()  # print the value of # the monotonic clock in nanosecondsprint("At the beginning of the process")print("Value of the monotonic clock (in nanoseconds):", start, "\n")  # Calculate factorial of all# numbers form 0 to 9i = 0fact = [0] * 10;  while i < 10:    fact[i] = factorial(i)    i = i + 1  # Print the calculated factorialfor i in range(0, len(fact)):    print("Factorial of % d:" % i, fact[i])  # Get the value of# monotonic clock in nanoseconds# using time.monotonic_ns() methodend = time.monotonic_ns()  # print the value of # the monotonic clockprint("\nAt the end of the process")print("Value of the monotonic clock (in nanoseconds):", end)print("Time elapsed during the process:", end - start)    
At the beginning of the process
Value of the monotonic clock (in nanoseconds): 14671301967243 

Factorial of 0: 1
Factorial of 1: 1
Factorial of 2: 2
Factorial of 3: 6
Factorial of 4: 24
Factorial of 5: 120
Factorial of 6: 720
Factorial of 7: 5040
Factorial of 8: 40320
Factorial of 9: 362880

At the end of the process
Value of the monotonic clock (in nanoseconds): 14671302231487
Time elapsed during the process: 264244

Reference: https://docs.python.org/3/library/time.html#time.monotonic_ns
surinderdawra388
python-utility
Python
Writing code in comment?
Please use ide.geeksforgeeks.org,
generate link and share the link here.