Login | Register   
LinkedIn
Google+
Twitter
RSS Feed
Download our iPhone app
TODAY'S HEADLINES  |   ARTICLE ARCHIVE  |   FORUMS  |   TIP BANK
Browse DevX
Sign up for e-mail newsletters from DevX


Tip of the Day
Home » Tip Bank » C++
Language: C++
Expertise: Beginner
Dec 16, 2015

Find Compilation Time of any Code and Execution Time of any Command

This is C source code written in Gcc platform (Linux, Ubuntu) that finds the compilation time of any other source code (e.g. C, C++, Java & others). It also finds the execution time of any command of Ubuntu in three time units: nanosecond, microsecond and millisecond.

Note: If you want to find the compilation time of a piece of Java source code using this C source code, the Java compiler must be installed in the machine.

#include <sys/time.h>
#include <stdio.h>
#include <time.h>
#include <math.h>

int main()
{
   struct timespec ts1;
   struct timespec ts2;
   char str[20];

   printf("\n\tCompile the code/ Execute the Commamnd: ");
   fgets(str, sizeof str, stdin);

   clock_gettime(CLOCK_REALTIME, &ts1);
   system (str);
   clock_gettime(CLOCK_REALTIME, &ts2);

   if (ts2.tv_nsec     { 
      ts2.tv_nsec= ts2.tv_nsec+ pow(10,9);      
      printf("\n\tCompilation time:\n\tNanosecond: %ld\n\tMicrosecond: %ld\n\tMillisecond: %ld\n", (ts2.tv_nsec - ts1.tv_nsec),  (ts2.tv_nsec - ts1.tv_nsec)/1000, (ts2.tv_nsec - ts1.tv_nsec)/1000000);
   }
   else
      printf("\n\tCompilation time:\n\tNanosecond: %ld\n\tMicrosecond: %ld\n\tMillisecond: %ld\n", (ts2.tv_nsec - ts1.tv_nsec),  (ts2.tv_nsec - ts1.tv_nsec)/1000, (ts2.tv_nsec - ts1.tv_nsec)/1000000);

   return 0;
}
Arup Goswami
 
Comment and Contribute

 

 

 

 

 


(Maximum characters: 1200). You have 1200 characters left.

 

 

Sitemap
Thanks for your registration, follow us on our social networks to keep up-to-date