diff --git a/loopy/schedule/__init__.py b/loopy/schedule/__init__.py index e05140ff5ba6ba32882607f99eeebfe4dfd80471..3b34cdbbe01ea8e738bf87b8a675fc5dcd3a7561 100644 --- a/loopy/schedule/__init__.py +++ b/loopy/schedule/__init__.py @@ -1750,15 +1750,10 @@ def insert_barriers(kernel, schedule, kind, verify_only, level=0): # {{{ main scheduling entrypoint def generate_loop_schedules(kernel, debug_args={}): - import sys - rec_limit = sys.getrecursionlimit() - new_limit = max(rec_limit, len(kernel.instructions) * 2) - sys.setrecursionlimit(new_limit) - try: + from pytools import MinRecursionLimit + with MinRecursionLimit(len(kernel.instructions) * 2): for sched in generate_loop_schedules_inner(kernel, debug_args=debug_args): yield sched - finally: - sys.setrecursionlimit(rec_limit) def generate_loop_schedules_inner(kernel, debug_args={}):