summaryrefslogtreecommitdiff
path: root/src/trace-driven/gpgpusim_trace_driven_main.cc
diff options
context:
space:
mode:
authorMahmoud <[email protected]>2019-12-25 16:25:21 -0500
committerMahmoud <[email protected]>2019-12-25 16:25:21 -0500
commitb9cff5a53d576f1b2b953b3ce41b281128708787 (patch)
tree1de68d56e712e615b568a7a344b08b71ef4dad4b /src/trace-driven/gpgpusim_trace_driven_main.cc
parent0dae88ce0e247acd12259fb57362d9600c05c18b (diff)
adding memcpy traces
Diffstat (limited to 'src/trace-driven/gpgpusim_trace_driven_main.cc')
-rw-r--r--src/trace-driven/gpgpusim_trace_driven_main.cc18
1 files changed, 14 insertions, 4 deletions
diff --git a/src/trace-driven/gpgpusim_trace_driven_main.cc b/src/trace-driven/gpgpusim_trace_driven_main.cc
index 2f5d04d..58239b8 100644
--- a/src/trace-driven/gpgpusim_trace_driven_main.cc
+++ b/src/trace-driven/gpgpusim_trace_driven_main.cc
@@ -49,12 +49,22 @@ int main ( int argc, const char **argv )
trace_parser tracer(m_gpgpu_sim->get_config().get_traces_filename(), m_gpgpu_sim, m_gpgpu_context);
- std::vector<std::string> kernellist = tracer.parse_kernellist_file();
+ std::vector<std::string> commandlist = tracer.parse_kernellist_file();
- for(unsigned i=0; i<kernellist.size(); ++i) {
+ for(unsigned i=0; i<commandlist.size(); ++i) {
- trace_kernel_info_t* kernel_info = tracer.parse_kernel_info(kernellist[i]);
- m_gpgpu_sim->launch(kernel_info);
+ trace_kernel_info_t* kernel_info;
+ if(commandlist[i].substr(0,6) == "Memcpy") {
+
+ size_t addre, Bcount;
+ tracer.parse_memcpy_info(commandlist[i], addre, Bcount);
+ m_gpgpu_sim->perf_memcpy_to_gpu(addre, Bcount);
+ continue;
+ }
+ else if(commandlist[i].substr(0,6) == "kernel") {
+ kernel_info = tracer.parse_kernel_info(commandlist[i]);
+ m_gpgpu_sim->launch(kernel_info);
+ }
bool active = false;
bool sim_cycles = false;