From ec08bbe98cccbae12708d68fc9b484620fd46554 Mon Sep 17 00:00:00 2001 From: Dongju Chae Date: Mon, 22 Jun 2020 15:43:41 +0900 Subject: [PATCH] [AppTest/Dmabuf] add missing setDataInfo() in apptest_dmabuf_buffers This patch adds missing setDataInfo() in apptest_dmabuf_buffers. Signed-off-by: Dongju Chae --- tests/apptests/dmabuf_buffers.cc | 42 ++++++++++++++++++++++++++++++++-------- 1 file changed, 34 insertions(+), 8 deletions(-) diff --git a/tests/apptests/dmabuf_buffers.cc b/tests/apptests/dmabuf_buffers.cc index 7eeba60..e0cfe96 100644 --- a/tests/apptests/dmabuf_buffers.cc +++ b/tests/apptests/dmabuf_buffers.cc @@ -49,8 +49,8 @@ class TesterTRIV2 { } if (dev_tmp_ != nullptr) { - for (uint32_t idx = 0; idx < input_.num_buffers; idx++) { - cleanNPU_inputBuffer (dev_tmp_, &input_.bufs[idx]); + for (uint32_t idx = 0; idx < input_tmp_.num_buffers; idx++) { + cleanNPU_inputBuffer (dev_tmp_, &input_tmp_.bufs[idx]); } putNPUdevice (dev_tmp_); @@ -80,6 +80,10 @@ class TesterTRIV2 { if (status != 0) return status; + status = set_data_info (); + if (status != 0) + return status; + output_buffers output; status = runNPU_sync (dev_, model_id_, &input_, &output); if (status != 0) @@ -119,6 +123,7 @@ class TesterTRIV2 { return status; input_.num_buffers = meta_->input_seg_num; + input_tmp_.num_buffers = meta_->input_seg_num; for (uint32_t idx = 0; idx < meta_->input_seg_num; idx++) { uint32_t input_seg_idx = meta_->input_seg_idx[idx]; uint32_t input_seg_size = meta_->segment_size[input_seg_idx]; @@ -127,10 +132,9 @@ class TesterTRIV2 { std::string input_path; input_path = dir_ + "/input_fmap_" + std::to_string (idx) + ".bin"; - generic_buffer buffer; - buffer.type = BUFFER_MAPPED; - buffer.size = input_seg_size; - status = allocNPU_inputBuffer (dev_tmp_, &buffer); + input_tmp_.bufs[idx].type = BUFFER_MAPPED; + input_tmp_.bufs[idx].size = input_seg_size; + status = allocNPU_inputBuffer (dev_tmp_, &input_tmp_.bufs[idx]); if (status != 0) return status; @@ -142,18 +146,39 @@ class TesterTRIV2 { size_t size = ifs.tellg (); ifs.seekg (0); - ifs.read (static_cast(buffer.addr) + input_seg_off, size); + ifs.read (static_cast(input_tmp_.bufs[idx].addr) + input_seg_off, size); ifs.close (); input_.bufs[idx].type = BUFFER_DMABUF; input_.bufs[idx].size = size; - input_.bufs[idx].dmabuf = buffer.dmabuf; + input_.bufs[idx].dmabuf = input_tmp_.bufs[idx].dmabuf; input_.bufs[idx].offset = input_seg_off; } return 0; } + int set_data_info () { + tensors_data_info info_in; + tensors_data_info info_out; + + /* No data manipulation & quantization in this test */ + + info_in.num_info = meta_->input_seg_num; + for (uint32_t idx = 0; idx < info_in.num_info; idx++) { + info_in.info[idx].layout = DATA_LAYOUT_TRIV2; + info_in.info[idx].type = DATA_TYPE_QASYMM8; + } + + info_out.num_info = meta_->output_seg_num; + for (uint32_t idx = 0; idx < info_out.num_info; idx++) { + info_out.info[idx].layout = DATA_LAYOUT_TRIV2; + info_out.info[idx].type = DATA_TYPE_QASYMM8; + } + + return setNPU_dataInfo (dev_, model_id_, &info_in, &info_out); + } + int compare_result (output_buffers & output) { int err = 0; @@ -185,6 +210,7 @@ class TesterTRIV2 { uint32_t model_id_; generic_buffer model_; input_buffers input_; + input_buffers input_tmp_; }; /** @brief apptest main */ -- 2.7.4