[Bf-blender-cvs] [e8f26ff6d1e] temp-T99046-platform-reference-images: Added GPU info as script to solve initialization errors.

Jeroen Bakker noreply at git.blender.org
Wed Jun 22 17:51:22 CEST 2022


Commit: e8f26ff6d1e899fa824cea50903d57df13be1a64
Author: Jeroen Bakker
Date:   Wed Jun 22 14:04:55 2022 +0200
Branches: temp-T99046-platform-reference-images
https://developer.blender.org/rBe8f26ff6d1e899fa824cea50903d57df13be1a64

Added GPU info as script to solve initialization errors.

===================================================================

M	tests/python/eevee_render_tests.py
A	tests/python/gpu_info.py

===================================================================

diff --git a/tests/python/eevee_render_tests.py b/tests/python/eevee_render_tests.py
index 860ae1c9658..1d7eff62c30 100644
--- a/tests/python/eevee_render_tests.py
+++ b/tests/python/eevee_render_tests.py
@@ -3,6 +3,7 @@
 
 import argparse
 import os
+import pathlib
 import shlex
 import shutil
 import subprocess
@@ -100,24 +101,18 @@ if inside_blender:
 def get_gpu_vendor(blender):
     command = [
         blender,
-        "--background",
         "-noaudio",
         "--factory-startup",
-        "--python-expr",
-        "import gpu;print('GPU_VENDOR:'+gpu.platform.vendor_get())"
+        "--python",
+        str(pathlib.Path(__file__).parent / "gpu_info.py")
     ]
     vendor = None
     try:
         completed_process = subprocess.run(command, stdout=subprocess.PIPE)
-        if completed_process.returncode != 0:
-            return None
-        print(completed_process.stdout)
         for line in completed_process.stdout.read_text():
-            print(line)
             if line.startswith("GPU_VENDOR:"):
                 vendor = line.split(':')[1]
-            vendor = completed_process
-        print()
+                break
     except BaseException as e:
         return None
     return vendor
@@ -159,13 +154,16 @@ def main():
     idiff = args.idiff[0]
     output_dir = args.outdir[0]
 
-    gpu_platform = get_gpu_vendor(blender)
-    print(gpu_platform)
+    gpu_vendor = get_gpu_vendor(blender)
+    reference_override_dir = None
+    if gpu_vendor == "AMD":
+        reference_override_dir = "eevee_renders/amd"
 
     from modules import render_report
     report = render_report.Report("Eevee", output_dir, idiff)
     report.set_pixelated(True)
     report.set_reference_dir("eevee_renders")
+    report.set_reference_override_dir(reference_override_dir)
     report.set_compare_engine('cycles', 'CPU')
     ok = report.run(test_dir, blender, get_arguments, batch=True)
 
diff --git a/tests/python/gpu_info.py b/tests/python/gpu_info.py
new file mode 100644
index 00000000000..bae1148a961
--- /dev/null
+++ b/tests/python/gpu_info.py
@@ -0,0 +1,7 @@
+import gpu
+import sys
+
+print('GPU_VENDOR:'+gpu.platform.vendor_get())
+print('GPU_RENDERER:'+gpu.platform.renderer_get())
+print('GPU_VERSION:'+gpu.platform.version_get())
+sys.exit(0)



More information about the Bf-blender-cvs mailing list