Skip to content

Commit b63901f

Browse files
committed
optimize program_cache_key, delete cache when use_program_cache is false
1 parent 82a8e08 commit b63901f

File tree

1 file changed

+7
-4
lines changed

1 file changed

+7
-4
lines changed

python/paddle/fluid/executor.py

Lines changed: 7 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -260,14 +260,17 @@ def run(self,
260260
scope = global_scope()
261261

262262
program_cache = None
263-
program_cache_key = None
263+
264+
feed_var_names = feed.keys()
265+
fetch_var_names = [var.desc.name() for var in fetch_list]
266+
program_cache_key = str(feed_var_names + fetch_var_names)
267+
264268
if use_program_cache:
265269
# find program cache by cache_key
266-
feed_var_names = feed.keys()
267-
fetch_var_names = [var.desc.name() for var in fetch_list]
268-
program_cache_key = str(feed_var_names + fetch_var_names)
269270
program_cache = self.program_caches.get(program_cache_key, None)
270271
# TODO(qiao): Should check program_cache and program are exactly the same.
272+
else:
273+
self.program_caches.pop(program_cache_key, None)
271274

272275
if program_cache is None:
273276
program_cache = program.clone()

0 commit comments

Comments
 (0)