Skip to content
Snippets Groups Projects
Commit 34c303c5 authored by Stephan Seitz's avatar Stephan Seitz
Browse files

Add ast properties to pystencils_autodiff.AutoDiffOp

parent e53ba81a
Branches
Tags
No related merge requests found
Pipeline #18044 failed
...@@ -365,32 +365,52 @@ Backward: ...@@ -365,32 +365,52 @@ Backward:
def backward_read_accesses(self): def backward_read_accesses(self):
return [a for a in self.backward_assignments.free_symbols if isinstance(a, ps.Field.Access)] return [a for a in self.backward_assignments.free_symbols if isinstance(a, ps.Field.Access)]
@property
def forward_ast_cpu(self):
if not self._forward_ast_cpu:
self._forward_ast_cpu = ps.create_kernel(self._forward_assignments, **self._kwargs)
return self._forward_ast_cpu
@property
def forward_ast_gpu(self):
if not self._forward_ast_gpu:
self._forward_ast_gpu = ps.create_kernel(self._forward_assignments, target='gpu', **self._kwargs)
return self._forward_ast_gpu
@property
def backward_ast_cpu(self):
if not self._backward_ast_cpu:
self._backward_ast_cpu = ps.create_kernel(self._backward_assignments, target='cpu', **self._kwargs)
return self._backward_ast_cpu
@property
def backward_ast_gpu(self):
if not self._backward_ast_gpu:
self._backward_ast_gpu = ps.create_kernel(self._backward_assignments, target='gpu', **self._kwargs)
return self._backward_ast_gpu
@property @property
def forward_kernel_cpu(self): def forward_kernel_cpu(self):
if not self._forward_kernel_cpu: if not self._forward_kernel_cpu:
self._forward_kernel_cpu = ps.create_kernel( self._forward_kernel_cpu = self.forward_ast_cpu.compile()
self._forward_assignments, **self._kwargs).compile()
return self._forward_kernel_cpu return self._forward_kernel_cpu
@property @property
def forward_kernel_gpu(self): def forward_kernel_gpu(self):
if not self._forward_kernel_gpu: if not self._forward_kernel_gpu:
self._forward_kernel_gpu = ps.create_kernel( self._forward_kernel_gpu = self.forward_ast_gpu.compile()
self._forward_assignments, target='gpu', **self._kwargs).compile()
return self._forward_kernel_gpu return self._forward_kernel_gpu
@property @property
def backward_kernel_cpu(self): def backward_kernel_cpu(self):
if not self._backward_kernel_cpu: if not self._backward_kernel_cpu:
self._backward_kernel_cpu = ps.create_kernel( self._backward_kernel_cpu = self.backward_ast_cpu.compile()
self._backward_assignments, target='cpu', **self._kwargs).compile()
return self._backward_kernel_cpu return self._backward_kernel_cpu
@property @property
def backward_kernel_gpu(self): def backward_kernel_gpu(self):
if not self._backward_kernel_gpu: if not self._backward_kernel_gpu:
self._backward_kernel_gpu = ps.create_kernel( self._backward_kernel_gpu = self.backward_ast_gpu.compile()
self._backward_assignments, target='gpu', **self._kwargs).compile()
return self._backward_kernel_gpu return self._backward_kernel_gpu
@property @property
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Please register or to comment