From ba5fad356a926d5e1c6e0fe6b546a310230cc5a8 Mon Sep 17 00:00:00 2001 From: Matthew Sloyan Date: Mon, 26 Sep 2022 13:31:43 +0100 Subject: Add IModelRunner interface to TOSA Reference Model * Added IModelRunner interface using pimpl idiom, which allows a user to initialize, configure and run the model. * Added unit tests for IModelRunner. * Added doctest as third-party submodule. * Added user options to specify paths for dependencies. * Moved general func_config functions to separate utility, which removes cxxopts dependency. Signed-off-by: Matthew Sloyan Change-Id: If42f1f82cd6dadf18911a48dcd5fa579b719aff2 --- reference_model/include/func_config.h | 41 +++++++++++++++++++++++++++++++++++ 1 file changed, 41 insertions(+) create mode 100644 reference_model/include/func_config.h (limited to 'reference_model/include/func_config.h') diff --git a/reference_model/include/func_config.h b/reference_model/include/func_config.h new file mode 100644 index 0000000..41df135 --- /dev/null +++ b/reference_model/include/func_config.h @@ -0,0 +1,41 @@ + +// Copyright (c) 2020-2022, ARM Limited. +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +#ifndef FUNC_CONFIG_H_ +#define FUNC_CONFIG_H_ + +#include +#include + +struct func_config_t +{ + std::string operator_fbs = "tosa.fbs"; + std::string test_desc = "desc.json"; + std::string flatbuffer_dir = ""; + std::string output_dir = ""; + std::string tosa_file = ""; + std::string ifm_name = ""; + std::string ifm_file = ""; + std::string ofm_name = ""; + std::string ofm_file = ""; + uint32_t eval = 1; + uint32_t validate_only = 0; + uint32_t output_tensors = 1; + uint32_t tosa_profile = 1; + uint32_t dump_intermediates = 0; + std::string fp_format = "0.5"; +}; + +#endif -- cgit v1.2.1