From 4e8c0eeaae42d947d8022ad0d7107e819a6fa80c Mon Sep 17 00:00:00 2001 From: Stephan Seitz <stephan.seitz@fau.de> Date: Fri, 11 Sep 2020 09:17:45 +0200 Subject: [PATCH] Try to generate more swaps --- src/pystencils_autodiff/graph_datahandling.py | 9 +++++++++ 1 file changed, 9 insertions(+) diff --git a/src/pystencils_autodiff/graph_datahandling.py b/src/pystencils_autodiff/graph_datahandling.py index 8768edc..b6d0340 100644 --- a/src/pystencils_autodiff/graph_datahandling.py +++ b/src/pystencils_autodiff/graph_datahandling.py @@ -93,9 +93,18 @@ class Communication(DataTransfer): class KernelCall: def __init__(self, kernel: pystencils.kernel_wrapper.KernelWrapper, kwargs, tmp_field_swaps=[]): + tmp = None + src = None + for f in kernel.ast.fields_accessed: + if 'pdfTmp' in f.name: + tmp = f + if 'pdfSrc' in f.name: + src = f self.kernel = kernel self.kwargs = kwargs self.tmp_field_swaps = tmp_field_swaps + if tmp and src: + self.tmp_field_swaps.append((src, tmp)) def __str__(self): return "Call " + str(self.kernel.ast.function_name) -- GitLab