Add predfined configs for msaa4, nvpr4, nvpr4dit, and srgb that explictly use OpenGL...
authorbsalomon <bsalomon@google.com>
Tue, 5 Apr 2016 14:03:42 +0000 (07:03 -0700)
committerCommit bot <commit-bot@chromium.org>
Tue, 5 Apr 2016 14:03:42 +0000 (07:03 -0700)
GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1853103003

Review URL: https://codereview.chromium.org/1853103003

tests/TestConfigParsing.cpp
tools/dm_flags.json
tools/dm_flags.py
tools/flags/SkCommonFlagsConfig.cpp
tools/nanobench_flags.json
tools/nanobench_flags.py

index f718994..301f6a2 100644 (file)
@@ -58,10 +58,16 @@ DEF_TEST(ParseConfigs_OutParam, reporter) {
     ParseConfigs(config1, &configs);
     REPORTER_ASSERT(reporter, configs.count() == 1);
     REPORTER_ASSERT(reporter, configs[0]->getTag().equals("gpu"));
+
     SkCommandLineFlags::StringArray config2 = make_string_array({"8888"});
     ParseConfigs(config2, &configs);
     REPORTER_ASSERT(reporter, configs.count() == 1);
     REPORTER_ASSERT(reporter, configs[0]->getTag().equals("8888"));
+
+    SkCommandLineFlags::StringArray config3 = make_string_array({"gl"});
+    ParseConfigs(config3, &configs);
+    REPORTER_ASSERT(reporter, configs.count() == 1);
+    REPORTER_ASSERT(reporter, configs[0]->getTag().equals("gl"));
 }
 
 DEF_TEST(ParseConfigs_DefaultConfigs, reporter) {
@@ -71,7 +77,7 @@ DEF_TEST(ParseConfigs_DefaultConfigs, reporter) {
         "565", "8888", "debug", "gpu", "gpudebug", "gpudft", "gpunull", "msaa16", "msaa4",
         "nonrendering", "null", "nullgpu", "nvpr16", "nvpr4", "nvprdit16", "nvprdit4", "pdf",
         "skp", "svg", "xps", "angle", "angle-gl", "commandbuffer", "mesa", "hwui",
-        "gpuf16", "gpusrgb"
+        "gpuf16", "gpusrgb", "gl", "glnvpr4", "glnvprdit4", "glsrgb", "glmsaa4"
     });
 
     SkCommandLineConfigArray configs;
@@ -141,6 +147,20 @@ DEF_TEST(ParseConfigs_DefaultConfigs, reporter) {
 #else
     REPORTER_ASSERT(reporter, !configs[23]->asConfigGpu());
 #endif
+    REPORTER_ASSERT(reporter, configs[27]->asConfigGpu());
+    REPORTER_ASSERT(reporter, configs[28]->asConfigGpu());
+    REPORTER_ASSERT(reporter, configs[28]->asConfigGpu()->getSamples() == 4);
+    REPORTER_ASSERT(reporter, configs[28]->asConfigGpu()->getUseNVPR());
+    REPORTER_ASSERT(reporter, configs[29]->asConfigGpu());
+    REPORTER_ASSERT(reporter, configs[29]->asConfigGpu()->getSamples() == 4);
+    REPORTER_ASSERT(reporter, configs[29]->asConfigGpu()->getUseNVPR());
+    REPORTER_ASSERT(reporter, configs[29]->asConfigGpu()->getUseDIText());
+    REPORTER_ASSERT(reporter, configs[30]->asConfigGpu());
+    REPORTER_ASSERT(reporter, configs[30]->asConfigGpu()->getColorType()  == kN32_SkColorType);
+    REPORTER_ASSERT(reporter, configs[30]->asConfigGpu()->getProfileType() ==
+                              kSRGB_SkColorProfileType);
+    REPORTER_ASSERT(reporter, configs[31]->asConfigGpu());
+    REPORTER_ASSERT(reporter, configs[31]->asConfigGpu()->getSamples() == 4);
 #endif
 }
 
@@ -152,7 +172,8 @@ DEF_TEST(ParseConfigs_ExtendedGpuConfigsCorrect, reporter) {
         "gpu(api=mesa,samples=77)",
         "gpu(dit=true,api=commandbuffer)",
         "gpu()",
-        "gpu(api=gles)"
+        "gpu(api=gles)",
+        "gpu(api=gl)"
     });
 
     SkCommandLineConfigArray configs;
@@ -203,7 +224,11 @@ DEF_TEST(ParseConfigs_ExtendedGpuConfigsCorrect, reporter) {
     REPORTER_ASSERT(reporter, !configs[6]->asConfigGpu()->getUseNVPR());
     REPORTER_ASSERT(reporter, !configs[6]->asConfigGpu()->getUseDIText());
     REPORTER_ASSERT(reporter, configs[6]->asConfigGpu()->getSamples() == 0);
-
+    REPORTER_ASSERT(reporter, configs[7]->asConfigGpu()->getContextType() ==
+                              GrContextFactory::kGL_GLContextType);
+    REPORTER_ASSERT(reporter, !configs[7]->asConfigGpu()->getUseNVPR());
+    REPORTER_ASSERT(reporter, !configs[7]->asConfigGpu()->getUseDIText());
+    REPORTER_ASSERT(reporter, configs[7]->asConfigGpu()->getSamples() == 0);
 #endif
 }
 
index 4695445..6df7a25 100644 (file)
     "~bleed_image", 
     "~ReadPixels"
   ], 
+  "Test-Android-GCC-NVIDIA_Shield-GPU-TegraX1-Arm64-Release": [
+    "--config", 
+    "565", 
+    "8888", 
+    "gl", 
+    "glsrgb", 
+    "msaa4", 
+    "serialize-8888", 
+    "tiles_rt-8888", 
+    "pic-8888", 
+    "--src", 
+    "tests", 
+    "gm", 
+    "image", 
+    "--blacklist", 
+    "f16", 
+    "_", 
+    "_", 
+    "dstreadshuffle", 
+    "f16", 
+    "image", 
+    "_", 
+    "_", 
+    "srgb", 
+    "image", 
+    "_", 
+    "_", 
+    "gpusrgb", 
+    "image", 
+    "_", 
+    "_", 
+    "serialize-8888", 
+    "gm", 
+    "_", 
+    "not_native32_bitmap_config", 
+    "serialize-8888", 
+    "gm", 
+    "_", 
+    "bleed_image", 
+    "serialize-8888", 
+    "gm", 
+    "_", 
+    "bleed_alpha_image", 
+    "serialize-8888", 
+    "gm", 
+    "_", 
+    "bleed_alpha_image_shader", 
+    "serialize-8888", 
+    "gm", 
+    "_", 
+    "blend", 
+    "serialize-8888", 
+    "gm", 
+    "_", 
+    "c_gms", 
+    "serialize-8888", 
+    "gm", 
+    "_", 
+    "colortype", 
+    "serialize-8888", 
+    "gm", 
+    "_", 
+    "colortype_xfermodes", 
+    "serialize-8888", 
+    "gm", 
+    "_", 
+    "colorwheelnative", 
+    "serialize-8888", 
+    "gm", 
+    "_", 
+    "drawfilter", 
+    "serialize-8888", 
+    "gm", 
+    "_", 
+    "fontmgr_bounds_0.75_0", 
+    "serialize-8888", 
+    "gm", 
+    "_", 
+    "fontmgr_bounds_1_-0.25", 
+    "serialize-8888", 
+    "gm", 
+    "_", 
+    "fontmgr_bounds", 
+    "serialize-8888", 
+    "gm", 
+    "_", 
+    "fontmgr_match", 
+    "serialize-8888", 
+    "gm", 
+    "_", 
+    "fontmgr_iter", 
+    "serialize-8888", 
+    "gm", 
+    "_", 
+    "lightingshader", 
+    "serialize-8888", 
+    "gm", 
+    "_", 
+    "localmatriximagefilter", 
+    "serialize-8888", 
+    "gm", 
+    "_", 
+    "path_stroke_with_zero_length", 
+    "serialize-8888", 
+    "gm", 
+    "_", 
+    "textblobgeometrychange", 
+    "serialize-8888", 
+    "gm", 
+    "_", 
+    "verylargebitmap", 
+    "serialize-8888", 
+    "gm", 
+    "_", 
+    "verylarge_picture_image", 
+    "sp-8888", 
+    "gm", 
+    "_", 
+    "blend", 
+    "pic-8888", 
+    "gm", 
+    "_", 
+    "blend", 
+    "2ndpic-8888", 
+    "gm", 
+    "_", 
+    "blend", 
+    "sp-8888", 
+    "gm", 
+    "_", 
+    "drawfilter", 
+    "pic-8888", 
+    "gm", 
+    "_", 
+    "drawfilter", 
+    "2ndpic-8888", 
+    "gm", 
+    "_", 
+    "drawfilter", 
+    "sp-8888", 
+    "gm", 
+    "_", 
+    "path_stroke_with_zero_length", 
+    "pic-8888", 
+    "gm", 
+    "_", 
+    "path_stroke_with_zero_length", 
+    "2ndpic-8888", 
+    "gm", 
+    "_", 
+    "path_stroke_with_zero_length", 
+    "sp-8888", 
+    "gm", 
+    "_", 
+    "textblobgeometrychange", 
+    "pic-8888", 
+    "gm", 
+    "_", 
+    "textblobgeometrychange", 
+    "2ndpic-8888", 
+    "gm", 
+    "_", 
+    "textblobgeometrychange", 
+    "sp-8888", 
+    "gm", 
+    "_", 
+    "patch_primitive", 
+    "sp-8888", 
+    "gm", 
+    "_", 
+    "image-cacherator-from-picture", 
+    "pic-8888", 
+    "gm", 
+    "_", 
+    "image-cacherator-from-picture", 
+    "2ndpic-8888", 
+    "gm", 
+    "_", 
+    "image-cacherator-from-picture", 
+    "serialize-8888", 
+    "gm", 
+    "_", 
+    "image-cacherator-from-picture", 
+    "sp-8888", 
+    "gm", 
+    "_", 
+    "image-cacherator-from-raster", 
+    "pic-8888", 
+    "gm", 
+    "_", 
+    "image-cacherator-from-raster", 
+    "2ndpic-8888", 
+    "gm", 
+    "_", 
+    "image-cacherator-from-raster", 
+    "serialize-8888", 
+    "gm", 
+    "_", 
+    "image-cacherator-from-raster", 
+    "sp-8888", 
+    "gm", 
+    "_", 
+    "image-cacherator-from-ctable", 
+    "pic-8888", 
+    "gm", 
+    "_", 
+    "image-cacherator-from-ctable", 
+    "2ndpic-8888", 
+    "gm", 
+    "_", 
+    "image-cacherator-from-ctable", 
+    "serialize-8888", 
+    "gm", 
+    "_", 
+    "image-cacherator-from-ctable", 
+    "_", 
+    "image", 
+    "_", 
+    "interlaced1.png", 
+    "_", 
+    "image", 
+    "_", 
+    "interlaced2.png", 
+    "_", 
+    "image", 
+    "_", 
+    "interlaced3.png", 
+    "_", 
+    "image", 
+    "_", 
+    ".arw", 
+    "_", 
+    "image", 
+    "_", 
+    ".cr2", 
+    "_", 
+    "image", 
+    "_", 
+    ".dng", 
+    "_", 
+    "image", 
+    "_", 
+    ".nef", 
+    "_", 
+    "image", 
+    "_", 
+    ".nrw", 
+    "_", 
+    "image", 
+    "_", 
+    ".orf", 
+    "_", 
+    "image", 
+    "_", 
+    ".raf", 
+    "_", 
+    "image", 
+    "_", 
+    ".rw2", 
+    "_", 
+    "image", 
+    "_", 
+    ".pef", 
+    "_", 
+    "image", 
+    "_", 
+    ".srw", 
+    "_", 
+    "image", 
+    "_", 
+    ".ARW", 
+    "_", 
+    "image", 
+    "_", 
+    ".CR2", 
+    "_", 
+    "image", 
+    "_", 
+    ".DNG", 
+    "_", 
+    "image", 
+    "_", 
+    ".NEF", 
+    "_", 
+    "image", 
+    "_", 
+    ".NRW", 
+    "_", 
+    "image", 
+    "_", 
+    ".ORF", 
+    "_", 
+    "image", 
+    "_", 
+    ".RAF", 
+    "_", 
+    "image", 
+    "_", 
+    ".RW2", 
+    "_", 
+    "image", 
+    "_", 
+    ".PEF", 
+    "_", 
+    "image", 
+    "_", 
+    ".SRW"
+  ], 
   "Test-Android-GCC-Nexus7-GPU-Tegra3-Arm7-Release": [
     "--config", 
     "565", 
index 5c22a33..fb4522c 100755 (executable)
@@ -50,6 +50,13 @@ def get_args(bot):
       else:
         configs.append('nvprdit16')
 
+  # We want to test the OpenGL config not the GLES config on the X1
+  if 'TegraX1' in bot:
+    configs.remove('gpu')
+    configs.remove('gpusrgb')
+    configs.append('gl')
+    configs.append('glsrgb')
+    
   # The S4 crashes and the NP produces a long error stream when we run with
   # MSAA.  The Tegra2 and Tegra3 just don't support it.
   if ('GalaxyS4'    not in bot and
@@ -261,6 +268,7 @@ def self_test():
     'Test-Win7-MSVC-ShuttleA-GPU-HD2000-x86-Debug-ANGLE',
     'Test-Mac10.8-Clang-MacMini4.1-CPU-SSE4-x86_64-Release',
     'Test-Mac-Clang-MacMini4.1-GPU-GeForce320M-x86_64-Release',
+    'Test-Android-GCC-NVIDIA_Shield-GPU-TegraX1-Arm64-Release',
   ]
 
   cov = coverage.coverage()
index 7d43207..973f14e 100644 (file)
@@ -26,9 +26,9 @@ static const char defaultConfigs[] =
     ;
 
 static const char configHelp[] =
-    "Options: 565 8888 debug gpu gpudebug gpudft gpunull "
-    "msaa16 msaa4 gpuf16 gpusrgb nonrendering null nullgpu "
-    "nvpr16 nvpr4 nvprdit16 nvprdit4 pdf skp svg xps"
+    "Options: 565 8888 debug gpu gl gpudebug gpudft gpunull "
+    "msaa16 msaa4 glmsaa4 gpuf16 gpusrgb glsrgb nonrendering null nullgpu "
+    "nvpr16 nvpr4 nvprdit16 nvprdit4 glnvpr4 glnvprdit4 pdf skp svg xps"
 #if SK_ANGLE
 #ifdef SK_BUILD_FOR_WIN
     " angle"
@@ -87,14 +87,19 @@ static const char configExtendedHelp[] =
     "\n"
     "Predefined configs:\n\n"
     "\tgpu       \t= gpu()\n"
+    "\tgl        \t= gpu(api=gl)\n"
     "\tmsaa4     \t= gpu(samples=4)\n"
+    "\tglmsaa4   \t= gpu(api=gl,samples=4)\n"
     "\tmsaa16    \t= gpu(samples=16)\n"
     "\tnvpr4     \t= gpu(nvpr=true,samples=4)\n"
+    "\tglnvpr4   \t= gpu(api=gl,nvpr=true,samples=4)\n"
     "\tnvpr16    \t= gpu(nvpr=true,samples=16)\n"
     "\tnvprdit4  \t= gpu(nvpr=true,samples=4,dit=true)\n"
+    "\tglnvprdit4\t= gpu(api=gl,nvpr=true,samples=4,dit=true)\n"
     "\tnvprdit16 \t= gpu(nvpr=true,samples=16,dit=true)\n"
     "\tgpuf16    \t= gpu(color=f16)\n"
     "\tgpusrgb   \t= gpu(color=srgb)\n"
+    "\tglsrgb    \t= gpu(api=gl,color=srgb)\n"
     "\tgpudft    \t= gpu(dit=true)\n"
     "\tgpudebug  \t= gpu(api=debug)\n"
     "\tgpunull   \t= gpu(api=null)\n"
@@ -124,14 +129,19 @@ static const struct {
 } gPredefinedConfigs[] = {
 #if SK_SUPPORT_GPU
     { "gpu",        "gpu", "" },
+    { "gl",         "gpu", "api=gl" },
     { "msaa4",      "gpu", "samples=4" },
+    { "glmsaa4",    "gpu", "api=gl,samples=4" },
     { "msaa16",     "gpu", "samples=16" },
     { "nvpr4",      "gpu", "nvpr=true,samples=4" },
+    { "glnvpr4",    "gpu", "api=gl,nvpr=true,samples=4" },
     { "nvpr16",     "gpu", "nvpr=true,samples=16" },
     { "nvprdit4",   "gpu", "nvpr=true,samples=4,dit=true" },
+    { "glnvprdit4", "gpu", "api=gl,nvpr=true,samples=4,dit=true" },
     { "nvprdit16",  "gpu", "nvpr=true,samples=16,dit=true" },
     { "gpuf16",     "gpu", "color=f16" },
     { "gpusrgb",    "gpu", "color=srgb" },
+    { "glsrgb",     "gpu", "api=gl,color=srgb" },
     { "gpudft",     "gpu", "dit=true" },
     { "gpudebug",   "gpu", "api=debug" },
     { "gpunull",    "gpu", "api=null" },
index 767639c..975ddb2 100644 (file)
@@ -17,7 +17,8 @@
     "angle", 
     "hwui", 
     "msaa4", 
-    "nvprmsaa4", 
+    "nvpr4", 
+    "nvprdit4", 
     "--match", 
     "~blurroundrect", 
     "~patch_grid", 
     "~inc0.webp", 
     "~inc1.webp"
   ], 
+  "Perf-Android-GCC-NVIDIA_Shield-GPU-TegraX1-Arm64-Release": [
+    "--pre_log", 
+    "--images", 
+    "--gpuStatsDump", 
+    "true", 
+    "--useThermalManager", 
+    "1,1,10,1000", 
+    "--scales", 
+    "1.0", 
+    "1.1", 
+    "--config", 
+    "565", 
+    "8888", 
+    "nonrendering", 
+    "angle", 
+    "hwui", 
+    "gl", 
+    "glmsaa4", 
+    "glnvpr4", 
+    "glnvprdit4", 
+    "--match", 
+    "~blurroundrect", 
+    "~patch_grid", 
+    "~desk_carsvg", 
+    "~inc0.gif", 
+    "~inc1.gif", 
+    "~incInterlaced.gif", 
+    "~inc0.jpg", 
+    "~incGray.jpg", 
+    "~inc0.wbmp", 
+    "~inc1.wbmp", 
+    "~inc0.webp", 
+    "~inc1.webp", 
+    "~inc0.ico", 
+    "~inc1.ico", 
+    "~inc0.png", 
+    "~inc1.png", 
+    "~inc2.png", 
+    "~inc12.png", 
+    "~inc13.png", 
+    "~inc14.png", 
+    "~inc0.webp", 
+    "~inc1.webp"
+  ], 
   "Perf-Android-GCC-Nexus6-GPU-Adreno420-Arm7-Release": [
     "--pre_log", 
     "--images", 
     "angle", 
     "hwui", 
     "msaa4", 
-    "nvprmsaa4", 
+    "nvpr4", 
+    "nvprdit4", 
     "--match", 
     "~blurroundrect", 
     "~patch_grid", 
     "angle", 
     "hwui", 
     "msaa4", 
-    "nvprmsaa4", 
+    "nvpr4", 
+    "nvprdit4", 
     "--match", 
     "~blurroundrect", 
     "~patch_grid", 
     "angle", 
     "hwui", 
     "msaa16", 
-    "nvprmsaa16", 
+    "nvpr16", 
+    "nvprdit16", 
     "--match", 
     "nothing_will_match_this"
   ], 
     "angle", 
     "hwui", 
     "msaa16", 
-    "nvprmsaa16", 
+    "nvpr16", 
+    "nvprdit16", 
     "--loops", 
     "1", 
     "--samples", 
     "angle", 
     "hwui", 
     "msaa16", 
-    "nvprmsaa16", 
+    "nvpr16", 
+    "nvprdit16", 
     "--GPUbenchTileW", 
     "256", 
     "--GPUbenchTileH", 
     "angle", 
     "hwui", 
     "msaa16", 
-    "nvprmsaa16", 
+    "nvpr16", 
+    "nvprdit16", 
     "--match", 
     "~blurroundrect", 
     "~patch_grid", 
index 02b8856..b14251e 100755 (executable)
@@ -49,7 +49,13 @@ def get_args(bot):
     if ('GalaxyS4'    not in bot and
         'NexusPlayer' not in bot):
       if 'Android' in bot:
-        config.extend(['msaa4', 'nvpr4', 'nvprdit4'])
+        # The TegraX1 has a regular OpenGL implementation. We bench that instead
+        # of ES.
+        if 'TegraX1' in bot:
+          config.remove('gpu')
+          config.extend(['gl', 'glmsaa4', 'glnvpr4', 'glnvprdit4'])
+        else:
+          config.extend(['msaa4', 'nvpr4', 'nvprdit4'])
       else:
         config.extend(['msaa16', 'nvpr16', 'nvprdit16'])
     args.append('--config')
@@ -150,6 +156,7 @@ def self_test():
     'Test-iOS-Clang-iPad4-GPU-SGX554-Arm7-Debug',
     'Test-Android-GCC-GalaxyS4-GPU-SGX544-Arm7-Release',
     'Test-Ubuntu-GCC-GCE-CPU-AVX2-x86_64-Debug-Trybot',
+    'Perf-Android-GCC-NVIDIA_Shield-GPU-TegraX1-Arm64-Release',
   ]
 
   cov = coverage.coverage()