Reinstate recursion limit CLI option
This commit adds a CLI option for setting
the recursion limit. This option was originally
removed because it was considered unnecessary,
but in some cases of very large (enormous) networks,
a RecursionError is encountered during graph traversal.
A simple solution for issues like those is to manually
increase the recursion limit.
Signed-off-by: Dwight Lidman <dwight.lidman@arm.com>
Change-Id: Id0dbf68edf59b151abfa91783b5f8f021c1bb40f
diff --git a/ethosu/vela/vela.py b/ethosu/vela/vela.py
index b8a3b9f..9e237f8 100644
--- a/ethosu/vela/vela.py
+++ b/ethosu/vela/vela.py
@@ -398,6 +398,12 @@
" operator inputs and outputs (default: %(default)s)"
),
)
+ parser.add_argument(
+ "--recursion-limit",
+ type=int,
+ default=1000,
+ help="Set the recursion depth limit, may result in RecursionError if too low (default: %(default)s)",
+ )
args = parser.parse_args(args=args)
# Generate the supported ops report and exit
@@ -431,6 +437,8 @@
if v.startswith("verbose") and v != "verbose_all":
setattr(args, v, True)
+ sys.setrecursionlimit(args.recursion_limit)
+
arch = architecture_features.ArchitectureFeatures(
vela_config_files=args.config,
system_config=args.system_config,