freetype-commit
[Top][All Lists]
Advanced

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

[freetype2-demos] ftbench-gsoc-goksu 9b8fe44 13/17: [ftbench] Set up cac


From: Werner Lemberg
Subject: [freetype2-demos] ftbench-gsoc-goksu 9b8fe44 13/17: [ftbench] Set up cache earlier.
Date: Sat, 20 May 2023 08:29:46 -0400 (EDT)

branch: ftbench-gsoc-goksu
commit 9b8fe44e229bffd0f62a9f07a21d7af10095dd28
Author: Alexei Podtelezhnikov <apodtele@gmail.com>
Commit: Alexei Podtelezhnikov <apodtele@gmail.com>

    [ftbench] Set up cache earlier.
    
    * src/ftbench.c (main): Run `FTC_Manager_New` and `FTC_*Cache_New`
    earlier and decide the test availability accordingly.
    (test_*_cache,benchmark): Do not check if cache is set.
---
 src/ftbench.c | 83 ++++++++++++++++++++++-------------------------------------
 1 file changed, 31 insertions(+), 52 deletions(-)

diff --git a/src/ftbench.c b/src/ftbench.c
index 2eec5b6..f02a6f6 100644
--- a/src/ftbench.c
+++ b/src/ftbench.c
@@ -268,13 +268,6 @@
 
     if ( test->cache_first )
     {
-      if ( !cache_man )
-      {
-        printf( "  %-25s no cache manager\n", test->title );
-
-        return;
-      }
-
       TIMER_RESET( &timer );
       test->bench( &timer, face, test->user_data );
     }
@@ -587,12 +580,6 @@
     FT_UNUSED( face );
 
 
-    if ( !cmap_cache )
-    {
-      if ( FTC_CMapCache_New( cache_man, &cmap_cache ) )
-        return 0;
-    }
-
     TIMER_START( timer );
 
     for ( i = 0; i < charset->size; i++ )
@@ -623,12 +610,6 @@
     FT_UNUSED( user_data );
 
 
-    if ( !image_cache )
-    {
-      if ( FTC_ImageCache_New( cache_man, &image_cache ) )
-        return 0;
-    }
-
     TIMER_START( timer );
 
     FOREACH( i )
@@ -660,12 +641,6 @@
     FT_UNUSED( user_data );
 
 
-    if ( !sbit_cache )
-    {
-      if ( FTC_SBitCache_New( cache_man, &sbit_cache ) )
-        return 0;
-    }
-
     TIMER_START( timer );
 
     FOREACH( i )
@@ -1060,7 +1035,6 @@
     unsigned int   size           = FACE_SIZE;
     int            max_iter       = 0;
     double         max_time       = BENCH_TIME;
-    int            compare_cached = 0;
     int            j;
 
     unsigned int  versions[2] = { TT_INTERPRETER_VERSION_35,
@@ -1144,7 +1118,11 @@
         break;
 
       case 'C':
-        compare_cached = 1;
+        FTC_Manager_New( lib,
+                         0, 0, max_bytes,
+                         face_requester,
+                         NULL,
+                         &cache_man );
         break;
 
       case 'c':
@@ -1358,19 +1336,13 @@
       }
     }
 
-    if ( FTC_Manager_New( lib,
-                          0,
-                          0,
-                          max_bytes,
-                          face_requester,
-                          NULL,
-                          &cache_man ) )
-      compare_cached = 0;
-
-    font_type.face_id = (FTC_FaceID)1;
-    font_type.width   = size;
-    font_type.height  = size;
-    font_type.flags   = load_flags;
+    if ( cache_man )
+    {
+      font_type.face_id = (FTC_FaceID)1;
+      font_type.width   = size;
+      font_type.height  = size;
+      font_type.flags   = load_flags;
+    }
 
     printf( "\n"
             "font preloading into memory: %s\n"
@@ -1411,20 +1383,26 @@
         test.bench = test_load;
         benchmark( face, &test, max_iter, max_time );
 
-        if ( compare_cached )
+        if ( cache_man )
         {
           test.cache_first = 1;
 
-          test.title = "Load (image cached)";
-          test.bench = test_image_cache;
-          benchmark( face, &test, max_iter, max_time );
-
-          test.title = "Load (sbit cached)";
-          test.bench = test_sbit_cache;
-          if ( size )
+          if ( !FTC_ImageCache_New( cache_man, &image_cache ) )
+          {
+            test.title = "Load (image cached)";
+            test.bench = test_image_cache;
             benchmark( face, &test, max_iter, max_time );
-          else
-            printf( "  %-25s disabled (size = 0)\n", test.title );
+          }
+
+          if ( !FTC_SBitCache_New( cache_man, &sbit_cache ) )
+          {
+            test.title = "Load (sbit cached)";
+            test.bench = test_sbit_cache;
+            if ( size )
+              benchmark( face, &test, max_iter, max_time );
+            else
+              printf( "  %-25s disabled (size = 0)\n", test.title );
+          }
         }
         break;
 
@@ -1475,7 +1453,7 @@
           FT_Matrix  rot30 = { 0xDDB4, -0x8000, 0x8000, 0xDDB4 };
 
 
-          /* rotate outlines by 30 degrees so that CBox and BBox are different 
*/
+          /* rotate outlines by 30 degrees so that CBox and BBox differ */
           FT_Set_Transform( face, &rot30, NULL );
           benchmark( face, &test, max_iter, max_time );
           FT_Set_Transform( face, NULL, NULL );
@@ -1498,7 +1476,8 @@
 
             benchmark( face, &test, max_iter, max_time );
 
-            if ( compare_cached )
+            if ( cache_man                                    &&
+                 !FTC_CMapCache_New( cache_man, &cmap_cache ) )
             {
               test.cache_first = 1;
 



reply via email to

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