Skip to content

Commit 2984f0a

Browse files
committed
Merge branch 'main' into hops
2 parents 590b3d6 + b2d892f commit 2984f0a

1 file changed

Lines changed: 10 additions & 4 deletions

File tree

accelforge/frontend/workload.py

Lines changed: 10 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -2,6 +2,7 @@
22
All the objects used for a Workload description in AccelForge.
33
"""
44

5+
import copy
56
from itertools import product
67
import itertools
78
import logging
@@ -250,7 +251,9 @@ def _parse_einsum_entry(einsum_entry: dict) -> dict:
250251
if "einsum" not in einsum_entry:
251252
return einsum_entry
252253

253-
einsum_str = einsum_entry["einsum"]
254+
einsum_str = einsum_entry.pop("einsum")
255+
einsum_entry = copy.deepcopy(einsum_entry)
256+
254257
parsed = _parse_einsum_string(einsum_str)
255258

256259
tensor_accesses = einsum_entry.get("tensor_accesses", [])
@@ -280,9 +283,12 @@ def _parse_einsum_entry(einsum_entry: dict) -> dict:
280283
f"already set by the einsum string {einsum_str}"
281284
)
282285
name2access[name][k] = v
283-
parsed["tensor_accesses"] = list(name2access.values())
284-
parsed["renames"] = rename_list_factory(einsum_entry.get("renames", {}))
285-
return parsed
286+
287+
einsum_entry["name"] = parsed["name"]
288+
einsum_entry["tensor_accesses"] = list(name2access.values())
289+
einsum_entry["renames"] = rename_list_factory(einsum_entry.get("renames", {}))
290+
291+
return einsum_entry
286292

287293

288294
def _parse_einsum_string(einsum_str: str) -> dict:

0 commit comments

Comments
 (0)