]> git.ipfire.org Git - people/stevee/pakfire.git/blobdiff - python/pakfire/system.py
Revert "A new try to get the parallelism straight."
[people/stevee/pakfire.git] / python / pakfire / system.py
index 6f67d311ff97a7688065628d76d27d52883fa7ed..a9154de98c7ec53719423f7ff37fb7c4c38b9c3b 100644 (file)
@@ -156,10 +156,15 @@ class System(object):
                        Calculates how many processes should be run
                        simulatneously when compiling.
                """
+               # Check how many processes would fit into the
+               # memory when each process takes up to 500MB.
+               multiplicator = self.memory / (500 * 1024 * 1024)
+               multiplicator = round(multiplicator)
+
                # Count the number of online CPU cores.
                cpucount = os.sysconf("SC_NPROCESSORS_CONF")
 
-               return cpucount * 2
+               return min(multiplicator, cpucount * 2)
 
 
 # Create an instance of this class to only keep it once in memory.