From e5cabbf7528849aac35b498ce0711a144c1a08d5 Mon Sep 17 00:00:00 2001 From: Jerry Ge Date: Mon, 17 Jul 2023 21:33:17 +0000 Subject: Enable lazy tensor allocation - The previous ref_model was allocating the memory for all tensors in the graph upfront which is unnecessary and wasteful. - This patch changes to only allocate initial input tensors on the entry point using the allocateInputTensor() function. - The output tensors are ensured to have been allocated before executing a node. The output tenosrs are the inputs for the next node. - When a node's evaluation is finished, its input tensors will be freed if they will no longer be used by anyone else. Signed-off-by: Jerry Ge Change-Id: Ibb3e8c9e6344f6cd9eb20532a03b2097b93247f9 --- reference_model/src/main.cpp | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) (limited to 'reference_model/src/main.cpp') diff --git a/reference_model/src/main.cpp b/reference_model/src/main.cpp index 0c86cbd..070eb33 100644 --- a/reference_model/src/main.cpp +++ b/reference_model/src/main.cpp @@ -109,9 +109,9 @@ int main(int argc, char** argv) goto done; } - if (main_gt.allocateTensor()) + if (main_gt.allocateInputTensors()) { - WARNING("Failed to allocate tensor. Evaluation aborted."); + WARNING("Failed to allocate input tensors. Evaluation aborted."); goto done; } -- cgit v1.2.1