[gegl] perf: update makefiles with a current highlight of interesting commits



commit 98c210e758d8df91491abaf587dd4ef6e35303d0
Author: Øyvind Kolås <pippin gimp org>
Date:   Sun Jan 7 19:29:13 2018 +0100

    perf: update makefiles with a current highlight of interesting commits
    
    Also various tweaks to the set of tests tested for by the history profiler.

 perf/Makefile-retrospect       |    5 +-
 perf/Makefile-tests            |    5 +-
 perf/create-report.rb          |   14 ++++
 perf/joblist                   |  131 +++++++++++++++++++++++++++++++++++++---
 perf/perf-build.sh             |    2 +-
 perf/test-common.h             |   12 ++--
 perf/test-gegl-buffer-access.c |   11 ++-
 perf/test-rotate.c             |    2 +-
 perf/test-scale.c              |    2 +-
 perf/test-unsharpmask.c        |    2 +-
 10 files changed, 158 insertions(+), 28 deletions(-)
---
diff --git a/perf/Makefile-retrospect b/perf/Makefile-retrospect
index 239471d..9ce3a93 100644
--- a/perf/Makefile-retrospect
+++ b/perf/Makefile-retrospect
@@ -3,7 +3,7 @@
 
 SELF = Makefile-retrospect
 
-MAKE_FLAGS = -j3 -k
+MAKE_FLAGS = -j5 -k
 CC = "ccache gcc"   # if you do not have ccache replace with just gcc
 
 PROJECT_PATH = ../
@@ -12,7 +12,8 @@ PROJECT_PATH = ../
 #.SILENT:
 
 # replace sequential with random to build a random subset
-all: reset sequential
+#all: reset sequential
+all: reset reverse
 #all: reset random
 
 retry:
diff --git a/perf/Makefile-tests b/perf/Makefile-tests
index 6bb3309..b02eafd 100644
--- a/perf/Makefile-tests
+++ b/perf/Makefile-tests
@@ -1,4 +1,5 @@
-CFILES = $(wildcard *.c)
+#CFILES = $(wildcard *.c)
+CFILES = test-rotate.c test-scale.c test-unsharpmask.c test-gegl-buffer-access.c
 bins   = $(subst ,,$(CFILES:.c=))
 
 all: $(bins)
@@ -8,7 +9,7 @@ all: $(bins)
 
 check: $(bins)
        for a in $(bins); do \
-         LD_LIBRARY_PATH=prefix/lib:$(LD_LIBRARY_PATH) ./$$a;\
+         GEGL_USE_OPENCL=no LD_LIBRARY_PATH=prefix/lib:$(LD_LIBRARY_PATH) ./$$a;\
        done
 
 clean:
diff --git a/perf/create-report.rb b/perf/create-report.rb
index 6f5eef9..cfebe8d 100755
--- a/perf/create-report.rb
+++ b/perf/create-report.rb
@@ -76,6 +76,20 @@ class Database
           [0.5,1,0.2, 0.7],
           [0.5,1,0.2, 0.7],
           [0.5,1,0.2, 0.7],
+          [0.5,1,0.2, 0.7],
+          [0.5,1,0.2, 0.7],
+          [0.5,1,0.2, 0.7],
+          [0.5,1,0.2, 0.7],
+          [0.5,1,0.2, 0.7],
+          [0.5,1,0.2, 0.7],
+          [0.5,1,0.2, 0.7],
+          [0.5,1,0.2, 0.7],
+          [0.5,1,0.2, 0.7],
+          [0.5,1,0.2, 0.7],
+          [0.5,1,0.2, 0.7],
+          [0.5,1,0.2, 0.7],
+          [0.5,1,0.2, 0.7],
+          [0.5,1,0.2, 0.7],
           [0.5,1,0.2, 0.7]
         ]
         @width  = 1800
diff --git a/perf/joblist b/perf/joblist
index 9ddd95f..5837405 100644
--- a/perf/joblist
+++ b/perf/joblist
@@ -1,15 +1,126 @@
+HEAD
 
-# 24ee45ef27f19971da390aa232e505bf6c72956d  should be blacklisted
+master~10..master
 
-#85267e0c013a41c8c0e64557e55868260ca9d9eb..master % 2
-master~16..master
-#master~16..master % 2
-master~32..master % 4
-master~128..master % 8
+# enable multi-thread by default
+
+f606e8f
+# make shape and offset of sampler prefetch adaptive
+
+e7f98682b9bddc7f7236fabe4cbc77e701510aa4
+
+
+03bdb529bccfcc5bc51dd02bc266d901a4af6300
+bacba9796ec0e914d790c3aa9aafa815c17b978e
+
+01fb757dabcf8e8baee58a525220ba063f9fb255
+5f4414f0261778644ba96db98cb9d0ea09ff6a6a
+
+c196378e7f2318914eb60d2f109d9a96ad5c91e3
+
+267f9aa40272ec444ecbcc37af029769294b0f88
+
+543a46eace5842f18c8bd9d706cf9fca81e2a3f4
+
+
+438f55111b1b21b9d607d6f0790999e4312a2229
+
+ba66d9ed139f6630c6938397be0c290d9a0211ec
+
+d9f994c9c62135933bda85931c47135633b53826
+
+dda39cc0bd0e9a92cb89323c888315f1fab13a65
+
+e2840d046a891d5c252f985f4270b9836ca589d5
+
+
+cb2c7e7883cbc7030eca03ff2dd2163fbb6a9ed1
+
+
+d1512f3e5f061d3a68782653a213f1494d11905e
+
+
+8bdbe3db69602d855039fa4a1db1894755e34277
+
+7404ac114c565238a04257cff48822872cf67bbc
+
+fbff27366db93369ee44b8388fbac8875c7c067a
+
+172d9b4f4e8a4ee906cb6dbc718e27f7a933161e
+
+5c741a6951e0d9f68e70ab339cc57d22b3e678df
+
+e25f8a0b4163bfdbaab8f20b6ec1f9c559676071
+
+0e653cb6def5286012c8160a19b5c0d708b56d45
+
+
+8b034c437b0162b26f85eb80867914977ac3cf57
+
+
+793a1a9d3d9186d29c5c017fa09752aa5358bfca
 
-#ae81fbf..master
-#
-#e4fd7c63e2b1bf19e6014bc64641828bbd478bc8..master % 128
+c141bbf26f629f70d33414247a42e8cac1056b29
 
-#e012437..master % 4
+b54454fd225c5a807b680dc1be14cba62acfafd7
+
+976b8be524ea91fdde7cfc5d08f7e7c732673f34
+
+
+ff5b5469a1e75b7f4e0db2b1df3cdb77f1edc542
+
+ceba8e415f10cff64ed35457a5b4fd19b81682a2
+
+462f4bb0f5bf8ac4897faa76641bbde9da703502
+
+856b32395789b1307fc2902e4f804a8b99526792
+
+f68e28b21b434717aa27a300dc635bc9949d1358
+
+8b7e7bf5f780638a7ba583218afbfb0010288ca9
+
+66dad2179c1ec9e8b32900ef6ef8f93244d51209
+
+5499882d02d30ee4be5d118639713e3f6933647c
+
+0b0ecbb67198d6318ed163522e5233ecbc18ff25
+
+66f2fdfb03b5d8b4426ef3ab963211fe0209bf8a
+
+df7547ae473e09aba351759db0ffc7f85257004c
+
+33293de5b4a716203fe6754b249ed42a28c4e14b
+
+e3787440917255b6936a8d55428aa9402fdfba08
+
+01fb757dabcf8e8baee58a525220ba063f9fb255
+
+10c584c31303ca6b1a2be37b70cebc73cbe4d427
+
+a17ee109c8271106ab1482dd408e1d17a44239d9
+
+d5a00968c98f86b360ceed5c71e082c5ddc17983
+
+4d25c34eb66719b09b8f959fa0ce49d42f4ec690
+
+e71c3cd6bc877b31f4c1946aad7ab6b9c93b6597
+
+d52b0385eb0147a1b8b0b75519836f45e7da8e9e
+
+f822d67d5a743e915bc6823f73ac38cd2a0eb54a
+
+c73fdfae576ada69a79dddf86fa98c39172e0902
+
+82b95d60aa616914fdd20b84abb4afff00f3e50e
+
+d195c300f164921d74f24ee06eb99d8d22e8ba2f
+
+9b3e9422e0fa296965525dd9fd2f502c83574a4f
+
+09e6133a340b666245749b682d9b76dd8b0d26d7
+
+134150914140043d2f945cd830dc288c66062bdc
+
+#master~16..master % 2
+#master~512..master % 8
 
diff --git a/perf/perf-build.sh b/perf/perf-build.sh
index 005b035..2d6b2f9 100755
--- a/perf/perf-build.sh
+++ b/perf/perf-build.sh
@@ -20,7 +20,7 @@ if [ ! -d prefixes/$REV ]; then
   ( 
     cd checkout;
     if [ ! -f Makefile ]; then
-      CC=$CC ./autogen.sh --disable-introspection --prefix=`pwd`/../prefix;
+      CC=$CC ./autogen.sh --disable-docs --disable-introspection --prefix=`pwd`/../prefix;
     fi;
 
     make $MAKE_FLAGS ;
diff --git a/perf/test-common.h b/perf/test-common.h
index fe478d0..4eaa6eb 100644
--- a/perf/test-common.h
+++ b/perf/test-common.h
@@ -12,10 +12,10 @@ long babl_ticks (void); /* using babl_ticks instead of gegl_ticks
 
 void test_start (void);
 void test_end (const gchar *id,
-               glong        bytes);
+               double       bytes);
 void test_end_suffix (const gchar *id,
                       const gchar *suffix,
-                      glong        bytes);
+                      gdouble      bytes);
 GeglBuffer *test_buffer (gint width,
                          gint height,
                          const Babl *format);
@@ -34,7 +34,7 @@ void test_start (void)
 
 void test_end_suffix (const gchar *id,
                       const gchar *suffix,
-                      glong        bytes)
+                      gdouble      bytes)
 {
   long ticks = babl_ticks ()-ticks_start;
   g_print ("@ %s%s: %.2f megabytes/second\n",
@@ -42,7 +42,7 @@ void test_end_suffix (const gchar *id,
 }
 
 void test_end (const gchar *id,
-               glong        bytes)
+               gdouble      bytes)
 {
     test_end_suffix (id, "", bytes);
 }
@@ -87,13 +87,13 @@ void do_bench (const gchar *id,
   // warm up
   test_func(buffer);
 
-#define ITERATIONS 16
+#define ITERATIONS 32
   test_start ();
   for (int i=0; i<ITERATIONS; ++i)
     {
       test_func(buffer);
     }
-  test_end_suffix (id, suffix, gegl_buffer_get_pixel_count (buffer) * 16 * ITERATIONS);
+  test_end_suffix (id, suffix, ((double)gegl_buffer_get_pixel_count (buffer)) * 16 * ITERATIONS);
 #undef ITERATIONS
 }
 
diff --git a/perf/test-gegl-buffer-access.c b/perf/test-gegl-buffer-access.c
index a201af6..d4a5ebc 100644
--- a/perf/test-gegl-buffer-access.c
+++ b/perf/test-gegl-buffer-access.c
@@ -7,7 +7,7 @@ main (gint    argc,
       gchar **argv)
 {
   GeglBuffer    *buffer;
-  GeglRectangle  bound = {0, 0, 4024, 4024};
+  GeglRectangle  bound = {0, 0, 2048, 2048};
   const Babl *format;
   gchar *buf;
   gint i;
@@ -17,7 +17,7 @@ main (gint    argc,
   buffer = gegl_buffer_new (&bound, format);
   buf = g_malloc0 (bound.width * bound.height * BPP);
 
-#define ITERATIONS 4
+#define ITERATIONS 64
 
   /* pre-initialize */
   gegl_buffer_set (buffer, &bound, 0, NULL, buf, GEGL_AUTO_ROWSTRIDE);
@@ -27,7 +27,7 @@ main (gint    argc,
     {
       gegl_buffer_get (buffer, &bound, 1.0, NULL, buf, GEGL_AUTO_ROWSTRIDE, GEGL_ABYSS_NONE);
      }
-  test_end ("gegl_buffer_get", bound.width * bound.height * ITERATIONS * BPP);
+  test_end ("gegl_buffer_get", 1.0 * bound.width * bound.height * ITERATIONS * BPP);
 
 
   test_start ();
@@ -35,11 +35,14 @@ main (gint    argc,
     {
       gegl_buffer_set (buffer, &bound, 0, NULL, buf, GEGL_AUTO_ROWSTRIDE);
      }
-  test_end ("gegl_buffer_set", bound.width * bound.height * ITERATIONS * BPP);
+  test_end ("gegl_buffer_set", 1.0 * bound.width * bound.height * ITERATIONS * BPP);
 
 
   format = babl_format ("RGBA float");
 
+#undef ITERATIONS
+#define ITERATIONS 128
+
   {
 #define SAMPLES 150000
     gint rands[SAMPLES*2];
diff --git a/perf/test-rotate.c b/perf/test-rotate.c
index c9c6d0d..34f93c7 100644
--- a/perf/test-rotate.c
+++ b/perf/test-rotate.c
@@ -11,7 +11,7 @@ main (gint    argc,
 
   gegl_init (&argc, &argv);
 
-  buffer = test_buffer (1024, 1024, babl_format ("RGBA float"));
+  buffer = test_buffer (2048, 1024, babl_format ("RGBA float"));
   bench ("rotate", buffer, &rotate);
   bench ("rotate-nearest", buffer, &rotate_nearest);
 
diff --git a/perf/test-scale.c b/perf/test-scale.c
index e34f7c9..c0f0165 100644
--- a/perf/test-scale.c
+++ b/perf/test-scale.c
@@ -11,7 +11,7 @@ main (gint    argc,
 
   gegl_init (&argc, &argv);
 
-  buffer = test_buffer (1024, 1024, babl_format ("RGBA float"));
+  buffer = test_buffer (2048, 1024, babl_format ("RGBA float"));
   bench ("scale", buffer, &scale);
   bench ("scale-nearest", buffer, &scale_nearest);
   g_object_unref (buffer);
diff --git a/perf/test-unsharpmask.c b/perf/test-unsharpmask.c
index 0095825..b4048d5 100644
--- a/perf/test-unsharpmask.c
+++ b/perf/test-unsharpmask.c
@@ -10,7 +10,7 @@ main (gint    argc,
 
   gegl_init (&argc, &argv);
 
-  buffer = test_buffer (2048, 1024, babl_format ("RGBA float"));
+  buffer = test_buffer (1024, 1024, babl_format ("RGBA float"));
   bench("unsharp-mask", buffer, &unsharpmask);
 
   return 0;


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