Fix leak for multi-output primitives which are never detached (#1059)

* fix multi output leak

* ignore arrays that will be detached

* add some comments

* stray print
This commit is contained in:
Awni Hannun
2024-05-01 07:31:45 -07:00
committed by GitHub
parent 19bef39f5c
commit 7f7b9662ea
5 changed files with 59 additions and 15 deletions

View File

@@ -246,7 +246,7 @@ std::pair<std::vector<array>, std::vector<array>> vjp(
return;
}
a.set_tracer(false);
for (auto s : a.siblings()) {
for (auto& s : a.siblings()) {
s.set_tracer(false);
cache.insert(s.id());
}
@@ -403,7 +403,7 @@ std::pair<std::vector<array>, std::vector<array>> jvp(
return;
}
a.set_tracer(false);
for (auto s : a.siblings()) {
for (auto& s : a.siblings()) {
s.set_tracer(false);
cache.insert(s.id());
}