summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorChris Larson <chris_larson@mentor.com>2010-09-23 11:21:29 -0700
committerRichard Purdie <rpurdie@linux.intel.com>2011-01-04 14:46:36 +0000
commit3f40a2efe835ba6c6660485f11d0460332d401d1 (patch)
tree1e441dca05746e158aef538695ec4a083fd4bef9
parent666513982fb767c992471a4dce2aa2f7b9c9cdfb (diff)
downloadopenembedded-core-3f40a2efe835ba6c6660485f11d0460332d401d1.tar.gz
openembedded-core-3f40a2efe835ba6c6660485f11d0460332d401d1.tar.bz2
openembedded-core-3f40a2efe835ba6c6660485f11d0460332d401d1.tar.xz
openembedded-core-3f40a2efe835ba6c6660485f11d0460332d401d1.zip
Reduce bb.cache memory usage a bit
- Don't store key/value pairs when the value is None - Delete the depends_cache when we're done with it This reduces the memory usage after sync on initial parse by roughly 11.5% on this machine. (Bitbake rev: c7eb4c989459d182fdf9c81a627d32b7ef11626b) Signed-off-by: Chris Larson <chris_larson@mentor.com> Signed-off-by: Richard Purdie <rpurdie@linux.intel.com>
-rw-r--r--bitbake/lib/bb/cache.py5
1 files changed, 3 insertions, 2 deletions
diff --git a/bitbake/lib/bb/cache.py b/bitbake/lib/bb/cache.py
index 255c6168d..7ec55bc1b 100644
--- a/bitbake/lib/bb/cache.py
+++ b/bitbake/lib/bb/cache.py
@@ -118,7 +118,8 @@ class Cache:
self.cacheclean = False
result = bb.data.getVar(var, self.data, exp)
- self.depends_cache[fn][var] = result
+ if result is not None:
+ self.depends_cache[fn][var] = result
return result
def setData(self, virtualfn, fn, data):
@@ -219,7 +220,6 @@ class Cache:
virtuals += 1
return False, skipped, virtuals
-
def cacheValid(self, fn):
"""
Is the cache valid for fn?
@@ -346,6 +346,7 @@ class Cache:
p = pickle.Pickler(file(self.cachefile, "wb" ), -1 )
p.dump([cache_data, version_data])
+ del self.depends_cache
def mtime(self, cachefile):
return bb.parse.cached_mtime_noerror(cachefile)