हम निम्नलिखित सिंटैक्स का उपयोग करके कोड स्निपेट के निष्पादन समय की गणना कर सकते हैं -
auto start = high_resolution_clock::now(); // Start time // Code snippet auto stop = high_resolution_clock::now(); // Stop time auto duration = duration_cast<microseconds>(stop - start); // Duration
कक्षा high_resolution_clock को "chrono" हेडर फ़ाइल में परिभाषित किया गया है। फ़ंक्शन now() कॉल के समय के अनुरूप मान लौटा रहा है।
हेडर फ़ाइल का उपयोग उस विशेष कोड द्वारा लिए गए समय को रिकॉर्ड करने के लिए किया जाता है।
#include <chrono> using namespace std::chrono;
कोड स्निपेट के निष्पादन समय की गणना करने के लिए निम्नलिखित एक उदाहरण है।
उदाहरण
#include <iostream> #include <chrono> using namespace std::chrono; using namespace std; int sum(int x, int y) { int s = x + y; cout << "The sum of numbers : " << s; } int main() { auto start = high_resolution_clock::now(); sum(28, 8); auto stop = high_resolution_clock::now(); auto duration = duration_cast<microseconds>(stop - start); cout << "\nTime taken by function : "<< duration.count() << " microseconds"; return 0; }
आउटपुट
The sum of numbers : 36 Time taken by function : 42 microseconds
उपरोक्त कार्यक्रम में, संख्याओं के योग की गणना करने के लिए एक फ़ंक्शन sum() परिभाषित किया गया है।
int sum(int x, int y) { int s = x + y; cout << "The sum of numbers : " << s; }
मुख्य () फ़ंक्शन में, हमने कुछ पूर्वनिर्धारित कार्यों और वर्ग "क्रोनो" का उपयोग करके फ़ंक्शन योग () द्वारा लिए गए समय को रिकॉर्ड किया।
auto start = high_resolution_clock::now(); sum(28, 8); auto stop = high_resolution_clock::now(); auto duration = duration_cast<microseconds>(stop - start);