[XviD-devel] XViD Profiling Measured time != Overall time

sajid anwar engrsajidanwar at gmail.com
Wed Dec 17 05:25:29 CET 2008

*Dear Experts,*

Whenever I use XViD Profiling using the utils/timer.c code, the output is
like this:

Overall encoding time: 140.000000 ms, we measured 40.000000 ms (28.571429
percent) Or

Overall encoding time: 160.000000 ms, we measured 100.000000 ms (62.500000
percent) and never ever is the measured time equal to the overall time. I
have even re located the global_satart_timer and global_Stop_timer()
functions but it has not measured 100 % time. My question is if 60 % of the
time is the measured time, then where is the remaining time consumed.


   switch(coding_type) {

    case I_VOP :

      decoder_iframe(dec, bs, quant, intra_dc_threshold);

    case P_VOP :
      decoder_pframe(dec, bs, rounding, quant,fcode_forward,
intra_dc_threshold, NULL);

    case S_VOP :
      printf(" No S-VoP Support in MPEG-4 SP Decoder ");

    case N_VOP :
      printf(" No N-VoP Support in MPEG-4 SP Decoder ");
      /* not_coded vops are not used for forward prediction */
      /* we should not swap(last_mbs,mbs) */
      start_timer(); // I made myself ; Although this is not necessary as My
input bitstream does not use this case
      image_copy(&dec->cur, &dec->refn[0], dec->edged_width, dec->height);
      SWAP(MACROBLOCK *, dec->mbs, dec->last_mbs); // it will be swapped


Inside decoder_iframe and decoder_pframe I have included all the code into
the profiling. But still the total measured time is not 100 %. Why is this
so, and seemingly there is no apparent code where the other percentage of
time is spent. Please help me regarding this issue.


Anwar Sajid
Seoul, Korea

More information about the Xvid-devel mailing list