From 062008bc67760ab3361ab339931e7da3374251cc Mon Sep 17 00:00:00 2001 From: bhalimi <benjamin.halimi@cea.fr> Date: Tue, 11 Feb 2025 15:16:09 +0000 Subject: [PATCH] handle multi-output operators --- src/optimizer/Optimizer.cpp | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/src/optimizer/Optimizer.cpp b/src/optimizer/Optimizer.cpp index 723f140..5e1e2f3 100644 --- a/src/optimizer/Optimizer.cpp +++ b/src/optimizer/Optimizer.cpp @@ -20,7 +20,9 @@ void Aidge::Optimizer::resetGrad(std::shared_ptr<GraphView> graphView) auto op = node->getOperator(); if (op->isAtomic()) { auto tensorOp = std::static_pointer_cast<OperatorTensor>(op); - tensorOp->getOutput(0)->grad()->zeros(); + for (auto outputTensor : tensorOp->getOutputs()) { + outputTensor->grad()->zeros(); + } } else { auto metaOp = std::static_pointer_cast<MetaOperator_Op>(op); resetGrad(metaOp->getMicroGraph()); -- GitLab