[llvm] r250420 - Lit: Rework r249161; Move RLIMIT_NPROC to main.py.

NAKAMURA Takumi via llvm-commits llvm-commits at lists.llvm.org
Thu Oct 15 08:37:13 PDT 2015


Author: chapuni
Date: Thu Oct 15 10:37:13 2015
New Revision: 250420

URL: http://llvm.org/viewvc/llvm-project?rev=250420&view=rev
Log:
Lit: Rework r249161; Move RLIMIT_NPROC to main.py.

The message "raised the process limit..." prevented the progress bar.

Modified:
    llvm/trunk/utils/lit/lit/main.py
    llvm/trunk/utils/lit/lit/run.py

Modified: llvm/trunk/utils/lit/lit/main.py
URL: http://llvm.org/viewvc/llvm-project/llvm/trunk/utils/lit/lit/main.py?rev=250420&r1=250419&r2=250420&view=diff
==============================================================================
--- llvm/trunk/utils/lit/lit/main.py (original)
+++ llvm/trunk/utils/lit/lit/main.py Thu Oct 15 10:37:13 2015
@@ -344,6 +344,28 @@ def main(builtinParameters = {}):
     # Don't create more threads than tests.
     opts.numThreads = min(len(run.tests), opts.numThreads)
 
+    # Because some tests use threads internally, and at least on Linux each
+    # of these threads counts toward the current process limit, try to
+    # raise the (soft) process limit so that tests don't fail due to
+    # resource exhaustion.
+    try:
+        cpus = lit.util.detectCPUs()
+        desired_limit = opts.numThreads * cpus * 2 # the 2 is a safety factor
+
+        # Import the resource module here inside this try block because it
+        # will likely fail on Windows.
+        import resource
+
+        max_procs_soft, max_procs_hard = resource.getrlimit(resource.RLIMIT_NPROC)
+        desired_limit = min(desired_limit, max_procs_hard)
+
+        if max_procs_soft < desired_limit:
+            resource.setrlimit(resource.RLIMIT_NPROC, (desired_limit, max_procs_hard))
+            litConfig.note('raised the process limit from %d to %d' % \
+                               (max_procs_soft, desired_limit))
+    except:
+        pass
+
     extra = ''
     if len(run.tests) != numTotalTests:
         extra = ' of %d' % numTotalTests

Modified: llvm/trunk/utils/lit/lit/run.py
URL: http://llvm.org/viewvc/llvm-project/llvm/trunk/utils/lit/lit/run.py?rev=250420&r1=250419&r2=250420&view=diff
==============================================================================
--- llvm/trunk/utils/lit/lit/run.py (original)
+++ llvm/trunk/utils/lit/lit/run.py Thu Oct 15 10:37:13 2015
@@ -228,28 +228,6 @@ class Run(object):
             canceled_flag = LockedValue(0)
             consumer = ThreadResultsConsumer(display)
 
-        # Because some tests use threads internally, and at least on Linux each
-        # of these threads counts toward the current process limit, try to
-        # raise the (soft) process limit so that tests don't fail due to
-        # resource exhaustion.
-        try:
-          cpus = lit.util.detectCPUs()
-          desired_limit = jobs * cpus * 2 # the 2 is a safety factor
-
-          # Import the resource module here inside this try block because it
-          # will likely fail on Windows.
-          import resource
-
-          max_procs_soft, max_procs_hard = resource.getrlimit(resource.RLIMIT_NPROC)
-          desired_limit = min(desired_limit, max_procs_hard)
-
-          if max_procs_soft < desired_limit:
-            resource.setrlimit(resource.RLIMIT_NPROC, (desired_limit, max_procs_hard))
-            self.lit_config.note('raised the process limit from %d to %d' % \
-                                 (max_procs_soft, desired_limit))
-        except:
-          pass
-
         # Create the test provider.
         provider = TestProvider(self.tests, jobs, queue_impl, canceled_flag)
 




More information about the llvm-commits mailing list