This revision was automatically updated to reflect the committed changes.
Closed by commit rL250044: Switch threading mode for tests on Windows when 
there are lots of cores. (authored by amccarth).

Changed prior to commit:
  http://reviews.llvm.org/D13555?vs=36993&id=37111#toc

Repository:
  rL LLVM

http://reviews.llvm.org/D13555

Files:
  lldb/trunk/test/dosep.py

Index: lldb/trunk/test/dosep.py
===================================================================
--- lldb/trunk/test/dosep.py
+++ lldb/trunk/test/dosep.py
@@ -1254,10 +1254,13 @@
         # Use the serial runner.
         test_runner_name = "serial"
     elif os.name == "nt":
-        # Currently the multiprocessing test runner with ctrl-c
-        # support isn't running correctly on nt.  Use the pool
-        # support without ctrl-c.
-        test_runner_name = "threading-pool"
+        # On Windows, Python uses CRT with a low limit on the number of open
+        # files.  If you have a lot of cores, the threading-pool runner will
+        # often fail because it exceeds that limit.
+        if num_threads > 32:
+            test_runner_name = "multiprocessing-pool"
+        else:
+            test_runner_name = "threading-pool"
     elif is_darwin_version_lower_than(
             distutils.version.StrictVersion("10.10.0")):
         # OS X versions before 10.10 appear to have an issue using


Index: lldb/trunk/test/dosep.py
===================================================================
--- lldb/trunk/test/dosep.py
+++ lldb/trunk/test/dosep.py
@@ -1254,10 +1254,13 @@
         # Use the serial runner.
         test_runner_name = "serial"
     elif os.name == "nt":
-        # Currently the multiprocessing test runner with ctrl-c
-        # support isn't running correctly on nt.  Use the pool
-        # support without ctrl-c.
-        test_runner_name = "threading-pool"
+        # On Windows, Python uses CRT with a low limit on the number of open
+        # files.  If you have a lot of cores, the threading-pool runner will
+        # often fail because it exceeds that limit.
+        if num_threads > 32:
+            test_runner_name = "multiprocessing-pool"
+        else:
+            test_runner_name = "threading-pool"
     elif is_darwin_version_lower_than(
             distutils.version.StrictVersion("10.10.0")):
         # OS X versions before 10.10 appear to have an issue using
_______________________________________________
lldb-commits mailing list
lldb-commits@lists.llvm.org
http://lists.llvm.org/cgi-bin/mailman/listinfo/lldb-commits

Reply via email to