From: Dongju Chae Date: Tue, 27 Jul 2021 06:14:35 +0000 (+0900) Subject: [Utils] Update model-inspect to show segment data layout X-Git-Tag: submit/tizen/20220103.094045~60 X-Git-Url: http://review.tizen.org/git/?a=commitdiff_plain;h=292a07fdbd14e8e26dd09ee4fef46c19deb76006;p=platform%2Fadaptation%2Fnpu%2Ftrix-engine.git [Utils] Update model-inspect to show segment data layout This patch updates model-inspect to show segment data layout. Signed-off-by: Dongju Chae --- diff --git a/utils/model_inspect/model_inspect.cc b/utils/model_inspect/model_inspect.cc index 2c3238f..325c7a6 100644 --- a/utils/model_inspect/model_inspect.cc +++ b/utils/model_inspect/model_inspect.cc @@ -137,8 +137,7 @@ void Inspector::show_common () { std::ios_base::fmtflags f (std::cout.flags ()); - std::cout << "[common] " - << "\n"; + std::cout << "[common]\n"; std::cout << " model format: " << NPUBIN_VERSION (meta_->magiccode) << "\n"; std::cout << " model size: " << meta_->size << "\n"; std::cout << " - metadata size: " << getNPUmodel_metasize (meta_) << "\n"; @@ -165,8 +164,7 @@ Inspector::show_v1 () { std::ios_base::fmtflags f (std::cout.flags ()); - std::cout << "[npubinfmt v1] " - << "\n"; + std::cout << "[npubinfmt v1]\n"; std::cout << std::dec; std::cout << " buffer_size: " << meta_->buffer_size << "\n"; std::cout << " input_offset: " << meta_->input_offset << "\n"; @@ -183,49 +181,51 @@ Inspector::show_v2 () { std::ios_base::fmtflags f (std::cout.flags ()); - std::cout << "[npubinfmt v2] " - << "\n"; + std::cout << "[npubinfmt v2]\n"; std::cout << std::dec; std::cout << " input_num: " << meta_->input_num << "\n"; for (uint32_t i = 0; i < meta_->input_num; i++) { std::cout << std::dec; - std::cout << " input_offsets[" << i << "]: " << meta_->input_offsets[i] - << "\n"; - std::cout << " input_elem_size[" << i << "]: " << meta_->input_elem_size[i] - << "\n"; - for (uint32_t j = 0; j < MAX_RANK; j++) - std::cout << " input_dims[" << i << "][" << j - << "]: " << meta_->input_dims[i][j] << "\n"; - std::cout << " input_emod_y[" << i << "]: " << meta_->input_emod_y[i] - << "\n"; - std::cout << " input_emod_z[" << i << "]: " << meta_->input_emod_z[i] - << "\n"; - std::cout << " input_quant_z[" << i << "]: " << meta_->input_quant_z[i] - << "\n"; + std::cout << " input_offsets[" << i << "]: "; + std::cout << meta_->input_offsets[i] << "\n"; + std::cout << " input_elem_size[" << i << "]: "; + std::cout << meta_->input_elem_size[i] << "\n"; + for (uint32_t j = 0; j < MAX_RANK; j++) { + std::cout << " input_dims[" << i << "][" << j << "]: "; + std::cout << meta_->input_dims[i][j] << "\n"; + } + std::cout << " input_emod_y[" << i << "]: "; + std::cout << meta_->input_emod_y[i] << "\n"; + std::cout << " input_emod_z[" << i << "]: "; + std::cout << meta_->input_emod_z[i] << "\n"; + std::cout << " input_quant_z[" << i << "]: "; + std::cout << meta_->input_quant_z[i] << "\n"; std::cout << std::fixed; - std::cout << " input_quant_s[" << i << "]: " << meta_->input_quant_s[i] - << "\n"; + std::cout << " input_quant_s[" << i << "]: "; + std::cout << meta_->input_quant_s[i] << "\n"; } std::cout << std::dec << "\n"; + std::cout << " output_num: " << meta_->output_num << "\n"; for (uint32_t i = 0; i < meta_->output_num; i++) { std::cout << std::dec; - std::cout << " output_offsets[" << i << "]: " << meta_->output_offsets[i] - << "\n"; - std::cout << " output_elem_size[" << i - << "]: " << meta_->output_elem_size[i] << "\n"; - for (uint32_t j = 0; j < MAX_RANK; j++) - std::cout << " output_dims[" << i << "][" << j - << "]: " << meta_->output_dims[i][j] << "\n"; - std::cout << " output_emod_y[" << i << "]: " << meta_->output_emod_y[i] - << "\n"; - std::cout << " output_emod_z[" << i << "]: " << meta_->output_emod_z[i] - << "\n"; - std::cout << " output_quant_z[" << i << "]: " << meta_->output_quant_z[i] - << "\n"; + std::cout << " output_offsets[" << i << "]: "; + std::cout << meta_->output_offsets[i] << "\n"; + std::cout << " output_elem_size[" << i << "]: "; + std::cout << meta_->output_elem_size[i] << "\n"; + for (uint32_t j = 0; j < MAX_RANK; j++) { + std::cout << " output_dims[" << i << "][" << j << "]: "; + std::cout << meta_->output_dims[i][j] << "\n"; + } + std::cout << " output_emod_y[" << i << "]: "; + std::cout << meta_->output_emod_y[i] << "\n"; + std::cout << " output_emod_z[" << i << "]: "; + std::cout << meta_->output_emod_z[i] << "\n"; + std::cout << " output_quant_z[" << i << "]: "; + std::cout << meta_->output_quant_z[i] << "\n"; std::cout << std::fixed; - std::cout << " output_quant_s[" << i << "]: " << meta_->output_quant_s[i] - << "\n"; + std::cout << " output_quant_s[" << i << "]: "; + std::cout << meta_->output_quant_s[i] << "\n"; } std::cout.flags (f); @@ -237,61 +237,71 @@ Inspector::show_v3 () { std::ios_base::fmtflags f (std::cout.flags ()); - std::cout << "[npubinfmt v3] " - << "\n"; + std::cout << "[npubinfmt v3]\n"; std::cout << std::dec; std::cout << " segment_num: " << meta_->segment_num << "\n"; for (uint32_t i = 0; i < meta_->segment_num; i++) { - std::cout << " segment_size[" << i << "]: " << meta_->segment_size[i] - << "\n"; + std::cout << " segment_size[" << i << "]: "; + std::cout << meta_->segment_size[i] << "\n"; } std::cout << "\n"; - std::cout << " weight_seg_idx: " << meta_->weight_seg_idx << "\n"; - std::cout << "\n"; + std::cout << " weight_seg_idx: "; + std::cout << (meta_->weight_seg_idx < meta_->segment_num + ? std::to_string (meta_->weight_seg_idx) + : "N/A"); + std::cout << "\n\n"; std::cout << " input_seg_num: " << meta_->input_seg_num << "\n"; for (uint32_t i = 0; i < meta_->input_seg_num; i++) { std::cout << std::dec; - std::cout << " input_seg_idx[" << i << "]: " << meta_->input_seg_idx[i] - << "\n"; - std::cout << " input_seg_off[" << i << "]: " << meta_->input_seg_off[i] - << "\n"; - for (uint32_t j = 0; j < MAX_RANK; j++) - std::cout << " input_seg_dims[" << i << "][" << j - << "]: " << meta_->input_seg_dims[i][j] << "\n"; - std::cout << " input_seg_emod_y[" << i - << "]: " << meta_->input_seg_emod_y[i] << "\n"; - std::cout << " input_seg_emod_z[" << i - << "]: " << meta_->input_seg_emod_z[i] << "\n"; - std::cout << " input_seg_quant_type[" << i - << "]: " << meta_->input_seg_quant_type[i] << "\n"; - std::cout << " input_seg_quant_z[" << i - << "]: " << meta_->input_seg_quant_z[i] << "\n"; + std::cout << " input_seg_idx[" << i << "]: "; + std::cout << meta_->input_seg_idx[i] << "\n"; + std::cout << " input_seg_off[" << i << "]: "; + std::cout << meta_->input_seg_off[i] << "\n"; + for (uint32_t j = 0; j < MAX_RANK; j++) { + std::cout << " input_seg_dims[" << i << "][" << j << "]: "; + std::cout << meta_->input_seg_dims[i][j] << "\n"; + } + std::cout << " input_seg_emod_y[" << i << "]: "; + std::cout << meta_->input_seg_emod_y[i] << "\n"; + std::cout << " input_seg_emod_z[" << i << "]: "; + std::cout << meta_->input_seg_emod_z[i] << "\n"; + std::cout << " input_seg_quant_type[" << i << "]: "; + std::cout << meta_->input_seg_quant_type[i] << "\n"; + std::cout << " input_seg_quant_z[" << i << "]: "; + std::cout << meta_->input_seg_quant_z[i] << "\n"; std::cout << std::fixed; - std::cout << " input_seg_quant_s[" << i - << "]: " << meta_->input_seg_quant_s[i] << "\n"; + std::cout << " input_seg_quant_s[" << i << "]: "; + std::cout << meta_->input_seg_quant_s[i] << "\n"; + std::cout << std::dec; + std::cout << " input_seg_layout[" << i << "]: "; + std::cout << meta_->input_seg_layout[i] << "\n"; } std::cout << std::dec << "\n"; std::cout << " output_seg_num: " << meta_->output_seg_num << "\n"; for (uint32_t i = 0; i < meta_->output_seg_num; i++) { std::cout << std::dec; - std::cout << " output_seg_idx[" << i << "]: " << meta_->output_seg_idx[i] - << "\n"; - std::cout << " output_seg_off[" << i << "]: " << meta_->output_seg_off[i] - << "\n"; - for (uint32_t j = 0; j < MAX_RANK; j++) - std::cout << " output_seg_dims[" << i << "][" << j - << "]: " << meta_->output_seg_dims[i][j] << "\n"; - std::cout << " output_seg_emod_y[" << i - << "]: " << meta_->output_seg_emod_y[i] << "\n"; - std::cout << " output_seg_emod_z[" << i - << "]: " << meta_->output_seg_emod_z[i] << "\n"; - std::cout << " output_seg_quant_type[" << i - << "]: " << meta_->output_seg_quant_type[i] << "\n"; - std::cout << " output_seg_quant_z[" << i - << "]: " << meta_->output_seg_quant_z[i] << "\n"; + std::cout << " output_seg_idx[" << i << "]: "; + std::cout << meta_->output_seg_idx[i] << "\n"; + std::cout << " output_seg_off[" << i << "]: "; + std::cout << meta_->output_seg_off[i] << "\n"; + for (uint32_t j = 0; j < MAX_RANK; j++) { + std::cout << " output_seg_dims[" << i << "][" << j << "]: "; + std::cout << meta_->output_seg_dims[i][j] << "\n"; + } + std::cout << " output_seg_emod_y[" << i << "]: "; + std::cout << meta_->output_seg_emod_y[i] << "\n"; + std::cout << " output_seg_emod_z[" << i << "]: "; + std::cout << meta_->output_seg_emod_z[i] << "\n"; + std::cout << " output_seg_quant_type[" << i << "]: "; + std::cout << meta_->output_seg_quant_type[i] << "\n"; + std::cout << " output_seg_quant_z[" << i << "]: "; + std::cout << meta_->output_seg_quant_z[i] << "\n"; std::cout << std::fixed; - std::cout << " output_seg_quant_s[" << i - << "]: " << meta_->output_seg_quant_s[i] << "\n"; + std::cout << " output_seg_quant_s[" << i << "]: "; + std::cout << meta_->output_seg_quant_s[i] << "\n"; + std::cout << std::dec; + std::cout << " output_seg_layout[" << i << "]: "; + std::cout << meta_->output_seg_layout[i] << "\n"; } std::cout << std::dec << "\n";