home | help
std::chrono..._clock::now(3)   C++ Standard Libary  std::chrono..._clock::now(3)

NAME
     std::chrono::file_clock::now - std::chrono::file_clock::now

Synopsis
	static	     std::chrono::time_point<std::chrono::file_clock>	   now()
     (since C++20)
	noexcept;

	Returns a time point representing the current point in time.

Parameters
	(none)

Return value
	A time point representing the current time.

Example
     // Run this code

      #include <chrono>
      #include <cstddef>
      #include <iomanip>
      #include <iostream>
      #include <numeric>
      #include <vector>

      volatile int sink;

      void do_some_work(std::size_t size)
      {
	  std::vector<int> v(size, 42);
	  sink = std::accumulate(v.begin(), v.end(), 0); // make sure  it  is  a
     side effect
      }

      int main()
      {
	  std::cout << std::fixed << std::setprecision(9) << std::left;
	  for (auto size{1ull}; size < 10'00'00'00'00ull; size *= 100)
	  {
	      const auto start = std::chrono::file_clock::now();
	      do_some_work(size);
	      const auto end = std::chrono::file_clock::now();

	      const std::chrono::duration<double> diff = end - start;

	      std::cout  <<  "Time  to	fill  and  iterate  a  vector  of  "  <<
     std::setw(9)
			<< size << " ints : " << diff << '\n';
	  }
      }

Possible output:
      Time to fill and iterate a vector of 1	     ints : 0.000006568s
      Time to fill and iterate a vector of 100	     ints : 0.000002854s
      Time to fill and iterate a vector of 10000     ints : 0.000116290s
      Time to fill and iterate a vector of 1000000   ints : 0.011742752s
      Time to fill and iterate a vector of 100000000 ints : 0.505534949s

http://cppreference.com 	   2024.06.10	    std::chrono..._clock::now(3)

home | help