]> granicus.if.org Git - imagemagick/commitdiff
(no commit message)
authorcristy <urban-warrior@git.imagemagick.org>
Mon, 28 Sep 2009 18:20:20 +0000 (18:20 +0000)
committercristy <urban-warrior@git.imagemagick.org>
Mon, 28 Sep 2009 18:20:20 +0000 (18:20 +0000)
14 files changed:
magick/identify.c
magick/log.c
tests/validate.c
utilities/animate.c
utilities/compare.c
utilities/composite.c
utilities/conjure.c
utilities/convert.c
utilities/display.c
utilities/identify.c
utilities/import.c
utilities/mogrify.c
utilities/montage.c
utilities/stream.c

index 9feddef22c58269ac9820e97b7b554d8e4ec1ee9..9f40f4161487d29ca8454e52fdef99dff0872465 100644 (file)
@@ -243,8 +243,9 @@ MagickExport MagickBooleanType IdentifyImage(Image *image,FILE *file,
           (void) fprintf(file,"%s ",format);
         }
       if (elapsed_time > 0.06)
-        (void) fprintf(file,"%0.3fu %ld:%02ld",user_time,(long)
-          (elapsed_time/60.0+0.5),(long) ceil(fmod(elapsed_time,60.0)));
+        (void) fprintf(file,"%0.3fu %ld:%02ld.%03ld",user_time,(long)
+          (elapsed_time/60.0+0.5),(long) floor(fmod(elapsed_time,60.0)),
+          (long) (1000.0*(elapsed_time-floor(elapsed_time))+0.5));
       (void) fprintf(file,"\n");
       (void) fflush(file);
       return(ferror(file) != 0 ? MagickFalse : MagickTrue);
@@ -992,8 +993,9 @@ MagickExport MagickBooleanType IdentifyImage(Image *image,FILE *file,
         image->rows/elapsed_time+0.5),format);
       (void) fprintf(file,"  Pixels per second: %s\n",format);
       (void) fprintf(file,"  User time: %0.3fu\n",user_time);
-      (void) fprintf(file,"  Elapsed time: %ld:%02ld\n",(long) (elapsed_time/
-        60.0+0.5),(long) ceil(fmod(elapsed_time,60.0)));
+      (void) fprintf(file,"  Elapsed time: %ld:%02ld.%03ld\n",(long) (
+        elapsed_time/60.0+0.5),(long) ceil(fmod(elapsed_time,60.0)),
+        (long) (1000.0*(elapsed_time-floor(elapsed_time))+0.5));
     }
   (void) fprintf(file,"  Version: %s\n",GetMagickVersion(
     (unsigned long *) NULL));
index 502c711ed82aa38a16fdd9bfe03da063fd561ee2..c7b5c1b3ab73198736344abf1612d00172ab333c 100644 (file)
@@ -790,7 +790,7 @@ static char *TranslateEvent(const LogEventType magick_unused(type),
       (void) FormatMagickString(text,extent,
         "<entry>\n"
         "  <timestamp>%s</timestamp>\n"
-        "  <elapsed-time>%ld:%02ld</elapsed-time>\n"
+        "  <elapsed-time>%ld:%02ld.%03ld</elapsed-time>\n"
         "  <user-time>%0.3f</user-time>\n"
         "  <process-id>%ld</process-id>\n"
         "  <thread-id>%lu</thread-id>\n"
@@ -799,8 +799,9 @@ static char *TranslateEvent(const LogEventType magick_unused(type),
         "  <line>%lu</line>\n"
         "  <domain>%s</domain>\n"
         "  <event>%s</event>\n"
-        "</entry>",timestamp,(long) (elapsed_time/60.0),
-        (long) ceil(fmod(elapsed_time,60.0)),user_time,(long) getpid(),
+        "</entry>",timestamp,(long) (elapsed_time/60.0),(long)
+        floor(fmod(elapsed_time,60.0)),(long) (1000.0*(elapsed_time-
+        floor(elapsed_time))+0.5),user_time,(long) getpid(),
         GetMagickThreadSignature(),module,function,line,domain,event);
       return(text);
     }
@@ -923,8 +924,9 @@ static char *TranslateEvent(const LogEventType magick_unused(type),
       }
       case 'r':
       {
-        q+=FormatMagickString(q,extent,"%ld:%02ld",(long)
-          (elapsed_time/60.0),(long) ceil(fmod(elapsed_time,60.0)));
+        q+=FormatMagickString(q,extent,"%ld:%02ld.%03ld",(long)
+          (elapsed_time/60.0),(long) floor(fmod(elapsed_time,60.0)),
+          (long) (1000.0*(elapsed_time-floor(elapsed_time))+0.5));
         break;
       }
       case 't':
index 9fb7094fb93a8cabf16bb4d2dec88748cb2d3a06..f46ad60f1db4608134a8b2fdc75a4344989f9805 100644 (file)
@@ -1268,8 +1268,6 @@ int main(int argc,char **argv)
   exception=AcquireExceptionInfo();
   image_info=AcquireImageInfo();
   (void) CopyMagickString(image_info->filename,ReferenceFilename,MaxTextExtent);
-  timer=AcquireTimerInfo();
-  GetTimerInfo(timer);
   for (i=1; i < (long) argc; i++)
   {
     option=argv[i];
@@ -1360,6 +1358,8 @@ int main(int argc,char **argv)
         ThrowValidateException(OptionError,"UnrecognizedOption",option)
     }
   }
+  if (iterations > 1)
+    timer=AcquireTimerInfo();
   reference_image=ReadImage(image_info,exception);
   tests=0;
   fail=0;
@@ -1429,6 +1429,7 @@ int main(int argc,char **argv)
       (void) fprintf(stderr,"Performance: %lui %gips %0.3fu %ld:%02ld\n",
         iterations,1.0*iterations/elapsed_time,user_time,(long)
         (elapsed_time/60.0+0.5),(long) ceil(fmod(elapsed_time,60.0)));
+      timer=DestroyTimerInfo(timer);
     }
   DestroyValidate();
   MagickCoreTerminus();
index af8c3251b8fbc528a0e946e684d0089b1d315bd5..bb06a8e3c0eb968997d0b60c0398e583d8766c35 100644 (file)
@@ -115,7 +115,7 @@ int main(int argc,char **argv)
     i;
 
   TimerInfo
-    timer;
+    *timer;
 
   unsigned long
     iterations;
@@ -137,7 +137,9 @@ int main(int argc,char **argv)
     if (LocaleCompare("regard-warnings",option+1) == 0)
       regard_warnings=MagickTrue;
   }
-  GetTimerInfo(&timer);
+  timer=(TimerInfo *) NULL;
+  if (iterations > 1)
+    timer=AcquireTimerInfo();
   for (i=0; i < (long) iterations; i++)
   {
     image_info=AcquireImageInfo();
@@ -153,11 +155,13 @@ int main(int argc,char **argv)
   }
   if (iterations > 1)
     {
-      elapsed_time=GetElapsedTime(&timer);
-      user_time=GetUserTime(&timer);
-      (void) fprintf(stderr,"Performance: %lui %gips %0.3fu %ld:%02ld\n",
+      elapsed_time=GetElapsedTime(timer);
+      user_time=GetUserTime(timer);
+      (void) fprintf(stderr,"Performance: %lui %gips %0.3fu %ld:%02ld.%03ld\n",
         iterations,1.0*iterations/elapsed_time,user_time,(long)
-        (elapsed_time/60.0+0.5),(long) ceil(fmod(elapsed_time,60.0)));
+        (elapsed_time/60.0+0.5),(long) ceil(fmod(elapsed_time,60.0)),
+        (long) (1000.0*(elapsed_time-floor(elapsed_time))+0.5));
+      timer=DestroyTimerInfo(timer);
     }
   exception=DestroyExceptionInfo(exception);
   MagickCoreTerminus();
index 72368bd2f08deeb43ac676514c97b7fe3c413dff..798de3f40417cd76702bbe39bd7d03f7f99adafd 100644 (file)
@@ -89,7 +89,7 @@ int main(int argc,char **argv)
     i;
 
   TimerInfo
-    timer;
+    *timer;
 
   unsigned long
     iterations;
@@ -111,7 +111,9 @@ int main(int argc,char **argv)
     if (LocaleCompare("regard-warnings",option+1) == 0)
       regard_warnings=MagickTrue;
   }
-  GetTimerInfo(&timer);
+  timer=(TimerInfo *) NULL;
+  if (iterations > 1)
+    timer=AcquireTimerInfo();
   for (i=0; i < (long) iterations; i++)
   {
     image_info=AcquireImageInfo();
@@ -134,11 +136,13 @@ int main(int argc,char **argv)
   }
   if (iterations > 1)
     {
-      elapsed_time=GetElapsedTime(&timer);
-      user_time=GetUserTime(&timer);
-      (void) fprintf(stderr,"Performance: %lui %gips %0.3fu %ld:%02ld\n",
+      elapsed_time=GetElapsedTime(timer);
+      user_time=GetUserTime(timer);
+      (void) fprintf(stderr,"Performance: %lui %gips %0.3fu %ld:%02ld.%03ld\n",
         iterations,1.0*iterations/elapsed_time,user_time,(long)
-        (elapsed_time/60.0+0.5),(long) ceil(fmod(elapsed_time,60.0)));
+        (elapsed_time/60.0+0.5),(long) ceil(fmod(elapsed_time,60.0)),
+        (long) (1000.0*(elapsed_time-floor(elapsed_time))+0.5));
+      timer=DestroyTimerInfo(timer);
     }
   exception=DestroyExceptionInfo(exception);
   MagickCoreTerminus();
index cf9b8bb09096408bc4b094eeb95afa876afcba69..d07796c7c2bded8772a8e583611ae42a272bce3a 100644 (file)
@@ -87,7 +87,7 @@ int main(int argc,char **argv)
     i;
 
   TimerInfo
-    timer;
+    *timer;
 
   unsigned long
     iterations;
@@ -109,7 +109,9 @@ int main(int argc,char **argv)
     if (LocaleCompare("regard-warnings",option+1) == 0)
       regard_warnings=MagickTrue;
   }
-  GetTimerInfo(&timer);
+  timer=(TimerInfo *) NULL;
+  if (iterations > 1)
+    timer=AcquireTimerInfo();
   for (i=0; i < (long) iterations; i++)
   {
     image_info=AcquireImageInfo();
@@ -125,11 +127,13 @@ int main(int argc,char **argv)
   }
   if (iterations > 1)
     {
-      elapsed_time=GetElapsedTime(&timer);
-      user_time=GetUserTime(&timer);
-      (void) fprintf(stderr,"Performance: %lui %gips %0.3fu %ld:%02ld\n",
+      elapsed_time=GetElapsedTime(timer);
+      user_time=GetUserTime(timer);
+      (void) fprintf(stderr,"Performance: %lui %gips %0.3fu %ld:%02ld.%03ld\n",
         iterations,1.0*iterations/elapsed_time,user_time,(long)
-        (elapsed_time/60.0+0.5),(long) ceil(fmod(elapsed_time,60.0)));
+        (elapsed_time/60.0+0.5),(long) ceil(fmod(elapsed_time,60.0)),
+        (long) (1000.0*(elapsed_time-floor(elapsed_time))+0.5));
+      timer=DestroyTimerInfo(timer);
     }
   exception=DestroyExceptionInfo(exception);
   MagickCoreTerminus();
index 39f22d3ba527edce977df552e8f9dee4bfb744d3..03a1741cc70dc88c05147d6a0e20e2b123f70c52 100644 (file)
@@ -106,7 +106,7 @@ int main(int argc,char **argv)
     i;
 
   TimerInfo
-    timer;
+    *timer;
 
   unsigned long
     iterations;
@@ -128,7 +128,9 @@ int main(int argc,char **argv)
     if (LocaleCompare("regard-warnings",option+1) == 0)
       regard_warnings=MagickTrue;
   }
-  GetTimerInfo(&timer);
+  timer=(TimerInfo *) NULL;
+  if (iterations > 1)
+    timer=AcquireTimerInfo();
   for (i=0; i < (long) iterations; i++)
   {
     image_info=AcquireImageInfo();
@@ -144,11 +146,13 @@ int main(int argc,char **argv)
   }
   if (iterations > 1)
     {
-      elapsed_time=GetElapsedTime(&timer);
-      user_time=GetUserTime(&timer);
-      (void) fprintf(stderr,"Performance: %lui %gips %0.3fu %ld:%02ld\n",
+      elapsed_time=GetElapsedTime(timer);
+      user_time=GetUserTime(timer);
+      (void) fprintf(stderr,"Performance: %lui %gips %0.3fu %ld:%02ld.%03ld\n",
         iterations,1.0*iterations/elapsed_time,user_time,(long)
-        (elapsed_time/60.0+0.5),(long) ceil(fmod(elapsed_time,60.0)));
+        (elapsed_time/60.0+0.5),(long) ceil(fmod(elapsed_time,60.0)),
+        (long) (1000.0*(elapsed_time-floor(elapsed_time))+0.5));
+      timer=DestroyTimerInfo(timer);
     }
   exception=DestroyExceptionInfo(exception);
   MagickCoreTerminus();
index 6f30cd9325469cfbd446432a1814c8bfbde217ad..b1e103ef38a0e22ca91551c1c5142d70216ab40e 100644 (file)
@@ -93,7 +93,7 @@ int main(int argc,char **argv)
     i;
 
   TimerInfo
-    timer;
+    *timer;
 
   unsigned long
     iterations;
@@ -115,7 +115,9 @@ int main(int argc,char **argv)
     if (LocaleCompare("regard-warnings",option+1) == 0)
       regard_warnings=MagickTrue;
   }
-  GetTimerInfo(&timer);
+  timer=(TimerInfo *) NULL;
+  if (iterations > 1)
+    timer=AcquireTimerInfo();
   for (i=0; i < (long) iterations; i++)
   {
     image_info=AcquireImageInfo();
@@ -131,11 +133,13 @@ int main(int argc,char **argv)
   }
   if (iterations > 1)
     {
-      elapsed_time=GetElapsedTime(&timer);
-      user_time=GetUserTime(&timer);
-      (void) fprintf(stderr,"Performance: %lui %gips %0.3fu %ld:%02ld\n",
+      elapsed_time=GetElapsedTime(timer);
+      user_time=GetUserTime(timer);
+      (void) fprintf(stderr,"Performance: %lui %gips %0.3fu %ld:%02ld.%03ld\n",
         iterations,1.0*iterations/elapsed_time,user_time,(long)
-        (elapsed_time/60.0+0.5),(long) ceil(fmod(elapsed_time,60.0)));
+        (elapsed_time/60.0+0.5),(long) ceil(fmod(elapsed_time,60.0)),
+        (long) (1000.0*(elapsed_time-floor(elapsed_time))+0.5));
+      timer=DestroyTimerInfo(timer);
     }
   exception=DestroyExceptionInfo(exception);
   MagickCoreTerminus();
index 894b7f0720875cd9b560ac00499c9ad67e9470f1..5ef11256ffbcc3c49000eb2503a0e1c672e5f942 100644 (file)
@@ -117,7 +117,7 @@ int main(int argc,char **argv)
     i;
 
   TimerInfo
-    timer;
+    *timer;
 
   unsigned long
     iterations;
@@ -139,7 +139,9 @@ int main(int argc,char **argv)
     if (LocaleCompare("regard-warnings",option+1) == 0)
       regard_warnings=MagickTrue;
   }
-  GetTimerInfo(&timer);
+  timer=(TimerInfo *) NULL;
+  if (iterations > 1)
+    timer=AcquireTimerInfo();
   for (i=0; i < (long) iterations; i++)
   {
     image_info=AcquireImageInfo();
@@ -155,11 +157,13 @@ int main(int argc,char **argv)
   }
   if (iterations > 1)
     {
-      elapsed_time=GetElapsedTime(&timer);
-      user_time=GetUserTime(&timer);
-      (void) fprintf(stderr,"Performance: %lui %gips %0.3fu %ld:%02ld\n",
+      elapsed_time=GetElapsedTime(timer);
+      user_time=GetUserTime(timer);
+      (void) fprintf(stderr,"Performance: %lui %gips %0.3fu %ld:%02ld.%03ld\n",
         iterations,1.0*iterations/elapsed_time,user_time,(long)
-        (elapsed_time/60.0+0.5),(long) ceil(fmod(elapsed_time,60.0)));
+        (elapsed_time/60.0+0.5),(long) ceil(fmod(elapsed_time,60.0)),
+        (long) (1000.0*(elapsed_time-floor(elapsed_time))+0.5));
+      timer=DestroyTimerInfo(timer);
     }
   exception=DestroyExceptionInfo(exception);
   MagickCoreTerminus();
index 889990df50a0339a86cada6e73f2e05a521a9616..69baccb172c72abd42cf5d758caed947fd4bfe80 100644 (file)
@@ -89,7 +89,7 @@ int main(int argc,char **argv)
     i;
 
   TimerInfo
-    timer;
+    *timer;
 
   unsigned long
     iterations;
@@ -111,7 +111,9 @@ int main(int argc,char **argv)
     if (LocaleCompare("regard-warnings",option+1) == 0)
       regard_warnings=MagickTrue;
   }
-  GetTimerInfo(&timer);
+  timer=(TimerInfo *) NULL;
+  if (iterations > 1)
+    timer=AcquireTimerInfo();
   for (i=0; i < (long) iterations; i++)
   {
     image_info=AcquireImageInfo();
@@ -134,11 +136,13 @@ int main(int argc,char **argv)
   }
   if (iterations > 1)
     {
-      elapsed_time=GetElapsedTime(&timer);
-      user_time=GetUserTime(&timer);
-      (void) fprintf(stderr,"Performance: %lui %gips %0.3fu %ld:%02ld\n",
+      elapsed_time=GetElapsedTime(timer);
+      user_time=GetUserTime(timer);
+      (void) fprintf(stderr,"Performance: %lui %gips %0.3fu %ld:%02ld.%03ld\n",
         iterations,1.0*iterations/elapsed_time,user_time,(long)
-        (elapsed_time/60.0+0.5),(long) ceil(fmod(elapsed_time,60.0)));
+        (elapsed_time/60.0+0.5),(long) ceil(fmod(elapsed_time,60.0)),
+        (long) (1000.0*(elapsed_time-floor(elapsed_time))+0.5));
+      timer=DestroyTimerInfo(timer);
     }
   exception=DestroyExceptionInfo(exception);
   MagickCoreTerminus();
index ccbc6716e3b9f2099712604a3535e8421b1485a0..e76dadd7ea271f6e57d4f9cfd4355f4544826c0b 100644 (file)
@@ -93,7 +93,7 @@ int main(int argc,char **argv)
     i;
 
   TimerInfo
-    timer;
+    *timer;
 
   unsigned long
     iterations;
@@ -115,7 +115,9 @@ int main(int argc,char **argv)
     if (LocaleCompare("regard-warnings",option+1) == 0)
       regard_warnings=MagickTrue;
   }
-  GetTimerInfo(&timer);
+  timer=(TimerInfo *) NULL;
+  if (iterations > 1)
+    timer=AcquireTimerInfo();
   for (i=0; i < (long) iterations; i++)
   {
     image_info=AcquireImageInfo();
@@ -131,11 +133,13 @@ int main(int argc,char **argv)
   }
   if (iterations > 1)
     {
-      elapsed_time=GetElapsedTime(&timer);
-      user_time=GetUserTime(&timer);
-      (void) fprintf(stderr,"Performance: %lui %gips %0.3fu %ld:%02ld\n",
+      elapsed_time=GetElapsedTime(timer);
+      user_time=GetUserTime(timer);
+      (void) fprintf(stderr,"Performance: %lui %gips %0.3fu %ld:%02ld.%03ld\n",
         iterations,1.0*iterations/elapsed_time,user_time,(long)
-        (elapsed_time/60.0+0.5),(long) ceil(fmod(elapsed_time,60.0)));
+        (elapsed_time/60.0+0.5),(long) ceil(fmod(elapsed_time,60.0)),
+        (long) (1000.0*(elapsed_time-floor(elapsed_time))+0.5));
+      timer=DestroyTimerInfo(timer);
     }
   exception=DestroyExceptionInfo(exception);
   MagickCoreTerminus();
index 35e5e89bd856d5ca43b2d5c0164cd51ced8b65aa..d26cdaf8f58e0f867c8cbc8b2f1e01284753f6d1 100644 (file)
@@ -89,7 +89,7 @@ int main(int argc,char **argv)
     i;
 
   TimerInfo
-    timer;
+    *timer;
 
   unsigned long
     iterations;
@@ -111,7 +111,9 @@ int main(int argc,char **argv)
     if (LocaleCompare("regard-warnings",option+1) == 0)
       regard_warnings=MagickTrue;
   }
-  GetTimerInfo(&timer);
+  timer=(TimerInfo *) NULL;
+  if (iterations > 1)
+    timer=AcquireTimerInfo();
   for (i=0; i < (long) iterations; i++)
   {
     image_info=AcquireImageInfo();
@@ -127,11 +129,13 @@ int main(int argc,char **argv)
   }
   if (iterations > 1)
     {
-      elapsed_time=GetElapsedTime(&timer);
-      user_time=GetUserTime(&timer);
-      (void) fprintf(stderr,"Performance: %lui %gips %0.3fu %ld:%02ld\n",
+      elapsed_time=GetElapsedTime(timer);
+      user_time=GetUserTime(timer);
+      (void) fprintf(stderr,"Performance: %lui %gips %0.3fu %ld:%02ld.%03ld\n",
         iterations,1.0*iterations/elapsed_time,user_time,(long)
-        (elapsed_time/60.0+0.5),(long) ceil(fmod(elapsed_time,60.0)));
+        (elapsed_time/60.0+0.5),(long) ceil(fmod(elapsed_time,60.0)),
+        (long) (1000.0*(elapsed_time-floor(elapsed_time))+0.5));
+      timer=DestroyTimerInfo(timer);
     }
   exception=DestroyExceptionInfo(exception);
   MagickCoreTerminus();
index d17145f5c4790893932919ec869d0f8d2b0b3d7a..6cebb799bb7c1f7ec8ad00ad51a2cbaaa43d6b6b 100644 (file)
@@ -89,7 +89,7 @@ int main(int argc,char **argv)
     i;
 
   TimerInfo
-    timer;
+    *timer;
 
   unsigned long
     iterations;
@@ -111,7 +111,9 @@ int main(int argc,char **argv)
     if (LocaleCompare("regard-warnings",option+1) == 0)
       regard_warnings=MagickTrue;
   }
-  GetTimerInfo(&timer);
+  timer=(TimerInfo *) NULL;
+  if (iterations > 1)
+    timer=AcquireTimerInfo();
   for (i=0; i < (long) iterations; i++)
   {
     image_info=AcquireImageInfo();
@@ -127,11 +129,13 @@ int main(int argc,char **argv)
   }
   if (iterations > 1)
     {
-      elapsed_time=GetElapsedTime(&timer);
-      user_time=GetUserTime(&timer);
-      (void) fprintf(stderr,"Performance: %lui %gips %0.3fu %ld:%02ld\n",
+      elapsed_time=GetElapsedTime(timer);
+      user_time=GetUserTime(timer);
+      (void) fprintf(stderr,"Performance: %lui %gips %0.3fu %ld:%02ld.%03ld\n",
         iterations,1.0*iterations/elapsed_time,user_time,(long)
-        (elapsed_time/60.0+0.5),(long) ceil(fmod(elapsed_time,60.0)));
+        (elapsed_time/60.0+0.5),(long) ceil(fmod(elapsed_time,60.0)),
+        (long) (1000.0*(elapsed_time-floor(elapsed_time))+0.5));
+      timer=DestroyTimerInfo(timer);
     }
   exception=DestroyExceptionInfo(exception);
   MagickCoreTerminus();
index 86c8500b0c822da86bd3245eb4f52e32d6d3d309..6b2b7243053a483a83ed002d8d98f7f65bce9e05 100644 (file)
@@ -89,7 +89,7 @@ int main(int argc,char **argv)
     i;
 
   TimerInfo
-    timer;
+    *timer;
 
   unsigned long
     iterations;
@@ -111,7 +111,9 @@ int main(int argc,char **argv)
     if (LocaleCompare("regard-warnings",option+1) == 0)
       regard_warnings=MagickTrue;
   }
-  GetTimerInfo(&timer);
+  timer=(TimerInfo *) NULL;
+  if (iterations > 1)
+    timer=AcquireTimerInfo();
   for (i=0; i < (long) iterations; i++)
   {
     image_info=AcquireImageInfo();
@@ -127,11 +129,13 @@ int main(int argc,char **argv)
   }
   if (iterations > 1)
     {
-      elapsed_time=GetElapsedTime(&timer);
-      user_time=GetUserTime(&timer);
-      (void) fprintf(stderr,"Performance: %lui %gips %0.3fu %ld:%02ld\n",
+      elapsed_time=GetElapsedTime(timer);
+      user_time=GetUserTime(timer);
+      (void) fprintf(stderr,"Performance: %lui %gips %0.3fu %ld:%02ld.%03ld\n",
         iterations,1.0*iterations/elapsed_time,user_time,(long)
-        (elapsed_time/60.0+0.5),(long) ceil(fmod(elapsed_time,60.0)));
+        (elapsed_time/60.0+0.5),(long) ceil(fmod(elapsed_time,60.0)),
+        (long) (1000.0*(elapsed_time-floor(elapsed_time))+0.5));
+      timer=DestroyTimerInfo(timer);
     }
   exception=DestroyExceptionInfo(exception);
   MagickCoreTerminus();