freetype-commit
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[freetype2-demos] master 760836b: * graph/grdevice.c (grDoneSurface) [GB


From: Werner Lemberg
Subject: [freetype2-demos] master 760836b: * graph/grdevice.c (grDoneSurface) [GBLENDER_STATS]: Report stats.
Date: Wed, 2 Jun 2021 14:15:21 -0400 (EDT)

branch: master
commit 760836b47365ded39957fdfe3fd294392343a372
Author: Alexei Podtelezhnikov <apodtele@gmail.com>
Commit: Alexei Podtelezhnikov <apodtele@gmail.com>

    * graph/grdevice.c (grDoneSurface) [GBLENDER_STATS]: Report stats.
    * graph/gblender.c (gblender_dump_stats): Improve formatting.
---
 ChangeLog        |  5 +++++
 graph/gblender.c | 21 ++++++++++++++-------
 graph/grdevice.c |  5 +++++
 3 files changed, 24 insertions(+), 7 deletions(-)

diff --git a/ChangeLog b/ChangeLog
index 3f4045e..14725a0 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,8 @@
+2021-06-02  Alexei Podtelezhnikov  <apodtele@gmail.com>
+
+       * graph/grdevice.c (grDoneSurface) [GBLENDER_STATS]: Report stats.
+       * graph/gblender.c (gblender_dump_stats): Improve formatting.
+
 2021-05-29  Werner Lemberg  <wl@gnu.org>
 
        Fix compilation errors and (some) warnings for clang++.
diff --git a/graph/gblender.c b/graph/gblender.c
index 6c171c3..87f9ea9 100644
--- a/graph/gblender.c
+++ b/graph/gblender.c
@@ -412,12 +412,19 @@ Exit:
 GBLENDER_APIDEF( void )
 gblender_dump_stats( GBlender  blender )
 {
-  printf( "hits = %ld, miss1 = %ld, miss2 = %ld, rate1=%.2f%%, rate2=%.2f%%\n",
-           blender->stat_hits,
-           blender->stat_lookups,
-           blender->stat_keys,
-           (100.0*blender->stat_hits) / (double)(blender->stat_hits + 
blender->stat_lookups),
-           (100.0*blender->stat_lookups) / (double)( blender->stat_lookups + 
blender->stat_keys)
-           );
+  printf( "GBlender cache statistics:\n" );
+  printf( "  Hit rate:    %.2f ( %ld out of %ld )\n",
+          100.0f * blender->stat_hits /
+                   ( blender->stat_hits + blender->stat_lookups ),
+          blender->stat_hits,
+          blender->stat_hits + blender->stat_lookups );
+
+  printf( "  Lookup rate: %.2f ( %ld out of %ld )\n",
+          100.0f * blender->stat_lookups /
+                   ( blender->stat_lookups + blender->stat_keys ),
+          blender->stat_lookups,
+          blender->stat_keys + blender->stat_lookups );
+  printf( "  Keys used:   %ld\n  Caches full: %ld\n",
+          blender->stat_keys, blender->stat_clears );
 }
 #endif
diff --git a/graph/grdevice.c b/graph/grdevice.c
index b1dcd1f..86b1ede 100644
--- a/graph/grdevice.c
+++ b/graph/grdevice.c
@@ -164,6 +164,11 @@
   {
     if (surface)
     {
+
+#ifdef GBLENDER_STATS
+      gblender_dump_stats( surface->gblender );
+#endif
+
       /* first of all, call the device-specific destructor */
       surface->done(surface);
 



reply via email to

[Prev in Thread] Current Thread [Next in Thread]