File 0001-serialize-reading-logic-files.patch of Package python-tensile

From ffc29981521b1dd38d262fcfc9ee4ab6377f9957 Mon Sep 17 00:00:00 2001
From: Tom Rix <Tom.Rix@amd.com>
Date: Wed, 26 Feb 2025 06:22:30 -0800
Subject: [PATCH] serialize reading logic files

Signed-off-by: Tom Rix <Tom.Rix@amd.com>
---
 Tensile/TensileCreateLibrary.py | 15 ++++++++++++---
 1 file changed, 12 insertions(+), 3 deletions(-)

diff --git a/Tensile/TensileCreateLibrary.py b/Tensile/TensileCreateLibrary.py
index a16446063615..3c0472788303 100644
--- a/Tensile/TensileCreateLibrary.py
+++ b/Tensile/TensileCreateLibrary.py
@@ -69,6 +69,7 @@ from .TensileCreateLib.ParseArguments import parseArguments
 from .Utilities.Profile import profile
 from .Utilities.String import splitDelimitedString
 from .Utilities.toFile import toFile
+from .Parallel import CPUThreadCount
 
 TENSILE_MANIFEST_FILENAME = "TensileManifest.txt"
 TENSILE_LIBRARY_DIR = "library"
@@ -1308,9 +1309,17 @@ def parseLibraryLogicFiles(logicFiles: List[str]) -> List[LibraryIO.LibraryLogic
     Returns:
         List of library logic tuples.
     """
-    return Common.ParallelMap(
-        LibraryIO.parseLibraryLogicFile, logicFiles, "Reading logic files", multiArg=False
-    )
+    if CPUThreadCount() < 2:
+        tPrint(1, "Reading logic files")
+        rv = []
+        for lf in logicFiles:
+            tPrint(3, "Reading logic file: %s" % lf)
+            rv.append(LibraryIO.parseLibraryLogicFile(lf))
+        return rv
+    else:
+        return Common.ParallelMap(
+            LibraryIO.parseLibraryLogicFile, logicFiles, "Reading logic files", multiArg=False
+        )
 
 
 def generateLogicData(
-- 
2.47.1

openSUSE Build Service is sponsored by