Chris Mutel avatar Chris Mutel committed eccc1f0

0.8.2: Can manually specify number of CPUs in Monte Carlo

Comments (0)

Files changed (2)

bw2calc/monte_carlo.py

 
 class ParallelMonteCarlo(object):
     """Split a Monte Carlo calculation into parallel jobs"""
-    def __init__(self, demand, method, iterations=1000, chunk_size=None):
+    def __init__(self, demand, method, iterations=1000, chunk_size=None, cpus=None):
         self.demand = demand
         self.method = method
         if chunk_size:
             if iterations % self.chunk_size:
                 self.num_jobs += 1
         else:
-            self.num_jobs = max(multiprocessing.cpu_count() - 1, 1)
+            self.num_jobs = cpus or multiprocessing.cpu_count()
             self.chunk_size = (iterations // self.num_jobs) + 1
 
     def calculate(self):
 
 setup(
   name='bw2calc',
-  version="0.8.1.1",
+  version="0.8.2",
   packages=["bw2calc", "bw2calc.tests"],
   author="Chris Mutel",
   author_email="cmutel@gmail.com",
Tip: Filter by directory path e.g. /media app.js to search for public/media/app.js.
Tip: Use camelCasing e.g. ProjME to search for ProjectModifiedEvent.java.
Tip: Filter by extension type e.g. /repo .js to search for all .js files in the /repo directory.
Tip: Separate your search with spaces e.g. /ssh pom.xml to search for src/ssh/pom.xml.
Tip: Use ↑ and ↓ arrow keys to navigate and return to view the file.
Tip: You can also navigate files with Ctrl+j (next) and Ctrl+k (previous) and view the file with Ctrl+o.
Tip: You can also navigate files with Alt+j (next) and Alt+k (previous) and view the file with Alt+o.