From 84213ffa0416139c7711eb0784b8a46b0de8c538 Mon Sep 17 00:00:00 2001 From: Mahmoud Date: Fri, 22 May 2020 20:16:04 -0400 Subject: code reformatting --- src/trace-driven/trace_driven.h | 28 +++++++++++++++++++++++----- 1 file changed, 23 insertions(+), 5 deletions(-) (limited to 'src/trace-driven/trace_driven.h') diff --git a/src/trace-driven/trace_driven.h b/src/trace-driven/trace_driven.h index 9539e6d..2888f86 100644 --- a/src/trace-driven/trace_driven.h +++ b/src/trace-driven/trace_driven.h @@ -37,18 +37,20 @@ public: trace_warp_inst_t() { m_gpgpu_context=NULL; m_opcode=0; + m_tconfig=NULL; } - trace_warp_inst_t(const class core_config *config, gpgpu_context* gpgpu_context ):warp_inst_t(config) { + trace_warp_inst_t(const class core_config *config, gpgpu_context* gpgpu_context, class trace_config* tconfig ):warp_inst_t(config) { m_gpgpu_context = gpgpu_context; m_opcode=0; + m_tconfig=tconfig; } - bool parse_from_string(std::string trace, const std::unordered_map* OpcodeMap, unsigned binary_verion); + bool parse_from_string(std::string trace, const std::unordered_map* OpcodeMap); private: - void set_latency(unsigned cat); gpgpu_context* m_gpgpu_context; + class trace_config* m_tconfig; unsigned m_opcode; bool check_opcode_contain(const std::vector& opcode, std::string param); unsigned get_datawidth_from_opcode(const std::vector& opcode); @@ -56,7 +58,7 @@ private: class trace_kernel_info_t: public kernel_info_t { public: - trace_kernel_info_t(dim3 gridDim, dim3 blockDim, unsigned m_binary_verion, trace_function_info* m_function_info, std::ifstream* inputstream, gpgpu_sim * gpgpu_sim, gpgpu_context* gpgpu_context); + trace_kernel_info_t(dim3 gridDim, dim3 blockDim, unsigned m_binary_verion, trace_function_info* m_function_info, std::ifstream* inputstream, gpgpu_sim * gpgpu_sim, gpgpu_context* gpgpu_context, class trace_config* config); bool get_next_threadblock_traces(std::vector*> threadblock_traces); @@ -64,19 +66,35 @@ private: std::ifstream* ifs; gpgpu_sim * m_gpgpu_sim; gpgpu_context* m_gpgpu_context; + trace_config* m_tconfig; unsigned binary_verion; const std::unordered_map* OpcodeMap; }; +class trace_config { +public: + trace_config(gpgpu_sim * m_gpgpu_sim); + + void set_latency(unsigned category, unsigned& latency, unsigned& initiation_interval); + void parse_config(); + + +private: + + unsigned int_latency, fp_latency, dp_latency, sfu_latency, tensor_latency; + unsigned int_init, fp_init, dp_init, sfu_init, tensor_init; + gpgpu_sim* m_gpgpu_sim; + +}; class trace_parser { public: trace_parser(const char* kernellist_filepath, gpgpu_sim * m_gpgpu_sim, gpgpu_context* m_gpgpu_context); std::vector parse_kernellist_file(); - trace_kernel_info_t* parse_kernel_info(const std::string& kerneltraces_filepath); + trace_kernel_info_t* parse_kernel_info(const std::string& kerneltraces_filepath, trace_config* config); void parse_memcpy_info(const std::string& memcpy_command, size_t& add, size_t& count); void kernel_finalizer(trace_kernel_info_t* kernel_info); -- cgit v1.3