Skip to content

Commit 762d920

Browse files
committed
make pytato a soft dependency again
1 parent dc81090 commit 762d920

File tree

1 file changed

+14
-12
lines changed

1 file changed

+14
-12
lines changed

arraycontext/impl/pytato/__init__.py

Lines changed: 14 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -219,18 +219,20 @@ def get_target(self):
219219

220220
# {{{ PytatoPyOpenCLArrayContext
221221

222-
from pytato.target.loopy import LoopyPyOpenCLTarget
223-
224-
225-
class _ArgSizeLimitingPytatoLoopyPyOpenCLTarget(LoopyPyOpenCLTarget):
226-
def __init__(self, limit_arg_size_nbytes: int) -> None:
227-
super().__init__()
228-
self.limit_arg_size_nbytes = limit_arg_size_nbytes
229-
230-
@memoize_method
231-
def get_loopy_target(self) -> Optional["lp.PyOpenCLTarget"]:
232-
from loopy import PyOpenCLTarget
233-
return PyOpenCLTarget(limit_arg_size_nbytes=self.limit_arg_size_nbytes)
222+
try:
223+
from pytato.target.loopy import LoopyPyOpenCLTarget
224+
225+
class _ArgSizeLimitingPytatoLoopyPyOpenCLTarget(LoopyPyOpenCLTarget):
226+
def __init__(self, limit_arg_size_nbytes: int) -> None:
227+
super().__init__()
228+
self.limit_arg_size_nbytes = limit_arg_size_nbytes
229+
230+
@memoize_method
231+
def get_loopy_target(self) -> Optional["lp.PyOpenCLTarget"]:
232+
from loopy import PyOpenCLTarget
233+
return PyOpenCLTarget(limit_arg_size_nbytes=self.limit_arg_size_nbytes)
234+
except ImportError:
235+
pass
234236

235237

236238
class PytatoPyOpenCLArrayContext(_BasePytatoArrayContext):

0 commit comments

Comments
 (0)