Skip to content

Commit 9b3a28d

Browse files
alexfiklinducer
authored andcommitted
feat: longer lived memoize for opencl_fft_app
1 parent 5216e4a commit 9b3a28d

1 file changed

Lines changed: 12 additions & 4 deletions

File tree

sumpy/fmm.py

Lines changed: 12 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -46,7 +46,7 @@
4646
from boxtree.tree import Tree
4747

4848
import pytools.obj_array as obj_array
49-
from pytools import memoize_method
49+
from pytools import memoize_in, memoize_method
5050

5151
from sumpy import (
5252
E2EFromChildren,
@@ -240,9 +240,17 @@ def p2p(self):
240240
exclude_self=self.exclude_self,
241241
strength_usage=self.strength_usage, name="p2p")
242242

243-
@memoize_method
244-
def opencl_fft_app(self, shape, dtype, inverse):
245-
return get_opencl_fft_app(self._setup_actx, shape, dtype, inverse=inverse)
243+
def opencl_fft_app(self,
244+
shape: tuple[int, ...],
245+
dtype: np.dtype[Any],
246+
inverse: bool) -> Any:
247+
@memoize_in(self._setup_actx, (
248+
SumpyTreeIndependentDataForWrangler.opencl_fft_app,
249+
shape, dtype, inverse))
250+
def app() -> Any:
251+
return get_opencl_fft_app(self._setup_actx, shape, dtype, inverse=inverse)
252+
253+
return app()
246254

247255
# }}}
248256

0 commit comments

Comments
 (0)