sw/vec_iree: move model executable source files out of vec_iree project The model workload set up files are moved to separated project, so new models/use cases can use vec_iree project as a library more easily. Change-Id: Id5f4c56b0e3d5de84a9bc159b4feeb0afb833a50
diff --git a/README.md b/README.md index 557653f..a9542fa 100644 --- a/README.md +++ b/README.md
@@ -22,9 +22,9 @@ * cmake: CMake Macros for the project * native_log: BSP support for the Linux userspace emulation * samples: Codegen and execution of ML models based on IREE + * audio_prep: Audio preprocessing libarary * device: Device HAL driver library - * float_model: float model examples - * quant_model: quantized model examples + * risp4ml: Vision preprocessing library (Reduced ISP for ML) * simple_vec_mul: Point-wise vector multiplication examples * util: Runtime utility library for model execution @@ -62,5 +62,4 @@ Filecheck in Debian testing is under `/usr/lib/llvm-11/bin` -Add `-D FEATURES=internal` to enable the internal model tests. Add `-D RUNNER=qemu` -to enable the qemu tests. +Add `-D RUNNER=qemu` to enable the qemu tests.
diff --git a/samples/float_model/CMakeLists.txt b/samples/float_model/CMakeLists.txt deleted file mode 100644 index d7fd3dc..0000000 --- a/samples/float_model/CMakeLists.txt +++ /dev/null
@@ -1,136 +0,0 @@ -#------------------------------------------------------------------------------- -# Build the mlir bytecode modules with iree-compile. Note the last two flags -# are for RVV support. -#------------------------------------------------------------------------------- - -springbok_modules( - NAME - mobilenet_v1 - SRC - "$ENV{ROOTDIR}/ml/ml-models-public/float_models/mobilenet_v1_0.25_224_float.tflite" - C_IDENTIFIER - "samples_float_model_mobilenet_v1" - FLAGS - "-iree-input-type=tosa" - "-riscv-v-vector-bits-min=512" - "-riscv-v-fixed-length-vector-lmul-max=8" - RVV_OFF - PUBLIC -) - -springbok_modules( - NAME - mnist - SRC - "$ENV{ROOTDIR}/toolchain/iree/samples/models/mnist.mlir" - C_IDENTIFIER - "samples_float_model_mnist" - FLAGS - "-iree-input-type=mhlo" - "-riscv-v-vector-bits-min=512" - "-riscv-v-fixed-length-vector-lmul-max=8" - RVV_OFF - PUBLIC -) - -#------------------------------------------------------------------------------- -# Binaries to execute the IREE model input -#------------------------------------------------------------------------------- - -iree_model_input( - NAME - mobilenet_input - SHAPE - "1, 224, 224, 3" - SRC - "https://storage.googleapis.com/download.tensorflow.org/ \ - example_images/YellowLabradorLooking_new.jpg" -) - -iree_model_input( - NAME - mnist_input - SHAPE - "1, 28, 28, 1" - SRC - "https://github.com/google/iree/raw/ \ - 1e8d1fa96057c47d1fda918f3a2f71f14b073937/samples/iree_vision_inference/mnist_test.png" - RANGE - "0, 1" -) - -#------------------------------------------------------------------------------- -# Binaries to execute the MLIR bytecode modules -#------------------------------------------------------------------------------- - - -# If the program requires a larger stack size, add -# -# LINKOPTS -# "LINKER:--defsym=__stack_size__=<new stack size>" -# -# to increase it. - -iree_cc_binary( - NAME - mobilenet_v1_bytecode_static - SRCS - "mobilenet_v1.c" - DEPS - ::mobilenet_v1_bytecode_module_static - ::mobilenet_v1_bytecode_module_static_c - ::mobilenet_input_c - samples::util::util - iree::vm::bytecode_module - LINKOPTS - "LINKER:--defsym=__stack_size__=200k" -) - -iree_cc_binary( - NAME - mobilenet_v1_emitc_static - SRCS - "mobilenet_v1.c" - DEPS - ::mobilenet_v1_c_module_static_c - ::mobilenet_v1_c_module_static_emitc - ::mobilenet_input_c - samples::util::util - "m" - LINKOPTS - "LINKER:--defsym=__stack_size__=200k" - COPTS - "-DBUILD_EMITC" -) - -iree_cc_binary( - NAME - mnist_bytecode_static - SRCS - "mnist.c" - DEPS - ::mnist_bytecode_module_static - ::mnist_bytecode_module_static_c - ::mnist_input_c - iree::vm::bytecode_module - samples::util::util - LINKOPTS - "LINKER:--defsym=__stack_size__=100k" -) - -iree_cc_binary( - NAME - mnist_emitc_static - SRCS - "mnist.c" - DEPS - ::mnist_c_module_static_c - ::mnist_c_module_static_emitc - ::mnist_input_c - samples::util::util - "m" - LINKOPTS - "LINKER:--defsym=__stack_size__=100k" - COPTS - "-DBUILD_EMITC" -)
diff --git a/samples/float_model/mnist.c b/samples/float_model/mnist.c deleted file mode 100644 index bed71e1..0000000 --- a/samples/float_model/mnist.c +++ /dev/null
@@ -1,101 +0,0 @@ -/* - * Copyright 2022 Google LLC - * - * 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. - */ - -// mnist float model -// MlModel struct initialization to include model I/O info. -// Bytecode loading, input/output processes. - -#include <springbok.h> - -#include "iree/base/api.h" -#include "iree/hal/api.h" -#include "samples/util/util.h" -#include "mnist.h" - -// Compiled module embedded here to avoid file IO: -#if !defined(BUILD_EMITC) -#include "samples/float_model/mnist_bytecode_module_static.h" -#include "samples/float_model/mnist_bytecode_module_static_c.h" -#else -#include "samples/float_model/mnist_c_module_static_c.h" -#include "samples/float_model/mnist_c_module_static_emitc.h" -#endif -#include "samples/float_model/mnist_input_c.h" - -const MlModel kModel = { - .num_input = 1, - .num_input_dim = {4}, - .input_shape = {{1, 28, 28, 1}}, - .input_length = {28 * 28 * 1}, - .input_size_bytes = {sizeof(float)}, - .num_output = 1, - .output_length = {10}, - .output_size_bytes = sizeof(float), - .hal_element_type = IREE_HAL_ELEMENT_TYPE_FLOAT_32, - .entry_func = "module.predict", - .model_name = "mnist", -}; - -MnistOutput score; - -iree_status_t create_module(iree_vm_module_t **module) { -#if !defined(BUILD_EMITC) - const struct iree_file_toc_t *module_file_toc = - samples_float_model_mnist_bytecode_module_static_create(); - return iree_vm_bytecode_module_create( - iree_make_const_byte_span(module_file_toc->data, module_file_toc->size), - iree_allocator_null(), iree_allocator_system(), module); -#else - return module_create(iree_allocator_system(), module); -#endif -} - -iree_hal_executable_library_query_fn_t library_query(void) { - return &mnist_linked_llvm_library_query; -} - -iree_status_t load_input_data(const MlModel *model, void **buffer, - iree_const_byte_span_t **byte_span) { - byte_span[0] = malloc(sizeof(iree_const_byte_span_t)); - *byte_span[0] = iree_make_const_byte_span( - mnist_input, model->input_size_bytes[0] * model->input_length[0]); - return iree_ok_status(); -} - -iree_status_t process_output(const MlModel *model, - iree_hal_buffer_mapping_t *buffers, - MlOutput *output) { - iree_status_t result = iree_ok_status(); - // find the label index with best prediction - float best_out = 0.0; - int best_idx = -1; - for (int i = 0; i < model->output_length[0]; ++i) { - float out = ((float *)buffers[0].contents.data)[i]; - if (out > best_out) { - best_out = out; - best_idx = i; - } - } - - score.best_out = best_out; - score.best_idx = best_idx; - - LOG_INFO("Digit recognition result is: digit: %d", best_idx); - - output->result = &score; - output->len = sizeof(score); - return result; -}
diff --git a/samples/float_model/mnist.h b/samples/float_model/mnist.h deleted file mode 100644 index 97016b7..0000000 --- a/samples/float_model/mnist.h +++ /dev/null
@@ -1,27 +0,0 @@ -/* - * Copyright 2022 Google LLC - * - * 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 SAMPLES_FLOAT_MODEL_MNIST_H_ -#define SAMPLES_FLOAT_MODEL_MNIST_H_ - -#include <stdint.h> - -typedef struct { - int best_idx; - float best_out; -} MnistOutput; - -#endif // SAMPLES_FLOAT_MODEL_MNIST_H_
diff --git a/samples/float_model/mnist_bytecode_static_test.txt b/samples/float_model/mnist_bytecode_static_test.txt deleted file mode 100644 index 2933e04..0000000 --- a/samples/float_model/mnist_bytecode_static_test.txt +++ /dev/null
@@ -1,3 +0,0 @@ -// RUN: ${TEST_RUNNER_CMD} ${OUT}/springbok_iree/samples/float_model/mnist_bytecode_static 2>&1 | tee %t -// RUN: cat %t | FileCheck %s -// CHECK: {{digit: 4}}
diff --git a/samples/float_model/mnist_emitc_static_test.txt b/samples/float_model/mnist_emitc_static_test.txt deleted file mode 100644 index 62f3b04..0000000 --- a/samples/float_model/mnist_emitc_static_test.txt +++ /dev/null
@@ -1,3 +0,0 @@ -// RUN: ${TEST_RUNNER_CMD} ${OUT}/springbok_iree/samples/float_model/mnist_emitc_static 2>&1 | tee %t -// RUN: cat %t | FileCheck %s -// CHECK: {{digit: 4}}
diff --git a/samples/float_model/mobilenet_v1.c b/samples/float_model/mobilenet_v1.c deleted file mode 100644 index 913c90b..0000000 --- a/samples/float_model/mobilenet_v1.c +++ /dev/null
@@ -1,104 +0,0 @@ -/* - * Copyright 2022 Google LLC - * - * 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. - */ - -// Mobilenet_v1_0.25_224 float model -// MlModel struct initialization to include model I/O info. -// Bytecode loading, input/output processes. - -#include <springbok.h> - -#include "iree/base/api.h" -#include "iree/hal/api.h" -#include "samples/util/util.h" -#include "mobilenet_v1.h" - -// Compiled module embedded here to avoid file IO: -#include "samples/float_model/mobilenet_input_c.h" -#if !defined(BUILD_EMITC) -#include "samples/float_model/mobilenet_v1_bytecode_module_static.h" -#include "samples/float_model/mobilenet_v1_bytecode_module_static_c.h" -#else -#include "samples/float_model/mobilenet_v1_c_module_static_c.h" -#include "samples/float_model/mobilenet_v1_c_module_static_emitc.h" -#endif - -const MlModel kModel = { - .num_input = 1, - .num_input_dim = {4}, - .input_shape = {{1, 224, 224, 3}}, - .input_length = {224 * 224 * 3}, - .input_size_bytes = {sizeof(float)}, - .num_output = 1, - .output_length = {1001}, - .output_size_bytes = sizeof(float), - .hal_element_type = IREE_HAL_ELEMENT_TYPE_FLOAT_32, - .entry_func = "module.main", - .model_name = "mobilenet_v1_0.25_224_float", -}; - -MobilenetV1Output score; - -iree_status_t create_module(iree_vm_module_t **module) { -#if !defined(BUILD_EMITC) - const struct iree_file_toc_t *module_file_toc = - samples_float_model_mobilenet_v1_bytecode_module_static_create(); - return iree_vm_bytecode_module_create( - iree_make_const_byte_span(module_file_toc->data, module_file_toc->size), - iree_allocator_null(), iree_allocator_system(), module); -#else - return module_create(iree_allocator_system(), module); -#endif -} - -iree_hal_executable_library_query_fn_t library_query(void) { -#if !defined(BUILD_EMITC) - return &mobilenet_v1_bytecode_module_static_linked_llvm_library_query; -#else - return &mobilenet_v1_c_module_static_linked_llvm_library_query; -#endif -} - -iree_status_t load_input_data(const MlModel *model, void **buffer, - iree_const_byte_span_t **byte_span) { - byte_span[0] = malloc(sizeof(iree_const_byte_span_t)); - *byte_span[0] = iree_make_const_byte_span( - mobilenet_input, model->input_size_bytes[0] * model->input_length[0]); - return iree_ok_status(); -} - -iree_status_t process_output(const MlModel *model, - iree_hal_buffer_mapping_t *buffers, - MlOutput *output) { - iree_status_t result = iree_ok_status(); - // find the label index with best prediction - float best_out = 0.0; - int best_idx = -1; - for (int i = 0; i < model->output_length[0]; ++i) { - float out = ((float *)buffers[0].contents.data)[i]; - if (out > best_out) { - best_out = out; - best_idx = i; - } - } - score.best_out = best_out; - score.best_idx = best_idx; - - LOG_INFO("Image prediction result is: id: %d", best_idx + 1); - - output->result = &score; - output->len = sizeof(score); - return result; -}
diff --git a/samples/float_model/mobilenet_v1.h b/samples/float_model/mobilenet_v1.h deleted file mode 100644 index 21a8cb7..0000000 --- a/samples/float_model/mobilenet_v1.h +++ /dev/null
@@ -1,27 +0,0 @@ -/* - * Copyright 2022 Google LLC - * - * 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 SAMPLES_FLOAT_MODEL_MOBILENET_V1_H_ -#define SAMPLES_FLOAT_MODEL_MOBILENET_V1_H_ - -#include <stdint.h> - -typedef struct { - int best_idx; - float best_out; -} MobilenetV1Output; - -#endif // SAMPLES_FLOAT_MODEL_MOBILENET_V1_H_
diff --git a/samples/float_model/mobilenet_v1_bytecode_static_test.txt b/samples/float_model/mobilenet_v1_bytecode_static_test.txt deleted file mode 100644 index 791e8be..0000000 --- a/samples/float_model/mobilenet_v1_bytecode_static_test.txt +++ /dev/null
@@ -1,3 +0,0 @@ -// RUN: ${TEST_RUNNER_CMD} ${OUT}/springbok_iree/samples/float_model/mobilenet_v1_bytecode_static 2>&1 | tee %t -// RUN: cat %t | FileCheck %s -// CHECK: {{Image prediction result is: id: 178}}
diff --git a/samples/float_model/mobilenet_v1_emitc_static_test.txt b/samples/float_model/mobilenet_v1_emitc_static_test.txt deleted file mode 100644 index 101926e..0000000 --- a/samples/float_model/mobilenet_v1_emitc_static_test.txt +++ /dev/null
@@ -1,3 +0,0 @@ -// RUN: ${TEST_RUNNER_CMD} ${OUT}/springbok_iree/samples/float_model/mobilenet_v1_emitc_static 2>&1 | tee %t -// RUN: cat %t | FileCheck %s -// CHECK: {{Image prediction result is: id: 178}}
diff --git a/samples/quant_model/CMakeLists.txt b/samples/quant_model/CMakeLists.txt deleted file mode 100644 index ea4ff16..0000000 --- a/samples/quant_model/CMakeLists.txt +++ /dev/null
@@ -1,475 +0,0 @@ -#------------------------------------------------------------------------------- -# Build the mlir bytecode modules with iree-compile. Note the last two flags -# are for RVV support. -#------------------------------------------------------------------------------- - -springbok_modules( - NAME - mobilenet_v1 - SRC - "$ENV{ROOTDIR}/ml/ml-models-public/quant_models/mobilenet_v1_0.25_224_quant.tflite" - C_IDENTIFIER - "samples_quant_model_mobilenet_v1" - FLAGS - "-iree-input-type=tosa" - "-riscv-v-vector-bits-min=512" - "-riscv-v-fixed-length-vector-lmul-max=8" - PUBLIC -) - -springbok_modules( - NAME - mobilenet_v2 - SRC - "$ENV{ROOTDIR}/ml/ml-models-public/quant_models/mobilenet_v2_1.0_224_quant.tflite" - C_IDENTIFIER - "samples_quant_model_mobilenet_v2" - FLAGS - "-iree-input-type=tosa" - "-riscv-v-vector-bits-min=512" - "-riscv-v-fixed-length-vector-lmul-max=8" - PUBLIC -) - -springbok_modules( - NAME - person_detection - SRC - "$ENV{ROOTDIR}/ml/ml-models-public/quant_models/person_detection.tflite" - C_IDENTIFIER - "samples_quant_model_person_detection" - FLAGS - "-iree-input-type=tosa" - "-riscv-v-vector-bits-min=512" - "-riscv-v-fixed-length-vector-lmul-max=8" - PUBLIC -) - -if(${BUILD_INTERNAL_MODELS}) - -springbok_modules( - NAME - barcode - SRC - "$ENV{ROOTDIR}/ml/ml-models/quant_models/barcode_quant.tflite" - C_IDENTIFIER - "samples_quant_model_barcode" - FLAGS - "-iree-input-type=tosa" - "-riscv-v-vector-bits-min=512" - "-riscv-v-fixed-length-vector-lmul-max=8" - PUBLIC -) - -springbok_modules( - NAME - daredevil - SRC - "$ENV{ROOTDIR}/ml/ml-models/quant_models/daredevil_quant.tflite" - C_IDENTIFIER - "samples_quant_model_daredevil" - FLAGS - "-iree-input-type=tosa" - "-riscv-v-vector-bits-min=512" - "-riscv-v-fixed-length-vector-lmul-max=8" - PUBLIC -) - -springbok_modules( - NAME - fssd_25_8bit_v2 - SRC - "$ENV{ROOTDIR}/ml/ml-models/quant_models/fssd_25_8bit_v2_quant.tflite" - C_IDENTIFIER - "samples_quant_model_fssd_25_8bit_v2" - FLAGS - "-iree-input-type=tosa" - "-riscv-v-vector-bits-min=512" - "-riscv-v-fixed-length-vector-lmul-max=8" - PUBLIC -) - -springbok_modules( - NAME - scenenet_v2 - SRC - "$ENV{ROOTDIR}/ml/ml-models/quant_models/scenenet_v2_quant.tflite" - C_IDENTIFIER - "samples_quant_model_scenenet_v2" - FLAGS - "-iree-input-type=tosa" - "-riscv-v-vector-bits-min=512" - "-riscv-v-fixed-length-vector-lmul-max=8" - PUBLIC -) - -springbok_modules( - NAME - semantic_lift - SRC - "$ENV{ROOTDIR}/ml/ml-models/quant_models/semantic_lift_quant.tflite" - C_IDENTIFIER - "samples_quant_model_semantic_lift" - FLAGS - "-iree-input-type=tosa" - "-riscv-v-vector-bits-min=512" - "-riscv-v-fixed-length-vector-lmul-max=8" - PUBLIC -) - -springbok_modules( - NAME - voice_commands - SRC - "$ENV{ROOTDIR}/ml/ml-models/quant_models/voice_commands_quant.tflite" - C_IDENTIFIER - "samples_quant_model_voice_commands" - FLAGS - "-iree-input-type=tosa" - "-riscv-v-vector-bits-min=512" - "-riscv-v-fixed-length-vector-lmul-max=8" - PUBLIC -) - -endif(${BUILD_INTERNAL_MODELS}) - -#------------------------------------------------------------------------------- -# Binaries to execute the IREE model input -#------------------------------------------------------------------------------- - -iree_model_input( - NAME - mobilenet_quant_input - SHAPE - "1, 224, 224, 3" - SRC - "https://storage.googleapis.com/download.tensorflow.org/ \ - example_images/YellowLabradorLooking_new.jpg" - QUANT -) - -iree_model_input( - NAME - person_detection_quant_input - SHAPE - "1, 96, 96, 1" - SRC - "https://github.com/tensorflow/tflite-micro/raw/aeac6f39e5c7475cea20c54e86d41e3a38312546/ \ - tensorflow/lite/micro/examples/person_detection/testdata/person.bmp" - QUANT -) - -if(${BUILD_INTERNAL_MODELS}) - -iree_model_input( - NAME - daredevil_quant_input - SHAPE - "1, 15360, 1" - SRC - "$ENV{ROOTDIR}/ml/ml-models/test_data/golden_whistle.wav" - QUANT -) - -iree_model_input( - NAME - fssd_quant_input - SHAPE - "1, 480, 640, 1" - SRC - "$ENV{ROOTDIR}/sw/vec_iree/samples/risp4ml/test_data/faces_480x640_uint8_numpy_bayer.bin" - QUANT -) - -endif(${BUILD_INTERNAL_MODELS}) - -#------------------------------------------------------------------------------- -# Binaries to execute the MLIR bytecode modules -#------------------------------------------------------------------------------- - - -# If the program requires a larger stack size, add -# -# LINKOPTS -# "LINKER:--defsym=__stack_size__=<new stack size>" -# -# to increase it. - -iree_cc_binary( - NAME - mobilenet_v1_bytecode_static - SRCS - "mobilenet_v1.c" - DEPS - ::mobilenet_quant_input_c - ::mobilenet_v1_bytecode_module_static - ::mobilenet_v1_bytecode_module_static_c - iree::vm::bytecode_module - samples::util::util - LINKOPTS - "LINKER:--defsym=__stack_size__=300k" -) - -iree_cc_binary( - NAME - mobilenet_v1_emitc_static - SRCS - "mobilenet_v1.c" - DEPS - ::mobilenet_quant_input_c - ::mobilenet_v1_c_module_static_c - ::mobilenet_v1_c_module_static_emitc - samples::util::util - LINKOPTS - "LINKER:--defsym=__stack_size__=300k" - COPTS - "-DBUILD_EMITC" -) - -iree_cc_binary( - NAME - mobilenet_v2_bytecode_static - SRCS - "mobilenet_v2.c" - DEPS - ::mobilenet_quant_input_c - ::mobilenet_v2_bytecode_module_static - ::mobilenet_v2_bytecode_module_static_c - iree::vm::bytecode_module - samples::util::util - LINKOPTS - "LINKER:--defsym=__stack_size__=300k" -) - -iree_cc_binary( - NAME - mobilenet_v2_emitc_static - SRCS - "mobilenet_v2.c" - DEPS - ::mobilenet_quant_input_c - ::mobilenet_v2_c_module_static_c - ::mobilenet_v2_c_module_static_emitc - samples::util::util - LINKOPTS - "LINKER:--defsym=__stack_size__=300k" - COPTS - "-DBUILD_EMITC" -) - -iree_cc_binary( - NAME - person_detection_bytecode_static - SRCS - "person_detection.c" - DEPS - ::person_detection_bytecode_module_static - ::person_detection_bytecode_module_static_c - ::person_detection_quant_input_c - iree::vm::bytecode_module - samples::util::util - LINKOPTS - "LINKER:--defsym=__stack_size__=128k" -) - -iree_cc_binary( - NAME - person_detection_emitc_static - SRCS - "person_detection.c" - DEPS - ::person_detection_c_module_static_c - ::person_detection_c_module_static_emitc - ::person_detection_quant_input_c - samples::util::util - LINKOPTS - "LINKER:--defsym=__stack_size__=128k" - COPTS - "-DBUILD_EMITC" -) - -if(NOT ${BUILD_INTERNAL_MODELS}) - return() -endif() - -iree_cc_binary( - NAME - barcode_bytecode_static - SRCS - "barcode.c" - DEPS - ::barcode_bytecode_module_static - ::barcode_bytecode_module_static_c - iree::vm::bytecode_module - samples::util::util - LINKOPTS - "LINKER:--defsym=__stack_size__=200k" -) - -iree_cc_binary( - NAME - barcode_emitc_static - SRCS - "barcode.c" - DEPS - ::barcode_c_module_static_c - ::barcode_c_module_static_emitc - samples::util::util - LINKOPTS - "LINKER:--defsym=__stack_size__=200k" - COPTS - "-DBUILD_EMITC" -) - -iree_cc_binary( - NAME - daredevil_bytecode_static - SRCS - "daredevil.c" - DEPS - ::daredevil_bytecode_module_static - ::daredevil_bytecode_module_static_c - ::daredevil_quant_input_c - iree::vm::bytecode_module - samples::audio_prep::mfcc - samples::util::util - LINKOPTS - "LINKER:--defsym=__stack_size__=300k" -) - -iree_cc_binary( - NAME - daredevil_emitc_static - SRCS - "daredevil.c" - DEPS - ::daredevil_c_module_static_c - ::daredevil_c_module_static_emitc - ::daredevil_quant_input_c - samples::audio_prep::mfcc - samples::util::util - LINKOPTS - "LINKER:--defsym=__stack_size__=300k" - COPTS - "-DBUILD_EMITC" -) - -iree_cc_binary( - NAME - fssd_25_8bit_v2_bytecode_static - SRCS - "fssd_25_8bit_v2.c" - DEPS - ::fssd_quant_input_c - ::fssd_25_8bit_v2_bytecode_module_static - ::fssd_25_8bit_v2_bytecode_module_static_c - iree::vm::bytecode_module - samples::risp4ml::pipeline::pipeline - samples::util::util - LINKOPTS - "LINKER:--defsym=__stack_size__=300k" -) - -iree_cc_binary( - NAME - fssd_25_8bit_v2_emitc_static - SRCS - "fssd_25_8bit_v2.c" - DEPS - ::fssd_quant_input_c - ::fssd_25_8bit_v2_c_module_static_c - ::fssd_25_8bit_v2_c_module_static_emitc - samples::risp4ml::pipeline::pipeline - samples::util::util - LINKOPTS - "LINKER:--defsym=__stack_size__=300k" - COPTS - "-DBUILD_EMITC" -) - -iree_cc_binary( - NAME - scenenet_v2_bytecode_static - SRCS - "scenenet_v2.c" - DEPS - ::scenenet_v2_bytecode_module_static - ::scenenet_v2_bytecode_module_static_c - iree::vm::bytecode_module - samples::util::util - LINKOPTS - "LINKER:--defsym=__stack_size__=300k" -) - -iree_cc_binary( - NAME - scenenet_v2_emitc_static - SRCS - "scenenet_v2.c" - DEPS - ::scenenet_v2_c_module_static_c - ::scenenet_v2_c_module_static_emitc - samples::util::util - LINKOPTS - "LINKER:--defsym=__stack_size__=300k" - COPTS - "-DBUILD_EMITC" -) - -iree_cc_binary( - NAME - semantic_lift_bytecode_static - SRCS - "semantic_lift.c" - DEPS - ::semantic_lift_bytecode_module_static - ::semantic_lift_bytecode_module_static_c - iree::vm::bytecode_module - samples::util::util - LINKOPTS - "LINKER:--defsym=__stack_size__=300k" -) - -iree_cc_binary( - NAME - semantic_lift_emitc_static - SRCS - "semantic_lift.c" - DEPS - ::semantic_lift_c_module_static_c - ::semantic_lift_c_module_static_emitc - samples::util::util - LINKOPTS - "LINKER:--defsym=__stack_size__=300k" - COPTS - "-DBUILD_EMITC" -) - -iree_cc_binary( - NAME - voice_commands_bytecode_static - SRCS - "voice_commands.c" - DEPS - ::voice_commands_bytecode_module_static - ::voice_commands_bytecode_module_static_c - iree::vm::bytecode_module - samples::util::util - LINKOPTS - "LINKER:--defsym=__stack_size__=250k" -) - -iree_cc_binary( - NAME - voice_commands_emitc_static - SRCS - "voice_commands.c" - DEPS - ::voice_commands_c_module_static_c - ::voice_commands_c_module_static_emitc - samples::util::util - LINKOPTS - "LINKER:--defsym=__stack_size__=250k" - COPTS - "-DBUILD_EMITC" -)
diff --git a/samples/quant_model/barcode.c b/samples/quant_model/barcode.c deleted file mode 100644 index 30bb811..0000000 --- a/samples/quant_model/barcode.c +++ /dev/null
@@ -1,92 +0,0 @@ -/* - * Copyright 2022 Google LLC - * - * 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. - */ - -// Barcode quant model -// MlModel struct initialization to include model I/O info. -// Bytecode loading, input/output processes. - -#include <springbok.h> - -#include "iree/base/api.h" -#include "iree/hal/api.h" -#include "samples/util/util.h" - -// Compiled module embedded here to avoid file IO: -#if !defined(BUILD_EMITC) -#include "samples/quant_model/barcode_bytecode_module_static.h" -#include "samples/quant_model/barcode_bytecode_module_static_c.h" -#else -#include "samples/quant_model/barcode_c_module_static_c.h" -#include "samples/quant_model/barcode_c_module_static_emitc.h" -#endif - -const MlModel kModel = { - .num_input = 1, - .num_input_dim = {4}, - .input_shape = {{1, 320, 320, 1}}, - .input_length = {320 * 320 * 1}, - .input_size_bytes = {sizeof(uint8_t)}, - .num_output = 12, - .output_length = {20 * 20 * 36, 20 * 20 * 9, 10 * 10 * 72, 10 * 10 * 18, - 5 * 5 * 72, 5 * 5 * 18, 3 * 3 * 72, 3 * 3 * 18, - 2 * 2 * 72, 2 * 2 * 18, 72, 18}, - .output_size_bytes = sizeof(uint8_t), - .hal_element_type = IREE_HAL_ELEMENT_TYPE_UINT_8, - .entry_func = "module.main", - .model_name = "barcode_quant", -}; - -iree_status_t create_module(iree_vm_module_t **module) { -#if !defined(BUILD_EMITC) - const struct iree_file_toc_t *module_file_toc = - samples_quant_model_barcode_bytecode_module_static_create(); - return iree_vm_bytecode_module_create( - iree_make_const_byte_span(module_file_toc->data, module_file_toc->size), - iree_allocator_null(), iree_allocator_system(), module); -#else - return module_create(iree_allocator_system(), module); -#endif -} - -iree_hal_executable_library_query_fn_t library_query(void) { -#if !defined(BUILD_EMITC) - return &barcode_bytecode_module_static_linked_llvm_library_query; -#else - return &barcode_c_module_static_linked_llvm_library_query; -#endif -} - -iree_status_t load_input_data(const MlModel *model, void **buffer, - iree_const_byte_span_t **byte_span) { - iree_status_t result = alloc_input_buffer(model, buffer); - // Populate initial value - srand(768954); - if (iree_status_is_ok(result)) { - for (int i = 0; i < model->input_length[0]; ++i) { - ((uint8_t *)*buffer)[i] = (uint8_t)rand(); - } - } - byte_span[0] = malloc(sizeof(iree_const_byte_span_t)); - *byte_span[0] = iree_make_const_byte_span( - buffer[0], model->input_size_bytes[0] * model->input_length[0]); - return result; -} - -iree_status_t process_output(const MlModel *model, - iree_hal_buffer_mapping_t *buffers, - MlOutput *output) { - return iree_ok_status(); -}
diff --git a/samples/quant_model/barcode_test.txt b/samples/quant_model/barcode_test.txt deleted file mode 100644 index 9557b0e..0000000 --- a/samples/quant_model/barcode_test.txt +++ /dev/null
@@ -1,3 +0,0 @@ -// RUN: ${TEST_RUNNER_CMD} ${OUT}/springbok_iree/samples/quant_model/barcode_bytecode_static -// RUN: ${TEST_RUNNER_CMD} ${OUT}/springbok_iree/samples/quant_model/barcode_emitc_static -// REQUIRES: internal
diff --git a/samples/quant_model/daredevil.c b/samples/quant_model/daredevil.c deleted file mode 100644 index 5601ebe..0000000 --- a/samples/quant_model/daredevil.c +++ /dev/null
@@ -1,112 +0,0 @@ -/* - * Copyright 2022 Google LLC - * - * 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. - */ - -// Daredevil quant model -// MlModel struct initialization to include model I/O info. -// Bytecode loading, input/output processes. - -#include <springbok.h> - -#include "daredevil.h" -#include "iree/base/api.h" -#include "iree/hal/api.h" -#include "samples/audio_prep/mfcc.h" -#include "samples/util/util.h" - -// Compiled module embedded here to avoid file IO: -#include "samples/quant_model/daredevil_quant_input_c.h" -#if !defined(BUILD_EMITC) -#include "samples/quant_model/daredevil_bytecode_module_static.h" -#include "samples/quant_model/daredevil_bytecode_module_static_c.h" -#else -#include "samples/quant_model/daredevil_c_module_static_c.h" -#include "samples/quant_model/daredevil_c_module_static_emitc.h" -#endif - -const MlModel kModel = { - .num_input = 1, - .num_input_dim = {3}, - .input_shape = {{1, 96, 64}}, - .input_length = {96 * 64}, - .input_size_bytes = {sizeof(uint8_t)}, - .num_output = 1, - .output_length = {527}, - .output_size_bytes = sizeof(uint8_t), - .hal_element_type = IREE_HAL_ELEMENT_TYPE_UINT_8, - .entry_func = "module.main", - .model_name = "daredevil_quant", -}; - -DaredevilOutput score; - -iree_status_t create_module(iree_vm_module_t **module) { -#if !defined(BUILD_EMITC) - const struct iree_file_toc_t *module_file_toc = - samples_quant_model_daredevil_bytecode_module_static_create(); - return iree_vm_bytecode_module_create( - iree_make_const_byte_span(module_file_toc->data, module_file_toc->size), - iree_allocator_null(), iree_allocator_system(), module); -#else - return module_create(iree_allocator_system(), module); -#endif -} - -iree_hal_executable_library_query_fn_t library_query(void) { -#if !defined(BUILD_EMITC) - return &daredevil_bytecode_module_static_linked_llvm_library_query; -#else - return &daredevil_c_module_static_linked_llvm_library_query; -#endif -} - -iree_status_t load_input_data(const MlModel *model, void **buffer, - iree_const_byte_span_t **byte_span) { - iree_status_t result = alloc_input_buffer(model, buffer); - int16_t *input = (int16_t *)daredevil_quant_input; - uint8_t *output = (uint8_t *)buffer[0]; - extract_mfcc(input, output, sizeof(daredevil_quant_input) / sizeof(int16_t)); - - byte_span[0] = malloc(sizeof(iree_const_byte_span_t)); - *byte_span[0] = iree_make_const_byte_span( - buffer[0], model->input_size_bytes[0] * model->input_length[0]); - - return result; -} - -iree_status_t process_output(const MlModel *model, - iree_hal_buffer_mapping_t *buffers, - MlOutput *output) { - iree_status_t result = iree_ok_status(); - // find the label index with best prediction - int best_out = 0; - int best_idx = -1; - for (int i = 0; i < model->output_length[0]; ++i) { - uint8_t out = ((uint8_t *)buffers[0].contents.data)[i]; - if (out > best_out) { - best_out = out; - best_idx = i; - } - } - score.best_out = best_out; - score.best_idx = best_idx; - - LOG_INFO("Best prediction result is: id: %d", best_idx + 1); - LOG_INFO("Id # 41 is Whistling"); - - output->result = &score; - output->len = sizeof(score); - return result; -}
diff --git a/samples/quant_model/daredevil.h b/samples/quant_model/daredevil.h deleted file mode 100644 index 68f3464..0000000 --- a/samples/quant_model/daredevil.h +++ /dev/null
@@ -1,27 +0,0 @@ -/* - * Copyright 2022 Google LLC - * - * 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 SAMPLES_QUANT_MODEL_DAREDEVIL_H_ -#define SAMPLES_QUANT_MODEL_DAREDEVIL_H_ - -#include <stdint.h> - -typedef struct { - int best_idx; - int best_out; -} DaredevilOutput; - -#endif // SAMPLES_QUANT_MODEL_DAREDEVIL_H_
diff --git a/samples/quant_model/daredevil_bytecode_static_test.txt b/samples/quant_model/daredevil_bytecode_static_test.txt deleted file mode 100644 index 34c3e3f..0000000 --- a/samples/quant_model/daredevil_bytecode_static_test.txt +++ /dev/null
@@ -1,4 +0,0 @@ -// RUN: ${TEST_RUNNER_CMD} ${OUT}/springbok_iree/samples/quant_model/daredevil_bytecode_static 2>&1 | tee %t -// RUN: cat %t | FileCheck %s -// CHECK: {{Best prediction result is: id: 41}} -// REQUIRES: internal
diff --git a/samples/quant_model/daredevil_emitc_static_test.txt b/samples/quant_model/daredevil_emitc_static_test.txt deleted file mode 100644 index 25fc487..0000000 --- a/samples/quant_model/daredevil_emitc_static_test.txt +++ /dev/null
@@ -1,4 +0,0 @@ -// RUN: ${TEST_RUNNER_CMD} ${OUT}/springbok_iree/samples/quant_model/daredevil_emitc_static 2>&1 | tee %t -// RUN: cat %t | FileCheck %s -// CHECK: {{Best prediction result is: id: 41}} -// REQUIRES: internal
diff --git a/samples/quant_model/fssd_25_8bit_v2.c b/samples/quant_model/fssd_25_8bit_v2.c deleted file mode 100644 index ab48a11..0000000 --- a/samples/quant_model/fssd_25_8bit_v2.c +++ /dev/null
@@ -1,93 +0,0 @@ -/* - * Copyright 2022 Google LLC - * - * 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. - */ - -// Fssd_25_8bit_v2 quant model -// MlModel struct initialization to include model I/O info. -// Bytecode loading, input/output processes. - -#include <springbok.h> - -#include "iree/base/api.h" -#include "iree/hal/api.h" -#include "samples/risp4ml/pipeline/pipeline.h" -#include "samples/util/util.h" - -// Compiled module embedded here to avoid file IO: -#include "samples/quant_model/fssd_quant_input_c.h" -#if !defined(BUILD_EMITC) -#include "samples/quant_model/fssd_25_8bit_v2_bytecode_module_static.h" -#include "samples/quant_model/fssd_25_8bit_v2_bytecode_module_static_c.h" -#else -#include "samples/quant_model/fssd_25_8bit_v2_c_module_static_c.h" -#include "samples/quant_model/fssd_25_8bit_v2_c_module_static_emitc.h" -#endif - -const MlModel kModel = { - .num_input = 1, - .num_input_dim = {4}, - .input_shape = {{1, 320, 320, 3}}, - .input_length = {320 * 320 * 3}, - .input_size_bytes = {sizeof(uint8_t)}, - .num_output = 8, - .output_length = {20 * 20 * 48, 20 * 20 * 3, 10 * 10 * 48, 10 * 10 * 3, - 5 * 5 * 48, 5 * 5 * 3, 3 * 3 * 48, 3 * 3 * 3}, - .output_size_bytes = sizeof(uint8_t), - .hal_element_type = IREE_HAL_ELEMENT_TYPE_UINT_8, - .entry_func = "module.main", - .model_name = "fssd_25_8bit_v2_quant", -}; - -iree_status_t create_module(iree_vm_module_t **module) { -#if !defined(BUILD_EMITC) - const struct iree_file_toc_t *module_file_toc = - samples_quant_model_fssd_25_8bit_v2_bytecode_module_static_create(); - return iree_vm_bytecode_module_create( - iree_make_const_byte_span(module_file_toc->data, module_file_toc->size), - iree_allocator_null(), iree_allocator_system(), module); -#else - return module_create(iree_allocator_system(), module); -#endif -} - -iree_hal_executable_library_query_fn_t library_query(void) { -#if !defined(BUILD_EMITC) - return &fssd_25_8bit_v2_bytecode_module_static_linked_llvm_library_query; -#else - return &fssd_25_8bit_v2_c_module_static_linked_llvm_library_query; -#endif -} - -iree_status_t load_input_data(const MlModel *model, void **buffer, - iree_const_byte_span_t **byte_span) { - iree_status_t result = alloc_input_buffer(model, buffer); - - ImageU8 input = { - .width = 640, .height = 480, .num_channels = 1, .data = fssd_quant_input}; - ImageU8 output = { - .width = 320, .height = 320, .num_channels = 3, .data = buffer[0]}; - isp_pipeline(&input, &output); - - byte_span[0] = malloc(sizeof(iree_const_byte_span_t)); - *byte_span[0] = iree_make_const_byte_span( - buffer[0], model->input_size_bytes[0] * model->input_length[0]); - return result; -} - -iree_status_t process_output(const MlModel *model, - iree_hal_buffer_mapping_t *buffers, - MlOutput *output) { - return iree_ok_status(); -}
diff --git a/samples/quant_model/fssd_test.txt b/samples/quant_model/fssd_test.txt deleted file mode 100644 index 42f6a81..0000000 --- a/samples/quant_model/fssd_test.txt +++ /dev/null
@@ -1,3 +0,0 @@ -// RUN: ${TEST_RUNNER_CMD} ${OUT}/springbok_iree/samples/quant_model/fssd_25_8bit_v2_bytecode_static -// RUN: ${TEST_RUNNER_CMD} ${OUT}/springbok_iree/samples/quant_model/fssd_25_8bit_v2_emitc_static -// REQUIRES: internal
diff --git a/samples/quant_model/mobilenet_v1.c b/samples/quant_model/mobilenet_v1.c deleted file mode 100644 index 644246d..0000000 --- a/samples/quant_model/mobilenet_v1.c +++ /dev/null
@@ -1,105 +0,0 @@ -/* - * Copyright 2022 Google LLC - * - * 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. - */ - -// Mobilenet_v1_0.25_224 quant model -// MlModel struct initialization to include model I/O info. -// Bytecode loading, input/output processes. - -#include <springbok.h> - -#include "iree/base/api.h" -#include "iree/hal/api.h" -#include "mobilenet_v1.h" -#include "samples/util/util.h" - -// Compiled module embedded here to avoid file IO: -#include "samples/quant_model/mobilenet_quant_input_c.h" -#if !defined(BUILD_EMITC) -#include "samples/quant_model/mobilenet_v1_bytecode_module_static.h" -#include "samples/quant_model/mobilenet_v1_bytecode_module_static_c.h" -#else -#include "samples/quant_model/mobilenet_v1_c_module_static_c.h" -#include "samples/quant_model/mobilenet_v1_c_module_static_emitc.h" -#endif - -const MlModel kModel = { - .num_input = 1, - .num_input_dim = {4}, - .input_shape = {{1, 224, 224, 3}}, - .input_length = {224 * 224 * 3}, - .input_size_bytes = {sizeof(uint8_t)}, - .num_output = 1, - .output_length = {1001}, - .output_size_bytes = sizeof(uint8_t), - .hal_element_type = IREE_HAL_ELEMENT_TYPE_UINT_8, - .entry_func = "module.main", - .model_name = "mobilenet_v1_0.25_224_quant", -}; - -MobilenetV1Output score; - -iree_status_t create_module(iree_vm_module_t **module) { -#if !defined(BUILD_EMITC) - const struct iree_file_toc_t *module_file_toc = - samples_quant_model_mobilenet_v1_bytecode_module_static_create(); - return iree_vm_bytecode_module_create( - iree_make_const_byte_span(module_file_toc->data, module_file_toc->size), - iree_allocator_null(), iree_allocator_system(), module); -#else - return module_create(iree_allocator_system(), module); -#endif -} - -iree_hal_executable_library_query_fn_t library_query(void) { -#if !defined(BUILD_EMITC) - return &mobilenet_v1_bytecode_module_static_linked_llvm_library_query; -#else - return &mobilenet_v1_c_module_static_linked_llvm_library_query; -#endif -} - -iree_status_t load_input_data(const MlModel *model, void **buffer, - iree_const_byte_span_t **byte_span) { - byte_span[0] = malloc(sizeof(iree_const_byte_span_t)); - *byte_span[0] = iree_make_const_byte_span( - mobilenet_quant_input, - model->input_size_bytes[0] * model->input_length[0]); - return iree_ok_status(); -} - -iree_status_t process_output(const MlModel *model, - iree_hal_buffer_mapping_t *buffers, - MlOutput *output) { - iree_status_t result = iree_ok_status(); - // find the label index with best prediction - int best_out = 0; - int best_idx = -1; - for (int i = 0; i < model->output_length[0]; ++i) { - uint8_t out = ((uint8_t *)buffers[0].contents.data)[i]; - if (out > best_out) { - best_out = out; - best_idx = i; - } - } - score.best_out = best_out; - score.best_idx = best_idx; - - LOG_INFO("Image prediction result is: id: %d", best_idx + 1); - - output->result = &score; - output->len = sizeof(score); - return result; -}
diff --git a/samples/quant_model/mobilenet_v1.h b/samples/quant_model/mobilenet_v1.h deleted file mode 100644 index 24d0c4e..0000000 --- a/samples/quant_model/mobilenet_v1.h +++ /dev/null
@@ -1,27 +0,0 @@ -/* - * Copyright 2022 Google LLC - * - * 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 SAMPLES_QUANT_MODEL_MOBILENET_V1_H_ -#define SAMPLES_QUANT_MODEL_MOBILENET_V1_H_ - -#include <stdint.h> - -typedef struct { - int best_idx; - int best_out; -} MobilenetV1Output; - -#endif // SAMPLES_QUANT_MODEL_MOBILENET_V1_H_
diff --git a/samples/quant_model/mobilenet_v1_bytecode_static_test.txt b/samples/quant_model/mobilenet_v1_bytecode_static_test.txt deleted file mode 100644 index 4d2dda7..0000000 --- a/samples/quant_model/mobilenet_v1_bytecode_static_test.txt +++ /dev/null
@@ -1,4 +0,0 @@ -// RUN: ${TEST_RUNNER_CMD} ${OUT}/springbok_iree/samples/quant_model/mobilenet_v1_bytecode_static 2>&1 | tee %t -// RUN: cat %t | FileCheck %s -// TODO(hcindyl): Figure out ubuntu20.04 vs debian testing discrepancy. -// CHECK: {{Image prediction result is: id: 17[5-8]}}
diff --git a/samples/quant_model/mobilenet_v1_emitc_static_test.txt b/samples/quant_model/mobilenet_v1_emitc_static_test.txt deleted file mode 100644 index 3d8dadb..0000000 --- a/samples/quant_model/mobilenet_v1_emitc_static_test.txt +++ /dev/null
@@ -1,4 +0,0 @@ -// RUN: ${TEST_RUNNER_CMD} ${OUT}/springbok_iree/samples/quant_model/mobilenet_v1_emitc_static 2>&1 | tee %t -// RUN: cat %t | FileCheck %s -// TODO(hcindyl): Figure out ubuntu20.04 vs debian testing discrepancy -// CHECK: {{Image prediction result is: id: 17[5-8]}}
diff --git a/samples/quant_model/mobilenet_v2.c b/samples/quant_model/mobilenet_v2.c deleted file mode 100644 index 2af9d02..0000000 --- a/samples/quant_model/mobilenet_v2.c +++ /dev/null
@@ -1,105 +0,0 @@ -/* - * Copyright 2022 Google LLC - * - * 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. - */ - -// Mobilenet_v2_1.0_224 quant model -// MlModel struct initialization to include model I/O info. -// Bytecode loading, input/output processes. - -#include <springbok.h> - -#include "iree/base/api.h" -#include "iree/hal/api.h" -#include "mobilenet_v2.h" -#include "samples/util/util.h" - -// Compiled module embedded here to avoid file IO: -#include "samples/quant_model/mobilenet_quant_input_c.h" -#if !defined(BUILD_EMITC) -#include "samples/quant_model/mobilenet_v2_bytecode_module_static.h" -#include "samples/quant_model/mobilenet_v2_bytecode_module_static_c.h" -#else -#include "samples/quant_model/mobilenet_v2_c_module_static_c.h" -#include "samples/quant_model/mobilenet_v2_c_module_static_emitc.h" -#endif - -const MlModel kModel = { - .num_input = 1, - .num_input_dim = {4}, - .input_shape = {{1, 224, 224, 3}}, - .input_length = {224 * 224 * 3}, - .input_size_bytes = {sizeof(uint8_t)}, - .num_output = 1, - .output_length = {1001}, - .output_size_bytes = sizeof(uint8_t), - .hal_element_type = IREE_HAL_ELEMENT_TYPE_UINT_8, - .entry_func = "module.main", - .model_name = "mobilenet_v2_1.0_224_quant", -}; - -MobilenetV2Output score; - -iree_status_t create_module(iree_vm_module_t **module) { -#if !defined(BUILD_EMITC) - const struct iree_file_toc_t *module_file_toc = - samples_quant_model_mobilenet_v2_bytecode_module_static_create(); - return iree_vm_bytecode_module_create( - iree_make_const_byte_span(module_file_toc->data, module_file_toc->size), - iree_allocator_null(), iree_allocator_system(), module); -#else - return module_create(iree_allocator_system(), module); -#endif -} - -iree_hal_executable_library_query_fn_t library_query(void) { -#if !defined(BUILD_EMITC) - return &mobilenet_v2_bytecode_module_static_linked_llvm_library_query; -#else - return &mobilenet_v2_c_module_static_linked_llvm_library_query; -#endif -} - -iree_status_t load_input_data(const MlModel *model, void **buffer, - iree_const_byte_span_t **byte_span) { - byte_span[0] = malloc(sizeof(iree_const_byte_span_t)); - *byte_span[0] = iree_make_const_byte_span( - mobilenet_quant_input, - model->input_size_bytes[0] * model->input_length[0]); - return iree_ok_status(); -} - -iree_status_t process_output(const MlModel *model, - iree_hal_buffer_mapping_t *buffers, - MlOutput *output) { - iree_status_t result = iree_ok_status(); - // find the label index with best prediction - int best_out = 0; - int best_idx = -1; - for (int i = 0; i < model->output_length[0]; ++i) { - uint8_t out = ((uint8_t *)buffers[0].contents.data)[i]; - if (out > best_out) { - best_out = out; - best_idx = i; - } - } - score.best_out = best_out; - score.best_idx = best_idx; - - LOG_INFO("Image prediction result is: id: %d", best_idx + 1); - - output->result = &score; - output->len = sizeof(score); - return result; -}
diff --git a/samples/quant_model/mobilenet_v2.h b/samples/quant_model/mobilenet_v2.h deleted file mode 100644 index 862fc42..0000000 --- a/samples/quant_model/mobilenet_v2.h +++ /dev/null
@@ -1,27 +0,0 @@ -/* - * Copyright 2022 Google LLC - * - * 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 SAMPLES_QUANT_MODEL_MOBILENET_V2_H_ -#define SAMPLES_QUANT_MODEL_MOBILENET_V2_H_ - -#include <stdint.h> - -typedef struct { - int best_idx; - int best_out; -} MobilenetV2Output; - -#endif // SAMPLES_QUANT_MODEL_MOBILENET_V2_H_
diff --git a/samples/quant_model/mobilenet_v2_bytecode_static_test.txt b/samples/quant_model/mobilenet_v2_bytecode_static_test.txt deleted file mode 100644 index fd3b156..0000000 --- a/samples/quant_model/mobilenet_v2_bytecode_static_test.txt +++ /dev/null
@@ -1,3 +0,0 @@ -// RUN: ${TEST_RUNNER_CMD} ${OUT}/springbok_iree/samples/quant_model/mobilenet_v2_bytecode_static 2>&1 | tee %t -// RUN: cat %t | FileCheck %s -// CHECK: {{Image prediction result is: id: 210}}
diff --git a/samples/quant_model/mobilenet_v2_emitc_static_text.txt b/samples/quant_model/mobilenet_v2_emitc_static_text.txt deleted file mode 100644 index 1824224..0000000 --- a/samples/quant_model/mobilenet_v2_emitc_static_text.txt +++ /dev/null
@@ -1,3 +0,0 @@ -// RUN: ${TEST_RUNNER_CMD} ${OUT}/springbok_iree/samples/quant_model/mobilenet_v2_emitc_static 2>&1 | tee %t -// RUN: cat %t | FileCheck %s -// CHECK: {{Image prediction result is: id: 210}}
diff --git a/samples/quant_model/person_detection.c b/samples/quant_model/person_detection.c deleted file mode 100644 index b93b2b1..0000000 --- a/samples/quant_model/person_detection.c +++ /dev/null
@@ -1,97 +0,0 @@ -/* - * Copyright 2022 Google LLC - * - * 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. - */ - -// Person_detection quant model -// MlModel struct initialization to include model I/O info. -// Bytecode loading, input/output processes. - -#include <springbok.h> - -#include "iree/base/api.h" -#include "iree/hal/api.h" -#include "samples/util/util.h" -#include "person_detection.h" - -// Compiled module embedded here to avoid file IO: -#if !defined(BUILD_EMITC) -#include "samples/quant_model/person_detection_bytecode_module_static.h" -#include "samples/quant_model/person_detection_bytecode_module_static_c.h" -#else -#include "samples/quant_model/person_detection_c_module_static_c.h" -#include "samples/quant_model/person_detection_c_module_static_emitc.h" -#endif -#include "samples/quant_model/person_detection_quant_input_c.h" - -const MlModel kModel = { - .num_input = 1, - .num_input_dim = {4}, - .input_shape = {{1, 96, 96, 1}}, - .input_length = {96 * 96 * 1}, - .input_size_bytes = {sizeof(int8_t)}, - .num_output = 1, - .output_length = {2}, - .output_size_bytes = sizeof(int8_t), - .hal_element_type = IREE_HAL_ELEMENT_TYPE_SINT_8, - .entry_func = "module.main", - .model_name = "person_detection_quant", -}; - -PersonDetectionOutput detection; - -iree_status_t create_module(iree_vm_module_t **module) { -#if !defined(BUILD_EMITC) - const struct iree_file_toc_t *module_file_toc = - samples_quant_model_person_detection_bytecode_module_static_create(); - return iree_vm_bytecode_module_create( - iree_make_const_byte_span(module_file_toc->data, module_file_toc->size), - iree_allocator_null(), iree_allocator_system(), module); -#else - return module_create(iree_allocator_system(), module); -#endif -} - -iree_hal_executable_library_query_fn_t library_query(void) { -#if !defined(BUILD_EMITC) - return &person_detection_bytecode_module_static_linked_llvm_library_query; -#else - return &person_detection_c_module_static_linked_llvm_library_query; -#endif -} - -iree_status_t load_input_data(const MlModel *model, void **buffer, - iree_const_byte_span_t **byte_span) { - byte_span[0] = malloc(sizeof(iree_const_byte_span_t)); - *byte_span[0] = iree_make_const_byte_span( - person_detection_quant_input, - model->input_size_bytes[0] * model->input_length[0]); - return iree_ok_status(); -} - -iree_status_t process_output(const MlModel *model, - iree_hal_buffer_mapping_t *buffers, - MlOutput *output) { - iree_status_t result = iree_ok_status(); - int8_t *data = (int8_t *)buffers[0].contents.data; - detection.non_person_score = data[0]; - detection.person_score = data[1]; - - LOG_INFO("Output: Non-person Score: %d; Person Score: %d", - detection.non_person_score, detection.person_score); - output->result = &detection; - output->len = sizeof(detection); - - return result; -}
diff --git a/samples/quant_model/person_detection.h b/samples/quant_model/person_detection.h deleted file mode 100644 index 079094b..0000000 --- a/samples/quant_model/person_detection.h +++ /dev/null
@@ -1,27 +0,0 @@ -/* - * Copyright 2022 Google LLC - * - * 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 SAMPLES_QUANT_MODEL_PERSON_DETECTION_H_ -#define SAMPLES_QUANT_MODEL_PERSON_DETECTION_H_ - -#include <stdint.h> - -typedef struct { - int8_t non_person_score; - int8_t person_score; -} PersonDetectionOutput; - -#endif // SAMPLES_QUANT_MODEL_PERSON_DETECTION_H_
diff --git a/samples/quant_model/person_detection_bytecode_static_test.txt b/samples/quant_model/person_detection_bytecode_static_test.txt deleted file mode 100644 index f278d1d..0000000 --- a/samples/quant_model/person_detection_bytecode_static_test.txt +++ /dev/null
@@ -1,3 +0,0 @@ -// RUN: ${TEST_RUNNER_CMD} ${OUT}/springbok_iree/samples/quant_model/person_detection_bytecode_static 2>&1 | tee %t -// RUN: cat %t | FileCheck %s -// CHECK: {{Non-person Score: -113; Person Score: 113}}
diff --git a/samples/quant_model/person_detection_emitc_static_test.txt b/samples/quant_model/person_detection_emitc_static_test.txt deleted file mode 100644 index 38b4bc4..0000000 --- a/samples/quant_model/person_detection_emitc_static_test.txt +++ /dev/null
@@ -1,3 +0,0 @@ -// RUN: ${TEST_RUNNER_CMD} ${OUT}/springbok_iree/samples/quant_model/person_detection_emitc_static 2>&1 | tee %t -// RUN: cat %t | FileCheck %s -// CHECK: {{Non-person Score: -113; Person Score: 113}}
diff --git a/samples/quant_model/scenenet_test.txt b/samples/quant_model/scenenet_test.txt deleted file mode 100644 index 1be1d7f..0000000 --- a/samples/quant_model/scenenet_test.txt +++ /dev/null
@@ -1,3 +0,0 @@ -// RUN: ${TEST_RUNNER_CMD} ${OUT}/springbok_iree/samples/quant_model/scenenet_v2_bytecode_static -// RUN: ${TEST_RUNNER_CMD} ${OUT}/springbok_iree/samples/quant_model/scenenet_v2_emitc_static -// REQUIRES: internal
diff --git a/samples/quant_model/scenenet_v2.c b/samples/quant_model/scenenet_v2.c deleted file mode 100644 index a242bef..0000000 --- a/samples/quant_model/scenenet_v2.c +++ /dev/null
@@ -1,90 +0,0 @@ -/* - * Copyright 2022 Google LLC - * - * 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. - */ - -// Scenenet_v2 quant model -// MlModel struct initialization to include model I/O info. -// Bytecode loading, input/output processes. - -#include <springbok.h> - -#include "iree/base/api.h" -#include "iree/hal/api.h" -#include "samples/util/util.h" - -// Compiled module embedded here to avoid file IO: -#if !defined(BUILD_EMITC) -#include "samples/quant_model/scenenet_v2_bytecode_module_static.h" -#include "samples/quant_model/scenenet_v2_bytecode_module_static_c.h" -#else -#include "samples/quant_model/scenenet_v2_c_module_static_c.h" -#include "samples/quant_model/scenenet_v2_c_module_static_emitc.h" -#endif - -const MlModel kModel = { - .num_input = 1, - .num_input_dim = {4}, - .input_shape = {{1, 192, 192, 3}}, - .input_length = {192 * 192 * 3}, - .input_size_bytes = {sizeof(uint8_t)}, - .num_output = 1, - .output_length = {170}, - .output_size_bytes = sizeof(uint8_t), - .hal_element_type = IREE_HAL_ELEMENT_TYPE_UINT_8, - .entry_func = "module.main", - .model_name = "scenenet_v2_quant", -}; - -iree_status_t create_module(iree_vm_module_t **module) { -#if !defined(BUILD_EMITC) - const struct iree_file_toc_t *module_file_toc = - samples_quant_model_scenenet_v2_bytecode_module_static_create(); - return iree_vm_bytecode_module_create( - iree_make_const_byte_span(module_file_toc->data, module_file_toc->size), - iree_allocator_null(), iree_allocator_system(), module); -#else - return module_create(iree_allocator_system(), module); -#endif -} - -iree_hal_executable_library_query_fn_t library_query(void) { -#if !defined(BUILD_EMITC) - return &scenenet_v2_bytecode_module_static_linked_llvm_library_query; -#else - return &scenenet_v2_c_module_static_linked_llvm_library_query; -#endif -} - -iree_status_t load_input_data(const MlModel *model, void **buffer, - iree_const_byte_span_t **byte_span) { - iree_status_t result = alloc_input_buffer(model, buffer); - // Populate initial value - srand(55555555); - if (iree_status_is_ok(result)) { - for (int i = 0; i < model->input_length[0]; ++i) { - ((uint8_t *)*buffer)[i] = (uint8_t)rand(); - } - } - byte_span[0] = malloc(sizeof(iree_const_byte_span_t)); - *byte_span[0] = iree_make_const_byte_span( - buffer[0], model->input_size_bytes[0] * model->input_length[0]); - return result; -} - -iree_status_t process_output(const MlModel *model, - iree_hal_buffer_mapping_t *buffers, - MlOutput *output) { - return iree_ok_status(); -}
diff --git a/samples/quant_model/semantic_lift.c b/samples/quant_model/semantic_lift.c deleted file mode 100644 index 74fbf47..0000000 --- a/samples/quant_model/semantic_lift.c +++ /dev/null
@@ -1,90 +0,0 @@ -/* - * Copyright 2022 Google LLC - * - * 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. - */ - -// Semantic_lift quant model -// MlModel struct initialization to include model I/O info. -// Bytecode loading, input/output processes. - -#include <springbok.h> - -#include "iree/base/api.h" -#include "iree/hal/api.h" -#include "samples/util/util.h" - -// Compiled module embedded here to avoid file IO: -#if !defined(BUILD_EMITC) -#include "samples/quant_model/semantic_lift_bytecode_module_static.h" -#include "samples/quant_model/semantic_lift_bytecode_module_static_c.h" -#else -#include "samples/quant_model/semantic_lift_c_module_static_c.h" -#include "samples/quant_model/semantic_lift_c_module_static_emitc.h" -#endif - -const MlModel kModel = { - .num_input = 1, - .num_input_dim = {4}, - .input_shape = {{1, 128, 128, 3}}, - .input_length = {128 * 128 * 3}, - .input_size_bytes = {sizeof(uint8_t)}, - .num_output = 3, - .output_length = {2, 2, 2}, - .output_size_bytes = sizeof(uint8_t), - .hal_element_type = IREE_HAL_ELEMENT_TYPE_UINT_8, - .entry_func = "module.main", - .model_name = "semantic_lift_quant", -}; - -iree_status_t create_module(iree_vm_module_t **module) { -#if !defined(BUILD_EMITC) - const struct iree_file_toc_t *module_file_toc = - samples_quant_model_semantic_lift_bytecode_module_static_create(); - return iree_vm_bytecode_module_create( - iree_make_const_byte_span(module_file_toc->data, module_file_toc->size), - iree_allocator_null(), iree_allocator_system(), module); -#else - return module_create(iree_allocator_system(), module); -#endif -} - -iree_hal_executable_library_query_fn_t library_query(void) { -#if !defined(BUILD_EMITC) - return &semantic_lift_bytecode_module_static_linked_llvm_library_query; -#else - return &semantic_lift_c_module_static_linked_llvm_library_query; -#endif -} - -iree_status_t load_input_data(const MlModel *model, void **buffer, - iree_const_byte_span_t **byte_span) { - iree_status_t result = alloc_input_buffer(model, buffer); - // Populate initial value - srand(66666666); - if (iree_status_is_ok(result)) { - for (int i = 0; i < model->input_length[0]; ++i) { - ((uint8_t *)*buffer)[i] = (uint8_t)rand(); - } - } - byte_span[0] = malloc(sizeof(iree_const_byte_span_t)); - *byte_span[0] = iree_make_const_byte_span( - buffer[0], model->input_size_bytes[0] * model->input_length[0]); - return result; -} - -iree_status_t process_output(const MlModel *model, - iree_hal_buffer_mapping_t *buffers, - MlOutput *output) { - return iree_ok_status(); -}
diff --git a/samples/quant_model/semantic_lift_test.txt b/samples/quant_model/semantic_lift_test.txt deleted file mode 100644 index 38ccd4b..0000000 --- a/samples/quant_model/semantic_lift_test.txt +++ /dev/null
@@ -1,3 +0,0 @@ -// RUN: ${TEST_RUNNER_CMD} --timeout 200 ${OUT}/springbok_iree/samples/quant_model/semantic_lift_bytecode_static -// RUN: ${TEST_RUNNER_CMD} --timeout 200 ${OUT}/springbok_iree/samples/quant_model/semantic_lift_emitc_static -// REQUIRES: internal
diff --git a/samples/quant_model/voice_commands.c b/samples/quant_model/voice_commands.c deleted file mode 100644 index c95c198..0000000 --- a/samples/quant_model/voice_commands.c +++ /dev/null
@@ -1,90 +0,0 @@ -/* - * Copyright 2022 Google LLC - * - * 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. - */ - -// Voice_commands quant model -// MlModel struct initialization to include model I/O info. -// Bytecode loading, input/output processes. - -#include <springbok.h> - -#include "iree/base/api.h" -#include "iree/hal/api.h" -#include "samples/util/util.h" - -// Compiled module embedded here to avoid file IO: -#if !defined(BUILD_EMITC) -#include "samples/quant_model/voice_commands_bytecode_module_static.h" -#include "samples/quant_model/voice_commands_bytecode_module_static_c.h" -#else -#include "samples/quant_model/voice_commands_c_module_static_c.h" -#include "samples/quant_model/voice_commands_c_module_static_emitc.h" -#endif - -const MlModel kModel = { - .num_input = 1, - .num_input_dim = {3}, - .input_shape = {{1, 198, 32}}, - .input_length = {198 * 32}, - .input_size_bytes = {sizeof(uint8_t)}, - .num_output = 1, - .output_length = {63}, - .output_size_bytes = sizeof(uint8_t), - .hal_element_type = IREE_HAL_ELEMENT_TYPE_UINT_8, - .entry_func = "module.main", - .model_name = "voice_commands_quant", -}; - -iree_status_t create_module(iree_vm_module_t **module) { -#if !defined(BUILD_EMITC) - const struct iree_file_toc_t *module_file_toc = - samples_quant_model_voice_commands_bytecode_module_static_create(); - return iree_vm_bytecode_module_create( - iree_make_const_byte_span(module_file_toc->data, module_file_toc->size), - iree_allocator_null(), iree_allocator_system(), module); -#else - return module_create(iree_allocator_system(), module); -#endif -} - -iree_hal_executable_library_query_fn_t library_query(void) { -#if !defined(BUILD_EMITC) - return &voice_commands_bytecode_module_static_linked_llvm_library_query; -#else - return &voice_commands_c_module_static_linked_llvm_library_query; -#endif -} - -iree_status_t load_input_data(const MlModel *model, void **buffer, - iree_const_byte_span_t **byte_span) { - iree_status_t result = alloc_input_buffer(model, buffer); - // Populate initial value - srand(77777777); - if (iree_status_is_ok(result)) { - for (int i = 0; i < model->input_length[0]; ++i) { - ((uint8_t *)*buffer)[i] = (uint8_t)rand(); - } - } - byte_span[0] = malloc(sizeof(iree_const_byte_span_t)); - *byte_span[0] = iree_make_const_byte_span( - buffer[0], model->input_size_bytes[0] * model->input_length[0]); - return result; -} - -iree_status_t process_output(const MlModel *model, - iree_hal_buffer_mapping_t *buffers, - MlOutput *output) { - return iree_ok_status(); -}
diff --git a/samples/quant_model/voice_commands_test.txt b/samples/quant_model/voice_commands_test.txt deleted file mode 100644 index 2eaa078..0000000 --- a/samples/quant_model/voice_commands_test.txt +++ /dev/null
@@ -1,3 +0,0 @@ -// RUN: ${TEST_RUNNER_CMD} ${OUT}/springbok_iree/samples/quant_model/voice_commands_bytecode_static -// RUN: ${TEST_RUNNER_CMD} ${OUT}/springbok_iree/samples/quant_model/voice_commands_emitc_static -// REQUIRES: internal